Escaneo ACK de Nmap contra el Firewall de Windows

  • Posted on: 4 March 2020
  • By: ReYDeS

El escaneo ACK envía paquetes TCP con únicamente el bit ACK definido. Debido a los puertos están abiertos o cerrados, el sistema es requerido por el RFC 793 de responder con un paquete RST. Los firewalls bloqueando la prueba, de otro lado, usualmente no responden o envían de retorno un error ICMP de destino inalcanzable. Esta distinción permite a Nmap reporte los paquetes ACK están siendo filtrados. El conjunto de puertos filtrados reportados por un escaneo ACK de Nmap, es frecuentemente más pequeño a un escaneo SYN contra la misma máquina, porque los escaneos ACK son más difíciles de filtrar.

Muchas redes permiten conexiones salientes casi sin restricciones, pero requieren bloquear hosts de Internet iniciando conexiones a estas. El bloquear paquetes SYN entrantes (sin un bit ACK definido) es una manera fácil de hacerlo, pero aún permite el paso de los paquetes ACK. Bloquear estos paquetes ACK es más difícil, debido a no indican cual lado inició la conexión. Para bloquear paquetes ACK no solicitados (como los enviados por un escaneo ACK de Nmap), al tiempo de permitir paquetes ACK perteneciendo a conexiones legítimas, los firewalls deben vigilar de manera estática cada conexión establecida, para determinar si un ACK definido es apropiado. Estos firewalls de estado son usualmente más seguros porque pueden ser más restrictivos. El bloqueo de escaneos ACK es una restricción disponible adicional. Las desventajas son requerir más recursos para funcionar, y un reinicio de un firewall de estado puede causar el dispositivo pierda el estado y termine todas las conexiones establecidas atravesándolo.

Aunque los firewalls de estado están diseminándose y creciendo en popularidad, la perspectiva sin estado es bastante común. Por ejemplo, el sistema netfilter/iptables de Linux, soporta la opción “--syn”, para hacer la perspectiva sin estado descrita anteriormente fácil de implementar.

Para el siguiente ejemplo se utiliza una máquina con Windows Server 2012 R2. Únicamente se utiliza por defecto el firewall de Windows.

Se realiza un escaneo ACK contra el host, para determinar si está utilizando un firewall de estado.

# nmap -n -Pn -sA -v 192.168.0. 92

Se resalta la información obtenida en la línea “All 100 scanned ports are filtered”, o traducido al idioma español; todos los 1000 puertos escaneados están filtrados. La causa de esto es; únicamente se aceptan paquetes los cuales son parte o están relacionados hacia una conexión establecida. Los paquetes ACK no solicitados y enviados por Nmap son descartados.

El conocer como distinguir entre firewalls de estado y sin estado; ¿Porque es bueno esto?. El escaneo ACK puede mostrar algunos paquetes probablemente alcancen el host destino. Esto puede ser porque la falsificación del firewall es siempre posible. Si bien no se puede ser capaz de establecer conexiones TCP hacia aquellos puertos, estos pueden ser útiles para determinar cuales direcciones IP están en uso, pruebas para la detección del Sistema Operativo, ciertas manipulaciones ID de IP, y como un canal para hacer túnel a comandos para rootkits instalados en estas máquinas. Otros tipos de escaneos, como escaneo FIN, incluso puede ser capaz de determinar cuales puertos son abiertos, y por lo tanto inferir el propósito de estos hosts. Tales hosts pueden ser útiles como zombies para un escaneo “idle” ID de IP.

Fuentes:

https://nmap.org/book/determining-firewall-rules.html
https://nmap.org/book/firewall-subversion.html

Sobre el Autor


Alonso Eduardo Caballero Quezada - ReYDeS
Instructor y Consultor en Hacking Ético, Forense Digital & GNU/Linux
Correo Electrónico: ReYDeS@gmail.com
Twitter: @Alonso_ReYDeS
LinkedIn: pe.linkedin.com/in/alonsocaballeroquezada
Facebook: https://www.facebook.com/alonsoreydes
Youtube: http://www.youtube.com/c/AlonsoCaballero
Resumen de mi CV: http://www.reydes.com/d/?q=node/1