Nmap ofrece varias maneras de evitar las reglas de los firewalls y evadir los sistemas IDS/IPS, como la fragmentación de paquetes, el uso de señuelos (decoys) y otros métodos que se explican a continuación.

Firewalls

Un firewall es una medida de seguridad que evita conexiones no autorizadas desde redes externas. Su funcionamiento se basa en un software que supervisa el tráfico de red y decide, según las reglas establecidas, cómo tratar cada conexión. Puede permitir, ignorar o bloquear paquetes de red, previniendo conexiones peligrosas.

IDS/IPS

Los sistemas IDS (sistema de detección de intrusos) e IPS (sistema de prevención de intrusos) también son componentes de software. El IDS monitorea la red para detectar posibles ataques, los analiza y reporta cualquier actividad sospechosa. El IPS complementa al IDS, actuando de forma automática cuando detecta una amenaza, tomando medidas como bloquear la conexión. Ambos sistemas funcionan comparando patrones de tráfico con firmas conocidas de ataques.

Determinar la presencia de firewalls y sus reglas

Cuando un puerto aparece como “filtrado” en un escaneo, puede ser por varias razones, pero comúnmente es porque el firewall tiene reglas para bloquear ciertos paquetes. Los paquetes pueden ser “caídos” (ignorados sin respuesta) o “rechazados” (recibiendo una respuesta con un código de error).

Existen varios códigos de error posibles, como:

· Red inalcanzable

· Puerto inalcanzable

· Protocolo inalcanzable, entre otros.

El Escaneo de tipo TCP ACK de Nmap (-sA) es mucho más difícil de filtrar para firewalls y sistemas IDS/IPS que el SYN normal (-sS) o Connect scans (sT) porque solo envían un paquete TCP con la flag ACK. Cuando un puerto está cerrado o abierto, el host debe responder con un Flag RST. A diferencia de las conexiones salientes, todos los intentos de conexión (con el SYN flag) de redes externas generalmente están bloqueados por firewalls. Sin embargo, en los paquetes con el flag ACK el firewall suele ignorar el flag no puede determinar si la conexión se estableció primero desde la red externa o la red interna.

Si observamos estos escaneos podemos ver diferentes resultados.

SYN-Scan

ACK-Scan

Entre los dos ejemplos, debemos prestar atención a los paquetes RCVD y su flag establecida que recibimos de nuestro objetivo. Con el escaneo SYN (-sS) nuestro objetivo intenta establecer la conexión TCP enviando un paquete con el SYN-ACK (SA) flags configurados, y con el escaneo ACK (-sA) obtenemos el flag RST porque el puerto TCP 22 está abierto. Para el puerto TCP 25, no recibimos ningún paquete, lo que indica que los paquetes se descartarán.

Evasión de firewalls con NMap

Un método útil es el escaneo TCP ACK de Nmap (-sa). Este tipo de escaneo es más difícil de detectar por los firewalls que los escaneos tradicionales como SYN (-sS) o Connect (-sT), porque solo envía un paquete con la bandera ACK. Los firewalls suelen bloquear conexiones entrantes (con la bandera SYN), pero las conexiones con la bandera ACK pueden ser pasadas por alto porque el firewall no sabe si la conexión comenzó internamente o externamente.

Detección de IDS/IPS

A diferencia de los firewalls,

Los IDS/IPS son sistemas pasivos que monitorean todo el tráfico entre los hosts. El IDS detecta paquetes sospechosos y alerta al administrador, mientras que el IPS puede bloquear el tráfico automáticamente. Estos sistemas son más difíciles de detectar.

Una estrategia para averiguar si existe un IDS/IPS es realizar escaneos desde diferentes servidores (VPS). Si uno de ellos es bloqueado, es probable que el sistema de seguridad haya detectado un ataque. En este caso, se puede continuar el análisis con otro VPS y, además, realizar los escaneos de forma más sigilosa para no activar los mecanismos de seguridad.

Uso de señuelos (decoys)

Si un administrador bloquea rangos de IP específicos, los escaneos con señuelos (decoys) pueden ayudar a ocultar la IP real del atacante. NMap permite generar direcciones IP falsas que se intercalan con la IP real para confundir al firewall o al IDS/IPS, haciendo más difícil rastrear la fuente del escaneo.

Escanear con otras técnicas

Nmap también permite usar puertos específicos (como el puerto 53 de DNS) para realizar escaneos. Esto es útil porque algunos firewalls permiten el tráfico de ciertos puertos que necesitan para su funcionamiento normal.

Los ISP y los enrutadores suelen filtrar los paquetes falsificados, aunque provengan del mismo rango de red. Por lo tanto, también podemos especificar las direcciones IP de nuestros servidores VPS y usarlas en combinación con “IP ID” manipulaciones en los encabezados de IP para escanear el objetivo.

Otro escenario sería que sólo las subredes individuales no tuvieran acceso a los servicios específicos del servidor. Entonces también podemos especificar manualmente la dirección IP de origen (-S) para probar si obtenemos mejores resultados. Los señuelos se pueden utilizar para escaneos SYN, ACK, ICMP y escaneos de detección de sistema operativo.

Escanear utilizando una IP de origen diferente

En el ejemplo usamos las siguientes opciones:

10.129.2.28Escanea el objetivo especificado.
-nDesactiva la resolución DNS.
-PnDeshabilita las solicitudes de eco ICMP.
-p 445Explora sólo los puertos especificados.
-ORealiza un análisis de detección del sistema operativo.
-SEscanea el objetivo utilizando una dirección IP de origen diferente.
10.129.2.200Especifica la dirección IP de origen.
-e tunoEnvía todas las solicitudes a través de la interfaz especificada.

Proxy DNS

Por defecto, Nmap realiza una resolución DNS inversa a menos que se especifique lo contrario para encontrar la información más importante sobre nuestro objetivo. Las consultas DNS se realizan a través del puerto UDP 53. El puerto TCP 53 Anteriormente sólo se utilizaba para transferencias de zona “Zone transfers” entre los servidores DNS o transferencias de datos de más de 512 bytes. Esto cambió con el uso de IPv6 y DNSSEC. Estos cambios hacen que muchas solicitudes de DNS se realicen a través del puerto TCP 53.

Sin embargo, Nmap todavía nos ofrece la forma de especificar servidores DNS nosotros mismos (--dns-server <ns>,<ns>). Este método es fundamental para nosotros si nos encontramos en una DMZ. Como Los servidores DNS de una empresa suelen ser más seguros que los de Internet; podríamos utilizarlos para interactuar con los hosts de la red interna. También podemos usar el puerto TCP 53 como puerto de origen (--source-port) para nuestros escaneos. Si el administrador usa el firewall para controlar este puerto y no filtra IDS/IPS correctamente, nuestros paquetes TCP pasarán como de confianza y no serán detectados.

SYN-Scan de un puerto filtrado

SYN-Scan desde el puerto DNS


Ahora que hemos descubierto que el firewall acepta el puerto TCP 53, es muy probable que también podamos pasar los filtros IDS/IPS. Intentaremos conectarnos a un puerto usando NetCat.

Otro ejemplo:

Related Post

Leave a Reply

Your email address will not be published. Required fields are marked *