Los servidores Web de Microsoft se ven afectados por una vulnerabilidad que puede permitir a un atacante obtener acceso a otros archivos fuera del directorio web, como bases de datos de clientes, logs, código asp, o cualquier archivo del que se conozca la ruta.
Internet Information Server 4.0 incluye la aplicación webhits.dll que proporciona a Index Server funcionalidad «hit-highlighting» (para resaltar términos en una búsqueda). Webhits.dll produce sus resultados a través de archivos con extensión .htw. Precisamente es en esta aplicación (webhits.dll) donde reside la vulnerabilidad que puede permitir a un usuario malicioso saltar el sistema de archivos virual del web y ganar acceso no autorizado a otros archivos de la misma unidad de disco lógica.
Es decir el atacante tan sólo podrá conseguir acceso sobre determinados archivos de la misma unidad en la que se encuentre el directorio Web. La misma vulnerabilidad puede usarse para obtener el código de cualquier página asp o script de ejecuci¢n en el servidor, las cuales pueden contener identificadores de usuario, passwords o cualquier otra informaci¢n sensible.
Segon el aviso, incluso si no se tienen p ginas htw en el sistema se puede seguir vulnerable. La mejor forma para averiguarlo es introducir la siguiente url en un navegador http://direccion_del_servidor/paginainexistente.htw. Si se recibe el mensaje «The format of QUERY_STRING is invalid.» el sistema es vulnerable. Microsoft ha actuado de forma r pida y a las pocas horas de la difusi¢n de la vulnerabilidad en la lista Bugtraq public¢ un parche que corrige el problema.
La vulnerabilidad puede ser explotada de dos formas. En primer lugar si el sistema tiene archivos .htw, la funcionalidad «hit-highlighting» de Index Server permite que cuando un usuario realiza una bosqueda, el documento de respuesta tenga los t’rminos de la bosqueda resaltados.
El nombre del documento se pasa al archivo .htw mediante el argumento CiWebHitsFile. webhits.dll, es la aplicaci¢n ISAPI que trata con la petici¢n, abre el archivo y resalta las palabras consecuentemente y devuelve la p gina resultante. Como el usuario tiene control sobre el argumento CiWebHitsFile puede solicitar cualquier cosa que desee. Un problema secundario a esto es que se puede llegar a visualizar el c¢digo de las p ginas asp y de cualquier otro lenguaje script. El problema radica en que webhits.dll interpreta los ../ por lo que un atacante puede conseguir acceso a archivos externos al directorio web.
Por ejemplo para ver los logs de acceso a un servidor en un d¡a el atacante puede construir la siguiente url:
Si no se tienen archivos .htw el problema reside en que webhits.dll llama a un archivo inexistente en el sistema y por tanto da un error, pero esto tambi’n puede saltarse si se hace que sea getinfo.exe quien llame a webhits.dll y se construye una url especial. Primero se necesita un recurso v lido. Este puede ser un archivo est tico como un .htm, .html, .gif o .jpg que ser el que abra webhits.dll como plantilla.
Obviamente esta url producir un error, ya que no existe dicho archivo en el sistema. En esta petici¢n hemos llamado a webhits, sin embargo situando un nomero espec¡fico de espacios (%20s) entre el recurso existente y el .htw es posible «enga_ar» al servidor web. El baffer que mantiene el nombre del archivo htw a abrir se trunca, lo que hace que la parte .htw sea eliminada y entonces cuando llega a webhits.dll presenta los contenidos del archivo sin necesidad de tener un archivo htw real en el sistema.
Microsoft ya dispone de un parche para solucionar este problema. Debido a la gravedad de la vulnerabilidad recomendamos a todos los administradores de Windows NT con IIS 4 instalen dichos parches en sus sistemas.
M s informaci¢n:
Bugtraq
http://www.securityfocus.com/level2/bottom.html?go=vulnerabilities&id=950
Boletin de seguridad Microsoft
http://www.microsoft.com/technet/security/bulletin/ms00-006.asp
Preguntas y respuestas de Microsoft sobre la vulnerabilidad
http://www.microsoft.com/technet/security/bulletin/fq00-006.asp
Parches
Index Server 2.0
Intel
http://www.microsoft.com/downloads/release.asp?ReleaseID=17727
Alpha
http://www.microsoft.com/downloads/release.asp?ReleaseID=17728
Indexing Services for Windows 2000
Intel
http://www.microsoft.com/downloads/release.asp?ReleaseID=17726
Antonio Ropero
antonior@hispasec.com