Katalog CVE

CVE-2026-89622

WysokieCVSS 7.8
Opublikowano: Zaktualizowano: Przetłumaczono: NVD NIST

Prawdopodobieństwo exploitacji (EPSS)

Niskie ryzyko
0.16%

Percentyl 5 - wyżej niż 5% wszystkich znanych CVE

Streszczenie

W sterowniku HID mcp2221 funkcja mcp_i2c_smbus_read() przechowywała wskaźnik bufora w mcp->rxbuf, ale nie czyściła go po zakończeniu transferu. Opóźniony lub fałszywy raport MCP2221_I2C_GET_DATA mógł zapisywać dane do zwolnionej pamięci.

Ocena ryzyka

Może prowadzić do zapisu po zwolnieniu pamięci, co może skutkować uszkodzeniem pamięci jądra, awarią systemu lub potencjalnym wykonaniem kodu.

Rekomendacja

Zaktualizuj jądro Linux do wersji zawierającej poprawkę czyszczącą mcp->rxbuf i mcp->rxbuf_size po zakończeniu transferu I2C/SMBus.

Inne podatności w Linux kernel

Zobacz wszystkie
Oryginalny opis (angielski, źródło NVD)

In the Linux kernel, the following vulnerability has been resolved: HID: mcp2221: clear rxbuf after I2C/SMBus transfer completes mcp_i2c_smbus_read() stores the caller-supplied buffer pointer in mcp->rxbuf for the duration of a transfer but never clears it when the transfer finishes or times out. Once the caller frees or reuses the buffer, mcp->rxbuf becomes a dangling pointer. A delayed or spurious MCP2221_I2C_GET_DATA report can then drive mcp2221_raw_event() to memcpy device data into the freed memory, causing a write use-after-free. Route all return paths through a single exit point that clears mcp->rxbuf and mcp->rxbuf_size, so that the existing !mcp->rxbuf guard in the raw_event handler can reject any report arriving after the transfer has ended.

Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS