Chyba zabezpečení v subsystému jádra Linuxu modulu USB Gadget, která potenciálně umožňuje spuštění kódu

USB Gadget, subsystém linuxového jádra, který poskytuje programovací rozhraní pro vytváření USB klientských zařízení a software simulující USB zařízení, má zranitelnost (CVE-2021-39685), která by mohla vést k úniku informací z jádra, selhání nebo spuštění libovolný kód na úrovni jader. Útok provádí neprivilegovaný místní uživatel prostřednictvím manipulace s různými třídami zařízení implementovanými na základě rozhraní USB Gadget API, jako jsou rndis, hid, uac1, uac1_legacy a uac2.

Problém byl opraven v nedávno zveřejněných aktualizacích linuxového jádra 5.15.8, 5.10.85, 5.4.165, 4.19.221, 4.14.258, 4.9.293 a 4.4.295. Problém zůstává neopraven v distribucích (Debian, Ubuntu, RHEL, SUSE, Fedora, Arch). Byl připraven prototyp exploitu, který tuto zranitelnost demonstruje.

Problém je způsoben přetečením vyrovnávací paměti v obslužných programech požadavků na přenos dat v ovladačích gadgetů rndis, hid, uac1, uac1_legacy a uac2. V důsledku zneužití zranitelnosti může neprivilegovaný útočník získat přístup k paměti jádra odesláním speciálního řídicího požadavku s hodnotou pole wLength, která přesahuje velikost statické vyrovnávací paměti, pro kterou je vždy přiděleno 4096 bajtů (USB_COMP_EP0_BUFSIZ). Během útoku může neprivilegovaný proces v uživatelském prostoru číst nebo zapisovat až 65 KB dat do paměti jádra.

Zdroj: opennet.ru

Přidat komentář