Vulnerabilitat al subsistema del nucli de Linux d'USB Gadget, que pot permetre l'execució de codi

USB Gadget, un subsistema del nucli de Linux que proporciona una interfície de programació per crear dispositius de client USB i programari que simuli dispositius USB, té una vulnerabilitat (CVE-2021-39685) que podria provocar una fuga d'informació del nucli, un bloqueig o l'execució de codi arbitrari al nivell dels nuclis. L'atac el porta a terme un usuari local sense privilegis mitjançant la manipulació de diverses classes de dispositius implementades basades en l'API USB Gadget, com ara rndis, hid, uac1, uac1_legacy i uac2.

El problema es va solucionar a les actualitzacions del nucli de Linux publicades recentment 5.15.8, 5.10.85, 5.4.165, 4.19.221, 4.14.258, 4.9.293 i 4.4.295. El problema segueix sense solucionar-se a les distribucions (Debian, Ubuntu, RHEL, SUSE, Fedora, Arch). S'ha preparat un prototip d'explotació per demostrar la vulnerabilitat.

El problema és causat per un desbordament de memòria intermèdia als gestors de sol·licituds de transferència de dades als controladors del gadget rndis, hid, uac1, uac1_legacy i uac2. Com a resultat de l'explotació de la vulnerabilitat, un atacant sense privilegis pot accedir a la memòria del nucli enviant una sol·licitud de control especial amb un valor de camp wLength que supera la mida del buffer estàtic, per al qual sempre s'assignen 4096 bytes (USB_COMP_EP0_BUFSIZ). Durant l'atac, un procés sense privilegis a l'espai d'usuari pot llegir o escriure fins a 65 KB de dades a la memòria del nucli.

Font: opennet.ru

Afegeix comentari