Vulnerabilidad en el KERNEL de Linux permite ataques de DOS remotos no autenticados

Se ha descubierto una vulnerabilidad potencialmente grave que afecta al kernel de Linux, esta puede ser aprovechada por un atacante remoto no autenticado para lanzar ataques de denegación de servicio (DoS).

Esta vulnerabilidad rastreada como CVE-2023-0210 afecta a la autenticación KSMBD NTLMv2 del kernel de Linux y bloquea el sistema operativo de los sistemas basados en Linux.

KSMBD es un servidor CIFS/SMB3 en el núcleo de código abierto creado para el núcleo de Linux. Es una implementación del protocolo SMB/CIFS en el espacio del kernel para compartir archivos y servicios IPC a través de la red.

Para explotar esta vulnerabilidad se requiere enviar paquetes con formato incorrecto a un servidor objetivo, computadora personal, tablet o smartphone. El ataque desencadena un error de desbordamiento de pila en «ksmbd_decode_ntlmssp_auth_blob» en el que «nt_len» puede ser menor que «CIFS_ENCPWD_SIZE». Esto da como resultado un argumento blen negativo para «ksmbd_auth_ntlmv2», donde llama a memcpy usando blen en la memoria asignada por kmalloc(blen + CIFS_CRYPTO_KEY_SIZE).

Tenga en cuenta que «CIFS_ENCPWD_SIZE» es 16 y «CIFS_CRYPTO_KEY_SIZE» es 8. Se cree que este error solo puede dar como resultado un DOS remoto y no una escalada de privilegios ni ejecución remota de código  (RCE), ya que el desbordamiento del almacenamiento dinámico ocurre cuando blen está en el rango (-8, -1]. El desbordamiento resultante será demasiado grande y conducirá a un kernel panic.

La vulnerabilidad existe debido a la forma en que las versiones 5.15-rc1 y posteriores del kernel de Linux manejan la autenticación NTLMv2. Se ha probado este error en Ubuntu 20.04 HWE y 22.04 (ambos ejecutándose en 5.15.0-56-generic) y puede entrar de forma remota a un kernel panic en el SO inmediatamente.

Aunque el atacante tiene que conocer un nombre de usuario válido para el servicio, no es necesario que conozca la contraseña ya que el error ocurre en la fase de challenge-response del protocolo NTLMv2, convirtiéndolo en un ataque no autenticado. Cualquier atacante que pueda acceder al puerto SMB de KSMBD podría provocar fácilmente un kernel panic.

El código de prueba de concepto actualmente está disponible en línea, aumentando un poco el peligro para los usuarios de este sistema operativo.

Versiones de software vulnerables

Linux Kernel: Todas las versiones

Recomendaciones

Se recomienda a los usuarios actualizar los servidores Linux de inmediato y aplicar los parches para otras distribuciones tan pronto se encuentren disponibles.

Referencias