Otros Tipos de Escaneo con Nmap

news and informations automotive,business,crime,health,life,politics,science,technology,travelautomotive,business,crime,health,life,politics,science,technology,travel

Los escaneos que hemos visto hasta ahora nos permiten hacer un descubrimiento básico de la red, pero si queremos obtener más detalles sobre las máquinas o si estas están protegidas por cortafuegos, tenemos que avanzar un poco más en el uso de Nmap.

Vamos a ver otros modos de escaneo que, si bien por si solos no nos darán un resultado espectacular, podremos combinar más adelante para llevar a cabo un análisis más profundo.

Escaneo UDP

Un tipo de escaneo que suele dar resultado es el escaneo UDP. Cambiamos de protocolo, ya que hasta ahora sólo habíamos usado TCP, y los cortafuegos no siempre lo bloquean. Cualquiera de los escaneos anteriores falla al lanzarlos contra la máquina Windows 7 con el cortafuegos activo, pero ahora vamos a intentarlo con el UDP:

Ahora aparece un puerto abierto, el 137 correspondiente al servicio Netbios, que suele ser indicativo de una máquina de Microsoft, aunque no aún no podamos determinarlo con seguridad.

Hay que tener en cuenta que es habitual que los hosts abran y cierren puertos en determinados momentos, por lo que es una buena idea hacer el escaneo en diferentes momentos y podríamos obtener diferentes resultados. Por ejemplo, si repetimos el escaneo anterior en otro momento, obtenemos:

Escaneo TCP Ack

Este escaneo no intenta determinar si los puertos están abiertos. De hecho, nunca nos dará como resultado para un puerto “open” ni “open|filtered”. El objetivo de este escaneo es detectar el tipo de cortafuegos que tenemos delante, si es stateful o stateless.

La sonda que se envía sólo tiene el flag ACK activo. Si el puerto no responde o devuelve un paquete ICMP “destination unreachable”, se considera que el puerto está filtrado por el cortafuegos. Si el puerto devuelve un paquete RST, se clasificará como “unfiltered”, es decir, es alcanzable.

Vamos a lanzar este escaneo y también vamos a introducir la opción “-vv” que aumenta el nivel de detalle de la salida y “-n” que evita el intento de resolución DNS inversa para acelerar el proceso.

En un primer intento usaremos como objetivo nuestra máquina CentOS, que no tiene el cortafuegos habilitado y tiene el puerto 22 a la escucha:

Aparece el puerto como “unfiltered”.

Si ahora lo intentamos con Windows 7, que sí tiene el cortafuegos activo, hacia el puerto 135 que está a la escucha. Este puerto es usando por muchos protocolos de nivel superior, como DCOM en el caso de Microsoft e históricamente ha sido uno de los más atacados en Internet. De hecho, el famoso Blaster lo utilizaba para lleva a cabo su ataque:

Obtenemos:

donde el puerto aparece como “filtered”.

Escaneo TCP Window

La idea de este escaneo es igual a la del ACK, estudiar el cortafuegos que tenemos delante, pero intenta explotar detalles de implementación de determinados sistemas para diferenciar un puerto abierto de otro cerrado (ACK no hace esta diferencia). El flag ACK se envía activo en la sonda y se analiza el campo del tamaño de ventana de la respuesta. En algunos sistemas, este campo tiene un valor positivo si el puerto está abierto y cero si está cerrado.

Como decíamos, este escaneo se basa en un detalle de implementación de una minoría de sistemas, por lo que no siempre podemos confiar en él.

Veamos la respuesta si lo lanzamos contra nuestro CentOS:

El puerto aparece como cerrado cuando sabemos que en realidad está abierto. En la siguiente imagen tenemos un detalle del paquete enviado:

Donde vemos el flag ACK activo. Y la respuesta desde CentOS cuando el puerto escaneado está abierto:

Con un segmento RST y el tamaño de ventana a 0. Si hacemos lo mismo con un puerto que está realmente cerrado en CentOS, como el 23 (Telnet):

Vemos que la respuesta es igual y con esta sonda lanzada contra CentOS, Nmap no puede saber si el puerto está abierto o cerrado.

Si se lanza contra la máquina Windows 7, esta no responde y Nmap determina que el puerto está filtrado:

Escaneo IP Protocol

Este escaneo está orientado a determinar los protocolos IP (ICMP, TCP, UDP, IGMP, IPv4, IPv6,…) que están soportados por la máquina objetivo, lo que nos puede dar una idea del tipo de máquina que es (Servidor, PC, Router,…).

A diferencia de un escaneo de puertos, lo que hace es utilizar el campo IP Protocol del paquete IP:

Veamos el resultado contra CentOS:

Como hemos visto, Nmap dispone de un enorme arsenal de herramientas para llevar a cabo escaneos de puertos y máquinas.  De momento sólo hemos visto una mínima parte de ellas y estamos sentando las bases para después pasar a tareas más complejas.

En el próximo post hablaremos sobre cómo podemos detectar los servicios e incluso las versiones de las aplicaciones que están a la escucha en un determinado puerto.  Esto forma parte de un proceso conocido como fingerprinting, que es una de las etapas iniciales en cualquier proceso de pen testing y análisis de vulnerabilidades.