1. Auditando la seguridad de la red
con NMAP
NMAP es una completa herramienta gratuita y de código (unfiltered).
abierto orientada al escaneo de una red y su auditoría,
escrita por Fyodor, ha sido utilizada inclusive en el cine
cuando Trinity examina el servidor SSH de una central Tipo de Descripción
eléctrica para buscar vulnerabilidades en la película “The escaneo
Matrix reloaded”. Su instalación en Windows es muy NMAP
sencilla, entrar al link de la página oficial TCP connect Se hace una conección TCP completa con
http://nmap.org/download.html en la sección Windows (NT/ el sistema objetivo.
ME/2K/XP/Vista) binaries.
XMAS tree Se buscan servicios TCP enviando
¿Para quienes está orientada esta herramienta? scan paquetes XMAS-tree, los cuales tienen
todos los flags seteados: FIN, URG y
Lo pueden utilizar administradores de sistemas, pentesters, PSH.
hackers, etc. SYN stealth También conocido como half-open
scan scanning. Se envía un paquete SYN y se
¿Cómo funciona NMAP? recibe un SYN-ACK del servidor. La
conección TCP no se llega a abrir.
De acuerdo al tipo de escaneo deseado, el programa
enviará paquetes específicos al destino, permite un control Null scan Es un escaneo avanzado que puede ser
minucioso de las características de los paquetes enviados a capaz de pasar a través de firewalls. Este
tal nivel que, inclusive, se puede manejar los flags de TCP escaneo tiene todos los flags en off o no
por ejemplo. seteados.
Windows Es muy similar al ACK scan y puede
Se puede ecanear a un solo host o a toda una subred como scan detectar puertos abiertos.
se muestra en la gráfica 1. El formato del comando que se
sigue siempre es del tipo: ACK scan Este tipo de escaneo es usado para
mapear objetivos fuera de las reglas de
nmap -opcion1 -opcion2 destino los firewall.
Tabla 1. Se muestra algunos tipos de escaneo
Vamos a realizar nuestro primer escaneo, normalmente en
toda red LAN el router lo podemos encontrar en la IP
privada 192.168.1.1
Referirse a la tabla 1 y 2 para entender el argumento -sS.
Ya que este ejemplo es en windows, filtramos la salida a lo
que coincida con “tcp” mediante el comando find, análogo a
grep de Linux.
Eso es todo! Han realizado su primer escaneo, el gráfico 2
muestra que en este caso solo se ha utilizado el flag Syn de
TCP (se explicará más adelante este tema) para hacer el
escaneo.
Gráfica 1. Ejemplo de ejecución de Nmap, el host de rojo
comienza a escanear toda la red, en este caso, recibirá una
salida para 4 hosts detectados en la red: 1 portátil, una PC,
un servidor y un router.
Tipos de escaneo
Con Nmap se puede hacer identificación de puertos, de
servicios, de direcciones IP, de Sistemas Operativos, etc. Gráfica 2. Nmap mediante su argumento -sS utiliza
únicamente el bit del syn durante todo el envío de
El estado de un puerto según Nmap puede ser: abierto paquetes.
(open), cerrado (closed), filtrado (filtered) o sin filtrar
2. --source-port 53: escoge el puerto 53 como puerto origen.
Detección de servicios y de versiones
--spoof-mac 000013010101: escoge la MAC
Nmap brinda información de puertos como 25/tcp, 80/tcp y 00-00-13-01-01-01 como MAC origen
53/tcp pero a veces es necesario saber qué servicio ó
programa está corriendo y utilizando dicho puerto. -S 192.168.1.20 -e eth0: escoge la IP 192.168.1.20 como IP
origen y la interfaz eth0 como interfaz de salida.
Con -A se puede lograr ese objetivo:
En el caso que se muestra a continuación, se puede
observar que el puerto origen fue seteado a 53. Además el
comando --reason permite saber cuál fue el tipo de
respuesta que envió el host escaneado.
Como se pudo observar, en la última columna se muestra el
servicio y versión.
Tener un listado de direcciones IP
En la gráfica 3 se esquematiza lo que sucede cuando el
A veces es útil poder tener un archivo con el listado de host 192.168.1.15 comienza el escaneo con el comando
direcciones IP para hacer la auditoría. Esto es más sencillo anterior.
de hacer en Linux, con el comando:
# nmap -sL 192.168.1.5-7,50,229-230 | grep “not scanned” |
awk '{print $2}' > doc
El anterior comando guardará en el archivo de nombre doc
las siguientes direcciones IP:
# cat doc
192.168.1.5
192.168.1.6
192.168.1.7
192.168.1.50
192.168.1.229
192.168.1.230
Luego, el archivo simplemente se lo llama desde Nmap con
el argumento -iL seguido del nombre del archivo.
Evasión de Firewalls
Los puertos que son protegidos por un firewall aparecerán
como “filtered”. Para poder llegar a escanear el servicio Gráfica 3. Esquema de las primeras peticiones SYN
exacto se puede valer del manejo de los flags de TCP: enviadas con el puerto cambiado a 53.
SYN – Synchronize. Inicializa una conexión entre 2 hosts.
ACK – Acknowledge. Establece una conexión entre 2 hosts. Comando Nmap Tipo de escaneo
PSH – Push. El sistema está forwardeando data de buffer. -sT Conexión TCP
URG – Urgent. La data en los paquetes debe ser procesada
rápido. -sS SYN
FIN – Finish. No más transmisiones. -sF FIN
RST – Restet. Resetea la conexión.
-sX XMAS tree
También existen las siguientes técnicas: -sN Null
Escaneo FTP bounce, utiliza un servidor FTP para -sP Ping
poder escanear otro host de la red. -sU UDP
Escaneo Iddle, se vale de un host zombie.
Escaneo con fragmentación, la cabecera TCP se -sA ACK
fragmenta de 20 bytes a una menor cantidad por
-sW Windows
paquete.
-sR RPC
Cambiando la información de origen
-sL DNS
En casos en los cuales se necesite modificar las cabeceras -sI Idle
de origen, se puede utilizar un puerto cambiado de origen,
igualmente se puede modificar la dirección IP y la MAC. -Po No ping
-PT TCP ping
Ejemplos de uso:
3. -PS SYN ping
Conclusiones
-PI ICMP ping
-PB TCP e ICMP ping Se ha demostrado la gran utilidad que tiene Nmap para la
auditoría de redes, rápidamente se puede identificar los
-oX Salida en XML servicios y versiones que están levantados en la red, los
-T Paranoid Escaneo serial, 300 seg. hosts activos y muchas otras cosas. Pero eso viene de la
entre escaneos mano con la exploración de vulnerabilidades y su parche o
actualización a tiempo.
-T Sneaky Escaneo serial, 15 seg.
entre escaneos Autor:
Pedro Valera Lalangui es estudiante de Ingeniería de las
-T Polite Escaneo serial, .4 seg. entre
Telecomunicaciones con gusto por investigar acerca de
escaneos
seguridad informática y de redes, network programming y
-T Normal Escaneo paralelo VoIP. Puede ser contactado en:
http://blog.pucp.edu.pe/pedro
-T Aggressive Escaneo paralelo, 300 seg
timeout Bibliografía:
-T Insane Escaneo paralelo, 75 seg http://nmap.org/
timeoute http://sectools.org/web-scanners.html
CEH Official Certified Ethical Hacker Review Guide
Tabla 2. Algunos argumentos del Nmap http://www.networkuptime.com/nmap
Necesidad de auditar
Auditar como su nombre lo dice significa analizar las
diversas vulnerabilidades que pudieran presentarse para su
posterior corrección. Las actualizaciones de las versiones
de los programas varía, pero puede ser incluvise cuestión
de días que se actualice una versión ( averiguar lo de
opensssl) en caso una nueva vulnerabilidad ha sido
descubierta.
El escaneo de los servicios nos da información bastante
precisa para llevar un control de los hosts de la red sin
necesidad de tener que ir por cada equipo revisando su
configuración. Para un administrador de red esto es
fundamental, pues a nadie le gustaría que un cracker pueda
entrar a la red interna mediante la explotación de una
vulnerabilidad conocida que no se parchó a tiempo.
Nada más con entrar a estas páginas se encuentra una
relación de vulnerabilidades:
● www.milw0rm.com
● www.saintcorporation.com/cgi-bin/exploits.pl
● osvdb.org
● www.cert.org
Gráfica 4. Conocida página milw0rm
Un potencial atacante lo más problable es que busque un
exploit para penetrar dentro del sistema. Un exploit es un
programa o secuencia de comandos que se aprovecha de
un error, fallo o vulnerabilidad en la programación de un
software, por ejemplo, en la validación de un campo de
entrada, como lo puede ser el ingresar nombre y apellido.
Es así que auditar con una herramienta muy práctica como
Nmap ir actualizando los servicios que se tienen activados
es fundamental para resguardar la seguridad informática y
de la red.