Kwetsbaarheid in het Linux-kernelsubsysteem van USB Gadget, waardoor mogelijk code kan worden uitgevoerd

USB Gadget, een subsysteem van de Linux-kernel dat een programmeerinterface biedt voor het maken van USB-clientapparaten en software die USB-apparaten simuleert, heeft een kwetsbaarheid (CVE-2021-39685) die kan leiden tot het lekken van informatie uit de kernel, het crashen of het uitvoeren van willekeurige code op het niveau kernels. De aanval wordt uitgevoerd door een lokale gebruiker zonder privileges door manipulatie van verschillende apparaatklassen die zijn geïmplementeerd op basis van de USB Gadget API, zoals rndis, hid, uac1, uac1_legacy en uac2.

Het probleem is opgelost in de onlangs gepubliceerde Linux-kernelupdates 5.15.8, 5.10.85, 5.4.165, 4.19.221, 4.14.258, 4.9.293 en 4.4.295. Het probleem is nog steeds niet opgelost in distributies (Debian, Ubuntu, RHEL, SUSE, Fedora, Arch). Er is een exploit-prototype opgesteld om de kwetsbaarheid aan te tonen.

Het probleem wordt veroorzaakt door een bufferoverloop in de afhandelingsverzoeken voor gegevensoverdracht in de gadgetstuurprogramma's rndis, hid, uac1, uac1_legacy en uac2. Als gevolg van het misbruiken van het beveiligingslek kan een onbevoegde aanvaller toegang krijgen tot het kernelgeheugen door een speciaal controleverzoek te verzenden met een wLength-veldwaarde die groter is dan de grootte van de statische buffer, waarvoor altijd 4096 bytes worden toegewezen (USB_COMP_EP0_BUFSIZ). Tijdens de aanval kan een onbevoegd proces in de gebruikersruimte tot 65 KB aan gegevens lezen of schrijven naar het kernelgeheugen.

Bron: opennet.ru

Voeg een reactie