Imagen theblaze.com |
Resumiendo, fingerprinting es el proceso mediante el cual se obtiene la información del sistema operativo del activo a auditar.
Vamos a ver distintas formas de obtener esa información de la que hablaba en la línea anterior.
La primera, la más sencilla y la que podemos usar (casi) desde cualquier equipo es el archi conocido Telnet.
Para ello simplemente abrimos una terminal Linux o Windows (si lo tienes activo) y escribimos: telnet activo puerto, y a continuación escribimos: método directorio protocolo/versión. Para traducir esto a cristiano, un ejemplo.
telnet testphp.vulnweb.com 80
GET / HTTP/1.0
(dar dos veces a intro)
En este ejemplo, le estamos haciendo telenet a la web testphp.vulnweb.com por el puerto 80 lo que nos hará la conexión, y acto seguido le pedimos que haga un GET de / por HTTP y versión 1.0.
Esto nos devolverá información sobre el activo bastante valiosa a la hora de buscar vulnerabilidades o exploits contra el software instalado.
Telnet ejecutado desde Linux |
Telnet ejecutado desde Windows |
La forma de utilizarlo es muy parecida a telenet, de hecho solo cambiamos telenet por nc.
nc activo puerto
nc testasp.vulnweb.com 80
(dar dos veces a intro)
Lo que igualmente nos devolverá información útil.
Una herramienta que no puede faltar en nuestras auditorías y con la que también podemos realizar este mismo trabajo, es el ya conocido por todos (y si no, pasa por aquí) Burp Suite. Solo tenemos que hacer una petición a la web que vamos a auditar para ver los resultados.
Otra herramienta que se puede usar para realizar este tipo de prueba es WhatWeb. Por defecto viene instalada en Kali. Su uso es bastante sencillo.
whatweb -v -a 3 testasp.vulnweb.com
En este caso he usado los modificadores -v (nivel de verbosidad) y -a (nivel de agresividad) para que muestre mayor información. Os recomiendo que reviséis la ayuda escribiendo whatweb -h.
Por último (pero no por ello menos importante) podemos realizar lo mismo con la conocidísima herramienta nmap a través de uno de sus scripts.
nmap activo --script=http-headers.nse
nmap testphp.vulnweb.com --script=http-headers.nse
Como vemos, con nmap además de sacar la misma información, también nos devuelve los puertos abiertos y los servicios que corren en estos en la misma consulta.
Roberto García (@1GbDeInfo)