Vulnerabilidad en el módulo ksmbd del núcleo de Linux que permite la ejecución remota de código.

Se ha descubierto una vulnerabilidad crítica en el módulo ksmbd, que incluye una implementación de servidor de archivos basada en el protocolo SMB incorporada en el núcleo de Linux, que permite la ejecución remota de código con privilegios de núcleo. El ataque puede llevarse a cabo sin autenticación, siendo suficiente que el módulo ksmbd esté activado en el sistema. El problema se manifiesta desde el núcleo 5.15, lanzado en noviembre de 2021, y ha sido corregido sin mayor publicidad en las actualizaciones 5.15.61, 5.18.18 y 5.19.2, emitidas en agosto de 2022. Como el identificador CVE aún no se ha asignado al problema, no hay información precisa sobre la solución en las distribuciones.

Los detalles sobre la explotación de la vulnerabilidad aún no se han revelado, solo se sabe que la vulnerabilidad es causada por el acceso a una área de memoria ya liberada (Use-After-Free) debido a la falta de verificación de la existencia del objeto antes de ejecutar operaciones con él. El problema está relacionado con el hecho de que en la función smb2_tree_disconnect() se liberaba la memoria asignada a la estructura ksmbd_tree_connect, pero aún quedaba un puntero utilizado al procesar ciertas solicitudes externas que contenían comandos SMB2_TREE_DISCONNECT.

Además de la vulnerabilidad mencionada en ksmbd, también se han corregido 4 problemas menos críticos:

  • ZDI-22-1688: ejecución remota de código con privilegios de núcleo debido a la falta de verificación del tamaño real de los datos externos antes de copiarlos en un búfer asignado. La gravedad de la vulnerabilidad se atenúa por el hecho de que el ataque solo puede ser llevado a cabo por un usuario autenticado.
  • ZDI-22-1691: fuga remota de información de la memoria del núcleo debido a la verificación incorrecta de los parámetros de entrada en el controlador del comando SMB2_WRITE (el ataque solo puede ser realizado por un usuario autenticado).
  • ZDI-22-1687: llamada remota a un rechazo de servicio debido al agotamiento de la memoria disponible en el sistema por la liberación incorrecta de recursos en el controlador del comando SMB2_NEGOTIATE (el ataque puede ser realizado sin autenticación).
  • ZDI-22-1689: llamada remota a un fallo del núcleo debido a la falta de una verificación adecuada de los parámetros del comando SMB2_TREE_CONNECT, que conduce a la lectura fuera del búfer (el ataque solo puede ser realizado por un usuario autenticado).

El soporte para el funcionamiento del servidor SMB a través del módulo ksmbd está disponible en el paquete Samba desde la versión 4.16.0. A diferencia del servidor SMB que opera en espacio de usuario, ksmbd es más eficiente en términos de rendimiento, consumo de memoria e integración con las capacidades avanzadas del núcleo. Ksmbd se presenta como una extensión de alto rendimiento lista para su uso en dispositivos integrados, integrándose según sea necesario con herramientas y bibliotecas de Samba. Los autores del código ksmbd son Namjae Jeon de Samsung y Hyunchul Lee de LG, y el soporte en el núcleo está dirigido por Steve French de Microsoft, mantenedor de la subsistema CIFS/SMB2/SMB3 en el núcleo de Linux y participante de larga data en el equipo de desarrollo de Samba, quien ha hecho una contribución significativa en la implementación del soporte para los protocolos SMB/CIFS en Samba y Linux.

Fuente: opennet.ru

Compra un hosting fiable para sitios web con protección contra DDoS, servidores VPS VDS 🔥 Compra un hosting fiable para sitios web con protección contra DDoS, servidores VPS VDS | ProHoster