PDF de programación - Nmap

Imágen de pdf Nmap

Nmapgráfica de visualizaciones

Publicado el 12 de Octubre del 2020
629 visualizaciones desde el 12 de Octubre del 2020
741,6 KB
46 paginas
Creado hace 12a (12/12/2011)
www.securityartwork.es
www.csirtcv.gva.es
www.s2grupo.es

NMAP

José Luis Chica Uribe
Técnico en seguridad

CSIRT-cv

Índice

• Indroducción
• Descubrimiento de equipos y puertos
• Detectando la versión del SSOO y del servicio
• Detección y evasión de firewalls e IDS
• Nmap Scripting Engine
• Consejos de optimización del rendimiento 
• Contramedidas contra Nmap

2

Introducción

• Herramienta de exploración y auditoría 
• Escanea equipos y redes
• Primera versión 1997 por Fyodor
• Gratuita, abierta, GPL
• Multiplataforma
• Documentada
• Respaldada por una gran comunidad

3

Como funciona?

• Hace un barrido, enviando sondas
• En función de las respuestas, reconoce 

equipos y servicios activos.

• Aprovecha ambigüedades en protocolos 
de red para adivinar la versión del SSOO

• Necesario conocimientos básicos del 

protocolo TCP para entender y aprovechar 
al máximo el funcionamiento de Nmap 

4

TCP

SYN

PETICIÓN DEL CLIENTE PARA CONECTARSE A UN PUERTO

5

TCP

SYN

SYN/ACK

SI ESTÁ DISPONIBLE,
RESPUESTA AFIRMATIVA DEL SERVIDOR

6

TCP

SYN

SYN/ACK

ACK

CONFIRMACIÓN DEL CLIENTE,
COMPLETANDO LA CONEXIÓN

7

TCP

Un paquete TCP entra a un bar y dice:

­ Quiero una cerveza.

El camarero le contesta:

­ Una cerveza quieres?

El paquete TCP responde:

­ Si, una cerveza.

8

Un primer ejemplo

# nmap ­T4 192.168.111.222

Not shown: 995 filtered ports
PORT     STATE SERVICE
21/tcp   open  ftp
22/tcp   closed ssh
25/tcp   open  smtp
80/tcp   open  http
8080/tcp open  http­proxy

Nmap done: 1 IP address (1 host up) scanned in 12.69 
seconds

9

Explicación estado puertos

• ABIERTO: el puerto es alcanzable y hay 

alguna aplicación a la escucha.

• CERRADO: el puerto es alcanzable, pero 

no hay ninguna aplicación a la escucha.

• FILTRADO: no hay respuesta. 

Seguramente hay un firewall en medio.

10

Enumeración de equipos

Barrido con pings

# nmap ­sP 192.168.1.0/24

Si el tráfico ICMP está filtrado, se puede 
hacer barrido con ping TCP

# nmap ­sP ­PS80,21,22,25 192.168.1.0/24 

11

Otros ejemplos

­ Escaneo a puertos específicos ­p <nums>

# nmap ­T4 ­p21,22,25,80,137,8080 192.168.1.0/24

­ Escaneo rápido, 100 puertos más usuales ­F

# nmap ­T4 ­F 192.168.1.0/24 

12

Detección del SSOO

# nmap ­T4 ­O 10.10.10.30

Not shown: 997 closed ports
PORT      STATE SERVICE
135/tcp   open  msrpc
139/tcp   open  netbios­ssn
445/tcp   open  microsoft­ds

Running: Microsoft Windows Vista|2008|7
OS details: Microsoft Windows Vista SP0 ­ SP2, Server 2008, 
or Windows 7 Ultimate

 

13

Detección de versión

# nmap ­T4 ­sV 10.10.10.30

Not shown: 998 closed ports
PORT     STATE SERVICE VERSION
80/tcp  open   http    Apache httpd 2.2.16 (Debian)
3333/tcp open  ssh     OpenSSH 5.5p1 Debian 
6+squeeze1 (protocol 2.0)

 

14

Todo en uno

# nmap ­T4 ­A 10.10.10.30

Modificador ­A 

– Detección de versión ­sV
– Detección de SSOO ­O
– Uso de scripts ­sC
– Uso de traceroute ­­traceroute

 

15

Escaneo a UDP

# nmap ­T4 ­sU ­F 10.10.10.20

Not shown: 997 closed ports
PORT      STATE         SERVICE
67/udp    open|filtered dhcps
68/udp    open|filtered dhcpc
135/udp   open|filtered msrpc

- En UDP no podemos determinar si un puerto 
está abierto o filtrado (por eso tarda tanto)
­ Interesante usar ­sV para reconocer servicio 
y ­F (hay pocos puertos comunes en UDP)

