Para comprender, los diferentes tipos de escaneo de puertos, primero debemos saber como se establece una conexión TCP por medio del “three Way Handshake”
Three Way Handshake
En la ilustración se observa lo siguiente:
- El cliente (Computer A) inicializa la conexión con el servidor (Computar B) enviando solamente un paquete con la bandera syn.
- El servidor responde con un paquete con el syn y una bandera ack.
- Como paso final el cliente responde al servidor con un solo paquete ack.
Si estos tres pasos se han completado sin complicaciones,entonces una conexión TCP ha sido establecida entre el cliente y el servidor
Ahora procedamos a describir los tipos de escaneos:
Stealth Scan/half-open/Escaneo Sigiloso:
1.-El cliente envía un único paquete SYN al servidor en el puerto que desea escanear
2.-
Abierto:
Si el puerto está abierto entonces el servidor responde con un paquete SYN / ACK.
Cerrado:
Si el servidor responde con un paquete RST, el puerto remoto se encuentra «cerrado»
3.-El cliente envía paquetes RST para cerrar, por lo que nunca se establecido una conexión.
Xmas Scan/Escaneo Xmas
Xmas Dirigido a un puerto abierto
Xmas Dirigido a un puerto cerrado
XMAS scan sólo funciona en sistemas operativos TCP / IP basados de acuerdo con RFC 793, Xmas Scan no va a funcionar en contra de cualquier versión actual de Microsoft Windows, las exploraciones dirigidas a cualquier sistema de Microsoft se mostraran todos los puertos en el host como cerrado.
FIN Scan/ Escaneo FIN
FIN Scan Dirigido a un puerto abierto
FIN Scan Dirigido a un puerto cerrado
FIN scan sólo funciona en sistemas operativos TCP / IP basados de acuerdo con RFC 793, no funciona en contra de cualquier versión actual de Microsoft Windows, Las exploraciones dirigidas a cualquier sistema de Microsoft haciendo uso de FIN Scan tendrán como resultado todos los puertos como cerrado.
NULL Scan/ Escaneo NULO
NULL Scan Dirigido a un puerto abierto
NULL Scan Dirigido a un puerto cerrado
NULL Scan sólo funciona en sistemas operativos TCP / IP basados de acuerdo con RFC 793, no funciona en contra de cualquier versión actual de Microsoft Windows, Las exploraciones dirigidas a cualquier sistema de Microsoft haciendo uso de NULL Scan tendrán como resultado todos los puertos como cerrado.
IDLE Scan/Escaneo IDLE
Este tipo de escaneo se puede resumir en 3 pasos:
Paso 1:
Se elije un «Zombie» y averiguamos cual es su numero IPID (ejemplo: 31337)
Paso 2:
Enviamos paquetes falsificados del «Zombie» al «blanco»
Paso 3:
-Si el IPID aumenta en 2 su valor inicial- Abierto (ejemplo: 31339)
-Si el IPID aumenta en 1 su valor inicial- Cerrado (ejemplo: 31338)
Tiene como principal ventaja que el escaneo IDLE no revela la IP real , si no la IP de un Zombie.
Fragmentation scanning/ Escaneo de fragmentación
En lugar de simplemente enviar el paquete del escaneo, lo rompe en un par de
pequeños fragmentos IP. Al dividir la cabecera TCP en varios paquetes hace más difícil a los filtros detectar que es lo que se está haciendo. La opción “–f” indica que se va a utilizar pequeños paquetes fragmentados de SYN o FIN.
Estos son algunos de los escaneos de red/puertos que podemos realizar con la herramienta NMAP. Y para los que quieren ir al grano , aquí un pequeño resumen.
RESUMEN:
Stealth Scan/half-open/Escaneo Sigiloso:
-Envía un único paquete SYN. (cliente)
*SYN/ACK – Abierto (Servidor)
*RST – Cerrado (Servidor)
-Envia RST (cliente)
Xmas Scan/Escaneo Xmas
-Envia FIN/URG/PSH (Cliente)
*NO RESPONSE – Abierto (Servidor)
*RST/ACK – Cerrado (Servidor)
-Solo funciona para los SO basados en TCP/IP implementacion RFC 793
Xmas dirigidas a Windows se muestran todos los puertos en el host como cerrado.
FIN Scan/ Escaneo FIN
-Envia FIN (Cliente)
*NO RESPONSE – Abierto (Servidor)
*RST/ACK – Cerrado (Servidor)
-Solo funciona para los SO basados en TCP/IP implementacion RFC 793
FIN Scan dirigidas a Windows se muestran todos los puertos en el host como cerrado.
NULL Scan/Escaneo NULL
-Envia NO FLAGS SET (Cliente)
*NO RESPONSE – Abierto (Servidor)
*RST/ACK – Cerrado (Servidor)
-Solo funciona para los SO basados en TCP/IP implementacion RFC 793
NULL Scan dirigidas a Windows se muestran todos los puertos en el host como cerrado.
IDLE Scan/Escaneo IDLE
-Se elije un «Zombie» y averiguamos cual es su numero IPID (ejemplo: 31337)
-Enviamos paquetes falsificados del «Zombie» al «blanco»
-Si el IPID aumenta en 2 su valor inicial- Abierto (ejemplo: 31339)
-Si el IPID aumenta en 1 su valor inicial- Cerrado (ejemplo: 31338)
ICMP echo scanning
Esto no es realmente de escaneo de puertos, ya que ICMP no tiene una abstracción de puerto.
Pero a veces es útil para determinar qué hosts en una red por hacer ping a todos.
nmap -P cert.org/24 152.148.0.0/16
Update 07/Sep/2011:
Se agrego el documento original en pdf para quien lo quiera descargar.