Netcat es una de las herramientas mas sencillas y útiles en cuanto seguridad informática se refiere. Amada por muchos y odiada por nadie. Debido a que esta puede ser útil desde la fase de recolección de inteligencia, la fase de explotación y la fase de Post-Explotación. Netcat es una herramienta muy utilizada y en esta serie de artículos exploraremos todo su potencial.
El banner grabbing consiste en obtener información de un servicio que se encuentra corriendo en un puerto especifico de algún servidor en Internet.
En el caso actual, vamos a obtener información de un servidor accesible desde Internet con el servicio de HTTP o HTTPS ejecutándose en el puerto 80 y 443 respectivamente.
Paso 1
Es necesario conectarse al servidor a través de su nombre de dominio o bien a través de su dirección IP en el puerto 80. Para ello utilizaremos el comando: netcat <dominio> <puerto>
Paso 2
Netcat ya se conectó al servidor HTTP, pero aun no se ha realizado alguna solicitud a dicho servidor, así que haremos nuestra solicitud para obtener la información que requerimos. Ejemplo: HEAD / HTTP/1.0
Nota: Es importante que cuenten con conocimientos sobre métodos de petición HTTP, versiones de HTTP y códigos de estado HTTP
Explicación de los parámetros ingresados
HEAD
es un método de petición HTTP que solicitara solo las cabeceras HTTP/
Es la ruta en donde se hace la petición, por tanto, también podría usarse/index.php
o/index.html
HEAD /index.php HTTP/1.0
HTTP/1.0
Hacer referencia a la versión de HTTP utilizada por el servidor
Paso 3
Analicemos la respuesta del servidor con la versión HTTP/1.1
:
Analicemos la respuesta del servidor con la versión HTTP/1.0
:
Conclusión
Los distintos servidores utilizan distintas versiones de HTTP, por tanto, debemos utilizar todas la versiones hasta obtener la información que queremos. Sin embargo la mas utilizada en la actualidad es la versión HTTP/1.1
. Así que la recomendación es siempre iniciar con la versión HTTP/1.1
y luego intentar con la versión HTTP/1.0
La información obtenida a través de netcat nos permitirá identificar posibles vulnerabilidades en las versiones de nginx/1.12.2
y PHP/5.4.16
. Después, si algunos vulnerabilidad es identificada, esta se puede explotar fácilmente.
En próximos artículos explicaremos como buscar vulnerabilidades en base a las versiones de las tecnologías en general e identificarlas con su código CVE.