16

AUDITANDO FIREWALLS

• Nmap como herramienta de análisis de 

configuración de firewalls

• Detección de la política por defecto.

– DEFAULT ACCEPT
– DEFAULT DROP

• Detección del tipo de firewall

– STATELESS
– STATEFULL

• Evasión de firewalls e IDS

17

AUDITANDO FIREWALLS

POLITICA POR DEFECTO

Basado en el estado de los puertos “no
mostrados” en un escaneo

– Cerrados: accept by default
– Filtrados: deny by default

18

AUDITANDO FIREWALLS

FIREWALL ACCEPT POR DEFECTO

#nmap ­T4 ejemplo.com
Not shown: 995 closed ports
    
PORT STATE SERVICE
22/tcp open ssh
80/tcp open http
135/tcp filtered msrpc
139/tcp filtered netbios­ssn
445/tcp filtered microsoft­ds

Respuesta activa RST de 995 puertos

19

AUDITANDO FIREWALLS

FIREWALL DROP POR DEFECTO

#nmap ­T4 asdf.com
Not shown: 996 filtered ports

PORT STATE SERVICE
22/tcp open ssh
25/tcp closed smtp
80/tcp open http
113/tcp closed auth 

Sin respuesta de 996 puertos

20

AUDITANDO FIREWALLS

DETECCIÓN DEL TIPO DE FIREWALL
• Statefull: capaz de controlar las sesiones TCP
• Se lanza Nmap normal (SYN scan)
– Se lanza otro escaneo “exótico”

• ACK scan
• Xmas scan
• FIN scan

• Si el segundo scan no muestra resultado, es un 

firewall statefull

21

AUDITANDO FIREWALLS

FIREWALL STATEFULL

#nmap ­sA ­T4 asdf.com
Not shown: 1000 filtered ports   

Firewall detecta paquetes ACK sin establecer 
conexión previa y los dropea

22

AUDITANDO FIREWALLS

FIREWALL SIN ESTADO

#nmap ­sA ­T4 asdf.com
Not shown: 996 filtered ports    

PORT STATE SERVICE
22/tcp unfiltered ssh
25/tcp unfiltered smtp
80/tcp unfiltered http
113/tcp unfiltered auth

Sondas ACK han burlado el firewall

23

EVASIÓN DE FIREWALLS

Manipulación del puerto de origen

• Puertos que el equipo considera de “confianza”
• Permiten todo el tráfico entrante
• Aún teniendo reglas que lo bloqueen implícitamente!!!
Ej:
• W2K y XP permitía todo tráfico TCP y UDP desde el 

puerto 88 (Kerberos)

• OS X TIGER permitía tráfico desde el puerto 67 

(DHCP) y 5353 (Zeroconf)

24

EVASIÓN DE FIREWALLS

Escaneo IPv6

• Servicios que escuchan IPv6
• No se tienen en cuenta
• Electrónica que aún no soporta reglas de 

filtrado IPv6

• Posibilidad de llegar a servicios que están 

filtrados solo en IPv4

25

EVASIÓN DE FIREWALLS

#nmap -T4 asdf.com
PORT STATE SERVICE
22/tcp open ssh
25/tcp filtered smtp
80/tcp open http
113/tcp closed auth

#nmap -T4 -6 asdf.com
PORT STATE SERVICE
22/tcp open ssh
25/tcp open smtp
80/tcp open http
113/tcp closed auth

26

EVASIÓN DE FIREWALLS

Fragmentación IP

• Firewalls que no tratan paquetes 

fragmentados

• Podrían dejarlos pasar todos los 

fragmentos (o ignorarlos)

• Modificador ­f <numbytes>
• Se puede usar también –mtu

27

EVASIÓN DE IDS

BARRIDOS LEEEEENTOS
• Ralentizar los envíos de sondas
• Evitar detección por reglas de X paquetes en Y 

segundos. 

• Modificador T0: envío de sonda por cada 300sg 

­_­zZzZzz 

• Modificador T1: envío de sonda por cada 15sg

28

NMAP SCRIPTING ENGINE

• Herramienta muy potente y flexible
• Permite al usuario escribir scripts para 

automatizar tareas

• Basado en lenguaje LUA
• Permite:

– Detección de vulnerabilidades
– Explotación de vulnerabilidades
– Etcetcetc........

29

NMAP SCRIPTING ENGINE

# nmap ­sC ­p139 ­T4 1.2.3.4

