Sårbarhet i Linux-kjerneundersystemet til USB Gadget, som potensielt tillater kjøring av kode

USB Gadget, et undersystem av Linux-kjernen som gir et programmeringsgrensesnitt for å lage USB-klientenheter og programvare som simulerer USB-enheter, har en sårbarhet (CVE-2021-39685) som kan føre til informasjonslekkasje fra kjernen, krasj eller kjøring av vilkårlig kode på nivåkjernene. Angrepet utføres av en uprivilegert lokal bruker gjennom manipulering av ulike enhetsklasser implementert basert på USB Gadget API, slik som rndis, hid, uac1, uac1_legacy og uac2.

Problemet ble løst i de nylig publiserte Linux-kjerneoppdateringene 5.15.8, 5.10.85, 5.4.165, 4.19.221, 4.14.258, 4.9.293 og 4.4.295. Problemet forblir uløst i distribusjoner (Debian, Ubuntu, RHEL, SUSE, Fedora, Arch). En utnyttelsesprototype er utarbeidet for å demonstrere sårbarheten.

Problemet er forårsaket av et bufferoverløp i dataoverføringsforespørsler i gadget-driverne rndis, hid, uac1, uac1_legacy og uac2. Som et resultat av å utnytte sårbarheten kan en uprivilegert angriper få tilgang til kjerneminne ved å sende en spesiell kontrollforespørsel med en wLength-feltverdi som overskrider størrelsen på den statiske bufferen, som det alltid er tildelt 4096 byte til (USB_COMP_EP0_BUFSIZ). Under angrepet kan en uprivilegert prosess i brukerområdet lese eller skrive opptil 65 KB data inn i kjerneminnet.

Kilde: opennet.ru

Legg til en kommentar