elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.
 
Inicio Ayuda Buscar Ingresar Registrarse
27 Mayo 2012, 15:34  


Tema destacado: [AIO elhacker.NET] Compilación herramientas análisis y desinfección malware

+  Foro de elhacker.net
|-+  Seguridad Informática
| |-+  Hacking Avanzado (Moderadores: ANELKAOS, TRICKY)
| | |-+  Ejecución de comandos arbitrarios en Microsoft Windows XP y Server 2003
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Ejecución de comandos arbitrarios en Microsoft Windows XP y Server 2003  (Leído 2,586 veces)
kamsky
Colaborador
***
Desconectado Desconectado

Mensajes: 2.210


Como no sabían que era imposible, lo hicieron...


Ver Perfil
Ejecución de comandos arbitrarios en Microsoft Windows XP y Server 2003
« en: 11 Junio 2010, 16:14 »

-------------------------------------------------------------------
 Ejecución de comandos arbitrarios en Microsoft Windows XP y Server 2003
 -----------------------------------------------------------------------

Tavis Ormandy ha publicado, en la lista de Full Disclosure, los detalles
y prueba de concepto de una vulnerabilidad sin parche que permite
ejecutar comandos arbitrarios a través de una URL. El fallo descubierto
se haya en Microsoft Windows Help Centre, la aplicación para acceder a
la documentación de ayuda.

Dicha aplicación registra un manejador de protocolo con el esquema
"hcp://" para acceder a la documentación a través de URLs. Cuando se
accede a través de una URL a la documentación, el manejador del nombrado
esquema "hcp", añade el parámetro de línea de comandos "/fromhcp" para
indicarle a la aplicación del centro de ayuda que el recurso ha sido
solicitado desde una URL; restringiendo el uso de parámetros y
permitiendo sólo un conjunto de documentos que se encuentran en una
lista blanca.

Ormandy ha encontrado un método para evadir esta lista blanca, basado en
un error en la implementación de la función que comprueba las URL.

El fallo reside en la función "MPC::HTML::UrlUnescapeW", usada para la
normalización y filtrado de la URL antes de ser validada. Dicha función
usa a su vez la función "MPC::HexToNum" para convertir los caracteres
escapados (p.ej %20 al valor de espacio en blanco) a su correspondiente
valor numérico.

Sin entrar en detalles técnicos, básicamente, la función
"MPC::HTML::UrlUnescapeW" omite el chequeo del valor de retorno de
"MPC::HexToNum", permitiendo envenenar la cadena final y evadir la
restricción de lista blanca.

Para proseguir con la explotación Ormandy necesitaba una página de la
documentación que cumpliese con varias condiciones, poder ser invocado
directamente desde una URL y con un fallo de cross-site scripting que le
permitiese incluir una cadena manipulada.

Pudo localizar la página de documentación e identificar el XSS, pero
curiosamente no pudo explotarlo (Ormandy no es especialista en Web). Así
que tuvo que echar mano de su compañero en Google y experto en seguridad
web y navegadores Michal Zalewski, muy nombrado últimamente por su
escáner de seguridad web Skipfish.

Con la ayuda de Zalewski y de una propiedad exclusiva de Internet
Explorer el XSS pudo ser explotado. En ese momento se disponía de un
método para evadir la lista blanca, una página de documentación de ayuda
instalada por defecto y con un XSS explotable. Al ejecutarse la página
en una zona privilegiada tan solo bastaba incluir un comando en la
cadena para provocar su ejecución.

¿Acabó aquí?

Hasta ahora está claro que con una URL con el manejador "hcp://" y
apropiadamente manipulada se pueden inyectar comandos, pero cuando se
invoca a través del navegador el usuario es advertido y aunque es
conocida la incapacidad retentiva de la mayoría para hacer click en
aceptar, a Ormandy no le pareció una forma elegante de finalizar con su
investigación.

Consiguió un método para evitar la atención del usuario mediante el uso
de archivos ASX (Advanced Stream Redirector). Windows Media Player 9 usa
estos archivos, con estructura XML, para almacenar listas de
reproducción. El navegador invoca el reproductor cuando abre un archivo
con extensión ".asx". Entre los valores a incluir en dicho archivo uso
el elemento "HTMLView" y le dio como valor una URL hacia una página HTML
que contiene, ahora si, la URL maliciosa.

No deja de resultar curioso, en este caso en particular, el
encadenamiento de explotaciones y descubrimientos que llevan al
investigador desde un punto de intuición hasta la consecución de sus
objetivos.

Son vulnerables los sistemas Windows XP y Windows Server 2003.

Mike Reavey, director del MSRC de Microsoft ha publicado una respuesta
en el blog del MSRC, en la que ofrece una contramedida y explica el poco
tiempo que el investigador les ha otorgado, para solucionar el fallo,
antes de hacer públicos los detalles.
En línea

----NO HAY ARMA MÁS MORTÍFERA QUE UNA PALABRA BROTADA DE UN CORAZÓN NOBLE, Y UN PAR DE HUEVOS QUE LA RESPALDEN---

                       hack 4 free!!
tragantras


Desconectado Desconectado

Mensajes: 466


Ver Perfil
Re: Ejecución de comandos arbitrarios en Microsoft Windows XP y Server 2003
« Respuesta #1 en: 11 Junio 2010, 17:34 »

Buen resumen de la jornada kamsky :)

solo añadir que se recomienda para los usuarios de los SO citados se recomienda borrar la clave del registro:

HKEY_CLASSES_ROOT\HCP\shell\open\command
En línea

Colaboraciones:
1 2
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Automatizar ejecución de comandos
Hacking Linux/Unix
Gambinoh 2 1,886 Último mensaje 26 Abril 2011, 22:49
por .:UND3R:.
Automatizar ejecución de varios comandos
GNU/Linux
Gambinoh 4 1,420 Último mensaje 8 Abril 2011, 16:32
por D4RIO
Ejecución de comandos en WebSVN
Noticias
wolfbcn 0 424 Último mensaje 7 Junio 2011, 17:23
por wolfbcn
Ayuda con comandos de Windows Server Tech Center
Scripting
Azhag_el_Carnicero 6 561 Último mensaje 31 Julio 2011, 20:19
por Azhag_el_Carnicero
Powered by SMF 1.1.16 | SMF © 2006-2008, Simple Machines