19 agosto 2011

robots.txt, ése gran desconocido.

Los que leáis a Chema en El Lado del Mal ya debéis saber lo poco que conocen algunos administradores de webs el fichero robots.txt, es más, con una pequeña búsqueda en Google (que no Bing), podemos encontrar sus posts que hablan de todo tipo de pifias, malas configuraciones o robots.txt's demasiado inflados de información.

Éstos últimos pueden ser de gran utilidad para un auditor de seguridad o para el chico (¡o chica!) malo de turno.

La razón es que, en ocasiones, se ponen rutas que nadie debería conocer en el robots.txt, con la confianza de que nadie a parte del bot de Google lo mirará. Por ejemplo, un panel de administración o un directorio con datos privados jamás deberían estar en un robots.txt.

Claro, que a veces nos ponen los dientes largos pero luego el directorio no tiene permisos para que accedamos.

Pues ésto precisamente es lo que permite verificar de forma automatizada la nueva herramienta CheckMyRobots.

A veces el fichero robots.txt tiene tal cantidad de entradas Disallow que verificar a mano si son accesibles desde fuera se convierte en una tarea larga y tediosa.

Para utilizar CheckMyRobots sólo tendremos que pasarle el sitio web que queremos analizar, y él solo leerá el robots.txt y recorrerá todas las entradas Disallow para comprobar su estado.

Por ejemplo, si probamos con la web de RTVE:

./checkmyrobots.py www.rtve.es
robots.txt fetched, parsing ...
/buscadorWeb [302 - Moved Temporarily]
/buscador [301 - Moved Permanently]
/alacarta/*.xml$ [301 - Moved Permanently]
...
/css/ [404 - Not Found]
/rtve/components/parrilla/popup/ [404 - Not Found]
...
/sinatra/swf/flvplayer/ [403 - Forbidden]
/visor/flvplayer/ [404 - Not Found]
/visordeportes/swf/flvplayer/ [403 - Forbidden]
...
/television/entretenimiento/ [200 - OK]

La información está recortada, pero podemos ver que nos muestra el directorio, el código HTTP y el motivo.

Está escrito en Python, y ya podéis descargarlo desde el repositorio de SbD.

3 comments :

Santiago dijo...

Excelente... Estaría bueno también que se pueda agregar más parámetros de entrada, como por ejemplo que devuelva solamente los directorios a los que se puede acceder.

Gracias!!

gnumax dijo...

Hola,

Cuando dices "la información está recortada" ¿a que te refieres exactamente?, ¿al tramo que tu muestras?, ¿a las posibilidades del script?...

Saludos ;)

Alberto Ortega dijo...

Al ser tantas las entradas del robots.txt de RTVE (la página que hemos usado como ejemplo) he puesto sólo algunas partes del resultado, para que se vieran varios datos relevantes y no inundar con información repetida el post :)