GOOGLE HACKING: PARTE II
Venimos de Google Hacking I, donde habíamos introducido los operadores que nos permiten exprimir al máximo este famoso buscador. Hoy veremos ejemplos sencillos de como podemos utilizar estos operadores.
Listado de directorios
Una de
las acciones habituales a la hora de mejorar la seguridad de un sitio web,
es desactivar el listado de directorios, es decir, evitar que el
servidor muestre la lista de contenidos de los directorios públicos.
Aunque es habitual que esta opción este deshabilitada, existen
muchos servidores que la traen activa por defecto, por lo que si no
es desactivada nos ofrecería una oportunidad única para recopilar
información de valor.
Localizar
listados de directorios mediante búsquedas de Google es sencillo.
Aprovecharemos la circunstancia de que la gran mayoría de listados
de directorios comienzan con la frase “Index of”, frase que
también se mostrará en el titulo de la pagina. Una forma rápida
para encontrar este tipo de paginas vendrá dada por la búsqueda;
intitle:index.of,
que buscara aquella paginas cuyo titulo sea “Index of”.
Desafortunadamente, esta búsqueda devolverá multitud de falsos
positivos, por lo que necesitaremos afinar un poco mas la búsqueda.
Existen varias palabras claves que a menudo podemos encontrar en los
listados de directorios, como son “parent directory”, “name”
y “size”. Combinando estas palabras claves con la búsqueda
anterior reduciremos drásticamente el numero de falsos positivos.
[
intitle:index.of “parent directory” ]
[
intitle:index.of name size ]
Buscando
directorios y archivos
Ya
hemos visto como localizar un listado de directorios, pero aun
podemos afinar mas la búsqueda. Una opción interesante seria buscar
un directorio donde pudiéramos encontrar información útil. Por
ejemplo, para localizar un directorio de nombre “admin” sin tener
que navegar por el listado, añadiríamos a la búsqueda el nombre
del directorio de la siguiente forma:
[
intitle:index.of.admin ]
[
intitle:index.of inurl:admin ]
Pero el
listado de directorios ademas de listar el nombre de los directorios,
como su propio nombre indicia, también lista ficheros. Por tanto, es posible buscar mediante Google ficheros
específicos sin necesidad de navegar por cada uno de los
directorios. Por ejemplo, si pretendemos buscar ficheros de registro
usaríamos la búsqueda:
[
intitle:index.of acces.log ]
Versión
del servidor
Una
pieza de información valiosa que nos ofrecen algunos listados de
directorios es el nombre y numero de la versión software del
servidor. Suele aparecer en la parte baja del listado del directorio,
tal como se muestra en la siguiente imagen.
Para
localizar este tipo de información usaremos la palabra clave “server
at”, que aparece junto a la versión y nombre del software del
servidor web. Podremos también, buscar un tipo de servidor en
concreto, como por ejemplo Apache o IIS, e incluso una versión
determinada, para lo que cambiaríamos el asterisco por la versión
concreta.
[
intitle:index.of “server at” ]
[
intitle:index.of “Apache/* server at” ]
[
intitle:index.of “Microsoft-IIS/* server at” ]
Páginas de acceso
Cuando
hablamos de páginas de acceso, hacemos referencia a aquellas paginas
web que permiten el acceso a una zona restringida mediante unos
determinados credenciales (habitualmente usuario y contraseña).
Encontrar este tipo de página puede sernos útil, ya que podremos
obtener información del software instalado, información que
podremos usar posteriormente para buscar vulnerabilidades y exploits.
Así mismo, podremos realizar el proceso inverso, es decir, a partir
de un exploit, usar el buscador de Google para obtener posibles
objetivos. Una ultima opción, seria realizar ataques de diccionario
o fuerza bruta para intentar obtener acceso al área restringida.
Existen
varias búsquedas que nos permiten encontrar paginas de acceso de
forma general, es decir, buscaremos paginas de acceso sin tener en
cuenta al servicio que podamos acceder si finalmente comprometemos el
sistema. Por ejemplo, podemos buscar, mediante la URL, formularios
web basados en ASP.NET que nos permitirán acceder a un área
restringida (login.aspx) o formularios :
[
inurl:”/secure/login.aspx” ]
Otra
opción, es buscar texto en la web que anuncie que nos encontramos
ante un portal de acceso, por ejemplo, texto que nos pida que
introduzcamos los credenciales necesarios:
[
intitle:Please Login "You have requested access” ]
Hemos
visto como buscar páginas de acceso de forma general, pero podemos
centrarnos en páginas de un software o hardware en concreto. Por
ejemplo, seria interesante encontrar una pagina de acceso a una VPN
SSL Clientless de Cisco
ASA, software al que le fue descubierta una vulnerabilidad y que
podríamos intentar explotar(CVE-2014-3393):
[
inurl:logon.html "CSCOE" ]
Tan
solo tendríamos que encontrar una característica diferenciadora en
alguno de los elementos (titulo, URL, texto...) para buscar un página
de acceso de un software en concreto en el que tengamos interés.
Otros ejemplos podrían ser, la búsqueda de paginas de acceso del
gestor de aplicaciones virtuales de Citrix XenApp
o a la plataforma anti-DDoS Peakflow
SP de Arbor Networks:
[
inurl:"Citrix/XenApp/auth/login.aspx" -Xmarks ]
[
intext:"Please Authenticate" intitle:Peakflow
]
robots.txt
Otra
cosa interesante con la que podemos trastear” es con el fichero
robots.txt. Este fichero de texto dicta unas “recomendaciones”
para los crawlers de buscadores como Google o Bing sobre las páginas
que no deben indexar.
Lo
curioso e increíble es que estos buscadores suelen indexar este
fichero, por lo que podemos obtener aquella información que los
administradores quieren mantener oculta...¿muy lógico no?.
Haciendo
búsquedas simples, podremos identificar instalaciones de phpMyAdmin,
Wordpress, Drupal, Joomla...
[ inurl:.com/robots.txt- + "Disallow: /phpmyadmin/" ]
[ inurl:".com/robots.txt" + "Disallow: /wp-admin/ ]
[ inurl:".com/robots.txt" + "Disallow: ?q=admin" ]
[ inurl:"/robots.txt" + "Disallow: joomla" ]
E
incluso ir mas allá y buscar determinados directorios o ficheros,
que pretendan ser ocultados. Cuestión de imaginación.
En
esta segunda parte hemos ejemplificado de forma eficaz como podemos
hacer uso de los operadores de Google para buscar información útil
de forma rápida y sencilla. Pero existen muchas mas posibilidades,
como búsqueda de vulnerabilidades especificas, RFI, XSS, SQLi... Pero eso lo veremos en la tercera parte :)
#ST2Labs
@seguridadxato2
@jm_aparicio
#ST2Labs
@seguridadxato2
@jm_aparicio
0 comentarios:
Publicar un comentario