\ /
Security  cybersecurity  Windows  BestPractices 

"SMBleed" es el nombre de la nueva vulnerabilidad en el protocolo SMB

Recientemente invesigadores en ciberseguridad, han descubierto que existe una nueva vulnerabilidad critica que afecta al protocolo Microsoft Server Message Block, esta vez en la version 3 - SMBv3. Combinada con otra vulnerabilidad ya conocida (CVE-2020-0796, también conocida como «SMBGhost»), podría conducir a la ejecución remota de código.

Apodado SMBleed (CVE-2020-1206), el principal problema reside en la función de descompresión de SMB, que además, se trata de la misma función defectuosa en las vulnerabilidades SMBGhost o EternalDarkness (CVE-2020-0796), que salieron a la luz hace algunos meses y que convierten a los sistemas de Windows en vulnerables a ataques de malware que pueden propagarse a través de redes.

SMB, que funciona a través del puerto TCP 445, es un protocolo de red que proporciona la base para el intercambio de archivos, la navegación por la red, los servicios de impresión y la comunicación entre procesos a través de una red. Debido a la arquitectura cliente-servidor, existen 2 formas en las que se puede explotar esta vulnerabilidad. Para atacar a un servidor, un usuario no autenticado podría enviar un paquete especialmente elaborado a un servidor SMBv3 objetivo. Para explotar la vulnerabilidad contra un cliente, un atacante no autenticado necesitaría configurar un servidor SMBv3 malicioso y convencer a un usuario de que se conecte a él.

El fallo proviene de la forma en que la función de descompresión en cuestión ("Srv2DecompressData") maneja las solicitudes de mensajes especialmente elaborados (por ejemplo, SMB2 WRITE) enviados a un servidor SMBv3 objetivo, lo que permite a un atacante leer la memoria del núcleo no inicializado y hacer modificaciones a la función de compresión.

La estructura del mensaje contiene campos como la cantidad de bytes a escribir y banderas, seguidos de un búfer de longitud variable. Eso es perfecto para explotar el error, ya que podemos crear un mensaje de tal manera que especificamos el encabezado, pero el buffer de longitud variable contiene datos no inicializados.

Trama de paquete modificado

Un atacante que explotara con éxito la vulnerabilidad, podría obtener la capacidad de ejecutar código en el servidor o cliente de destino. Esta imagen nos muestra como se ve un ataque explotando SMBleed

PoC de ataque

  • Sistemas afectados

Debido a que SMB es un protocolo de red para el acceso remoto a archivos, impresoras y otros recursos de red. Se utiliza para implementar las funciones Microsoft Windows Network y Compartir impresoras y archivos.

Microsoft Server Message Block 3.1.1 es un protocolo relativamente reciente, utilizado solo en los sistemas operativos nuevos:

Windows 10, versión 1903 para sistemas de 32 bits.
Windows 10, versión 1903 para sistemas basados en ARM64.
Windows 10, versión 1903 para sistemas basados en x64.
Windows 10, versión 1909 para sistemas de 32 bits.
Windows 10, versión 1909 para sistemas basados en ARM64.
Windows 10, versión 1909 para sistemas basados en x64.
Windows Server, versión 1903 (instalación de Server Core).
Windows Server, versión 1909 (instalación de Server Core).

La vulnerabilidad no afecta a Windows 7, 8, 8.1 o versiones anteriores. No obstante, los ordenadores más modernos con instalación automática de actualizaciones ejecutan Windows 10, por lo que es probable que muchos ordenadores, tanto domésticos como corporativos, sean vulnerables.

¿Que podemos hacer?

La siguiente solución puede ser útil en su situación. En todos los casos, Microsoft recomienda encarecidamente que instale las actualizaciones para esta vulnerabilidad tan pronto como estén disponibles, incluso si piensa dejar esta solución alternativa en su lugar:

Deshabilitar la compresión SMBv3

Puede desactivar la compresión para bloquear a los atacantes no autenticados para que no exploten la vulnerabilidad contra un servidor SMBv3 con el comando PowerShell a continuación.

Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\N-LanmanServer\N-Parámetros" DisableCompression -Type DWORD -Value 1 -Force

Notas:

- No es necesario reiniciar después de hacer el cambio.
- Esta solución no evita la explotación de esta vulnerabilidad. Por favor, en caso de ser posible instalar las actualizaciones de seguridad.
- La compresión SMB aún no es utilizada por Windows o Windows Server, y la desactivación de la compresión SMB no tiene un impacto negativo en el rendimiento.

Puede desactivar la solución alternativa con el comando PowerShell a continuación.

Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\N-LanmanServer\N-Parámetros" DisableCompression -Type DWORD -Value 0 -Force

comments powered by Disqus