Vulnerabilidade no subsistema do núcleo de Linux do gadget USB, que pode permitir a execución de código

Identificouse unha vulnerabilidade (CVE-2021-39685) en USB Gadget, un subsistema do núcleo de Linux que proporciona unha interface de programación para crear dispositivos cliente USB e simulación de software de dispositivos USB, que podería provocar unha fuga, un fallo ou un fallo do núcleo. execución de código arbitrario nos núcleos. O ataque é realizado por un usuario local sen privilexios mediante a manipulación de varias clases de dispositivos implementadas en base á API USB Gadget, como rndis, hid, uac1, uac1_legacy e uac2.

O problema foi solucionado nas actualizacións do núcleo de Linux 5.15.8, 5.10.85, 5.4.165, 4.19.221, 4.14.258, 4.9.293 e 4.4.295 publicadas recentemente. Nas distribucións, o problema aínda segue sen solucionarse (Debian, Ubuntu, RHEL, SUSE, Fedora, Arch). Preparouse un prototipo de exploit para demostrar a vulnerabilidade.

O problema é causado por un desbordamento do búfer nos controladores de solicitudes de transferencia de datos nos controladores do gadget rndis, hid, uac1, uac1_legacy e uac2. Como resultado da explotación da vulnerabilidade, un atacante sen privilexios pode acceder á memoria do núcleo enviando unha solicitude de control especial cun valor de campo wLength que supera o tamaño do búfer estático, para o que sempre se asignan 4096 bytes (USB_COMP_EP0_BUFSIZ). Durante o ataque, un proceso de espazo de usuario sen privilexios pode ler ou escribir ata 65 KB de datos na memoria do núcleo.

Fonte: opennet.ru

Engadir un comentario