Starting Nmap ( http://nmap.org )
Nmap scan report for flog (1.2.3.4)
PORT     STATE SERVICE
139/tcp  open  netbios­ssn

Host script results:
| smb­os­discovery: Unix
| LAN Manager: Samba 3.0.31­0.fc8
|_Name: WORKGROUP

Nmap done: 1 IP address scanned in 0.33 seconds

30

NMAP SCRIPTING ENGINE

• Actualmente:
– 284 scripts
– 74 librerias

• Mantenidos activamente por comunidad 

en lista de correo nmap­dev

• Categorias:

– Bruteforce, version, fuzzing, DoS
http://nmap.org/nsedoc/

31

NMAP SCRIPTING ENGINE

• uso de un script especifico
             ­­script <nombre/categoria>
• si necesita algún argumento
             ­­script­args 

32

OPTIMIZACIÓN NMAP

• Capaz de escanear redes MUY extensas y 

heterogeneas

• No es lo mismo escanear una red lejana 

que una LAN

• Ni con firewalls que sin ellos
• Los tiempos de respuesta son diferentes 

33

OPTIMIZACIÓN NMAP

•  Necesidad de utilizar configuración personalizada
• Plantillas de tiempo: ­T0...T5

– T0,T1 MUY lento. Evasión de IDS
– T2,T3, lento. Redes muy saturadas o inferiores a 

modems 56Kb

– T4,T5 rápido, apaña para redes WAN o LAN

• (Por defecto T3) 

34

OPTIMIZACIÓN NMAP

Pero a veces no es suficiente
–Perfiles demasiado genéricos
–Se puede exprimir más!
–Uso de modificadores para 
configuración avanzada de tiempo 

35

OPTIMIZACIÓN NMAP

­­min­hostgroup, ­­max­hostgroup 

­ Agrupa las IPs y las escanea en paralelo
­ Interesante usarlo en escaneos UDP o con 
pocos puertos por host 

36

OPTIMIZACIÓN NMAP

­­max­rtt­timeout,­­initial­rtt­timeout 

­ Ajusta el tiempo de rtt (round trip time)
­ Se puede aproximar con ping/hping3

5 packets transmitted, 5 received, time 4005ms
rtt min/avg/max/mdev=210.736/215.089/221.475/4.063

37

OPTIMIZACIÓN NMAP

­­min­parallelism, ­­max­paralleism 

­ Número de sondas pendientes de respuesta 
que es capaz de manejar.
­ Nmap calcula este valor de forma dinámica
­  Si se están perdiendo paquetes, ralentiza el 
envío de sondas y reduce el número de 
respuestas pendientes, para no perder precisión

38

OPTIMIZACIÓN NMAP



TABLA DE TIEMPOS 

T3
100

T2
100

T0
min-rtt-timeout 100
max-rtt-timeout 300,000 15,000 10,000 10,000 1,250
Initialrtt-timeout 300,000 15,000 1,000
max-retries
host-timeout
min-parallelism
max-parallelism 1
min-hostgroup
max-hostgroup

1,000
10
10
0
0
Dinámico
1
Dinámico
Dinámico

T4
100

500
6
0

Dinámico

T5
50
300
250
2
900,000

T1
100

10
0

1

10
0

39

OPTIMIZACIÓN NMAP

­ nmap ­T4 1.2.3.0/24

# Nmap done at Tue Nov 29 14:45:36 2011 ­­ 256 IP 
addresses (229 hosts up) scanned in 3475.76 seconds

­ nmap ­T4 ­­initial­rtt­timeout 250 ­­max­rtt­timeout 
500 ­­max­retries 2 ­­min­parallelism 70  1.2.3.0/24

# Nmap done at Wed Nov 30 11:30:57 2011 ­­ 256 IP 
addresses (229 hosts up) scanned in 1052.46 seconds

40

OPTIMIZACIÓN NMAP

SCAN MLP EDITION

­ nmap ­T4 217.124.152.0/22

# Nmap done at Wed Dec  7 12:50:22 2011 ­­ 1024 IP 
addresses (339 hosts up) scanned in 2227.96 seconds

­ nmap ­T4 ­­initial­rtt­timeout 2 ­­max­rtt­timeout 5 
­­max­retries 2 ­­min­parallelism 70 217.124.152.0/22

# Nmap done at Wed Dec  7 13:33:08 2011 ­­ 1024 IP 
addresses (395 hosts up) scanned in 875.07 second

41

DEFENSA CONTRA NMAP

UN BUEN ATAQUE!

• Escanea tu red 
• Cierra puertos innecesarios
• Busca vulnerabilidades y arréglalas!
• Interesante programar escaneos periódicos 

y comparar resultados con Ndiff

42

DEFENSA
  • Links de descarga
http://lwp-l.com/pdf18354

Comentarios de: Nmap (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad