domingo, 19 de abril de 2015

MS15-034, aplícate el parche

Uno de los parches publicados por Microsoft el pasado martes, el MS15-034, está generando bastante expectación, sobre todo por las consecuencias que podría acarrear su explotación en caso de que se encuentre la forma de llegar hasta ella. Si esto último se confirma, podríamos estar frente a un serio problema, veremos porqué.

El fallo se encuentra en "HTTP.sys". Este componente implementa el conocido protocolo de capa de aplicación HTTP para cualquier componente del sistema o aplicación que consuma u ofrezca recursos web. El error se produce, según el propio boletín de Microsoft, al procesar una cabecera HTTP especialmente manipulada.

Respecto a la cabecera, las pruebas de concepto y exploits que han ido apareciendo se basan en la cabecera "Range". Esta cabecera permite a un cliente generar una petición sobre un recurso especificando un rango de bytes concreto. Esto optimiza el tráfico al permitir que un cliente disponga de un "trozo" de un recurso cuya transmisión ha sido infructuosa o simplemente disponer de recursos de gran tamaño en porciones adaptadas al criterio o capacidad del cliente.

Una vulnerabilidad similar (CVE-2011-3192) afectó al servidor web Apache cuando se especificaban varios rangos solapados en la misma petición. La explotación, al igual que en esta ocasión, era trivial, y a diferencia de esta, fue usada para tirar bastantes servidores antes de que se publicará un parche.

Volviendo al componente, HTTP.sys no es una biblioteca de funciones al uso. Estamos hablando de un dispositivo del kernel de Windows, corre en su espacio y sus permisos están asociados a System. Antes de que las peticiones HTTP sean procesadas por un servidor son recibidas y tratadas por HTTP.sys, algo que permite elevar el rendimiento al efectuar el cacheo de peticiones directamente en espacio del kernel. Precisamente una contramedida oficial pasa por la desactivación del cacheo de peticiones en IIS7, aunque Microsoft ya avisa que esto podría causar un deterioro perceptible del rendimiento del servidor.

Algo que venimos observando es que se le está atribuyendo la vulnerabilidad a Microsoft IIS en exclusiva, el servidor dominante en sistemas Windows. Por supuesto es el servidor web en el que todos estamos pensando cuando hablamos de explotación, pero no podemos descartar otros servidores o servicios que se apoyen en HTTP.sys.

Con todo esto podemos deducir que el impacto que podría tener una ejecución remota de código arbitrario, a través de un servidor web publicado en Internet con una simple petición HTTP, podría ser desastrosa. HTTP.sys ya tuvo en 2013 (MS13-039) un fallo que causaba una denegación de servicio, se calificó entonces de importante. Recordemos que Microsoft cataloga esta vulnerabilidad de crítica.

Los sistemas operativos afectados son Windows 7, 2008 R2, Windows 8 y 8.1, 2012 y 2012 R2. Es posible que esta vulnerabilidad afecte a sistemas que ya no tienen soporte oficial, Microsoft no se ha pronunciado al respecto. La vulnerabilidad tiene el CVE-2015-1635.
La prueba de concepto para evaluar la afectación de un sistema puede lograrse a través de cualquier script o programa que genere una petición HTTP con una cabecera Range en particular:

Range: bytes=0-18446744073709551615

Con la herramienta de línea de comandos 'curl' por ejemplo:

curl -v  dirección-ip-a-probar/ -H "Host: cualquiervalor" -H "Range: bytes=0-18446744073709551615"

Los próximos días, quizás semanas, nos dirán si todo se queda en una denegación de servicio o estamos frente a una amenaza bastante seria.

Más información:

Microsoft Security Bulletin MS15-034 - Critical
Vulnerability in HTTP.sys Could Allow Remote Code Execution (3042553)

una-al-dia (15/04/2015) Microsoft publica 11 boletines de seguridad

una-al-dia (25/08/2011) Denegación de servicio en Apache a través de Range header

una-al-dia (14/05/2013) Boletines de seguridad de Microsoft en mayo

Boletín de seguridad de Microsoft MS13-039 - Importante
Una vulnerabilidad en HTTP.sys podría permitir la denegación de servicio (2829254)



David García
Twitter: @dgn1729

sábado, 18 de abril de 2015

Vulnerabilidades descubiertas en Lenovo ThinkServer *50-SERIES

Lenovo ha reportado tres vulnerabilidades que afectan a productos de la familia Lenovo ThinkServer *50-SERIES. Estos problemas permitirían a atacantes remotos causar ataques 'Man-in-the-Middle', conseguir privilegios y en casos concretos provocar una denegación de servicio.

Los productos de la familia Lenovo ThinkServer *50-SERIES son servidores de torre especialmente dedicadas para bases de datos pequeñas, tareas de virtualización y aplicaciones típicas de oficinas. Con un diseño reducido y silencioso, estos servidores están fabricados para soportar condiciones extremas, cumpliendo los requisitos de fiabilidad de los estándares más exigentes.

Se ven afectados los productos ThinkServer RD350, RD450, RD550, RD650 y TD350. La primera de las vulnerabilidades, con CVE-2015-3322, se debe a un cifrado muy débil de las contraseñas de usuario y administrador de la BIOS. Esto puede ser aprovechado por un atacante para descifrar dichas contraseñas a través de vectores no especificados. Se recomienda actualizar la BIOS a la versión (V1.26.0) disponible desde: http://support.lenovo.com/us/en/product_security/ts_bios_pw

La siguiente vulnerabilidad, con CVE-2015-3323, reside en el software ThinkServer System Manager (TSM). Un atacante remoto podría causar una denegación de servicio a través del envío de paquetes HTTP especialmente manipulados.

Por último, el CVE-2015-3324, en la que un atacante remoto podría realizar un ataque 'Man-in-the-Middle' también en el componente ThinkServer System Manager (TSM). Esto podría ser debido a un error de validación de certificados de servidor durante el establecimiento de sesiones remotas KVM cifradas.
Para estas dos últimas vulnerabilidades se recomienda actualizar (TSM) a la versión TSM v1.27.7347. Disponible desde:

Más información:

Lenovo Product Security Advisories

ThinkServer *50-series BIOS Password Encryption Weakness

Multiple ThinkServer System Manager (TSM) *50-series Security Weaknesses



Juan Sánchez