domingo, 5 de diciembre de 2010

10 Tips y Tricks para NMAP

Nmap (“Network Mapper”) es una herramienta libre y con licencia open source utilizada para explorar la red o realizar auditorías de seguridad. Muchos sistemas y administradores de red la encuentran útil también para tareas tales como inventario de la red, administrar horarios de actualizaciones y monitorear tiempos de actividad de servicios o máquinas. 

1. Obtener información sobre puertos y detección del sistema operativo de un sistema o host.

nmap -sS -P0 -sV -O < objetivo >

Donde < objetivo > puede ser una dirección IP simple, un nombre de máquina o una dirección de red.
-sS exploración TCP SYN (conocida también como medio-abierta, o análisis sigiloso)
-P0 opción que nos permite desactivar los pings ICMP.
-sV opción que habilita la detección de versión del sistema operativo
-O
es una bandera que intenta identificar el sistema operativo remoto

Otras opciones:
-A habilita la detección tanto del sistema operativo como de la versión
-v al utilizar el parámetro -v dos veces obtendremos mayor detalle del análisis (verbosity).


2. Obtener una lista de servidores con un puerto específico abierto

nmap -sT -p 80 -oG – 192.168.1.* | grep open

Podemos cambiar el valor del parámetro  -p para definir el número del puerto a buscar. Busquemos en “man nmap” las diferentes formas de especificar rangos de direcciones.


3. Encontrar todas las direcciones IP activas en la red

nmap -sP 192.168.0.*

Existen muchas otras opciones. Esta es ligera y simple.

Otra opción es:
nmap -sP 192.168.0.0/24
para direcciones específicas.


4. Ping a un rango de direcciones IP

nmap -sP 192.168.1.100-254

nmap accepta una amplia variedad de notaciones de direccionamiento, múltiples objetivos/rangos, etc.


5. Encontrar direcciones IP no utilizadas en una red definida

nmap -T4 -sP 192.168.2.0/24 && egrep “00:00:00:00:00:00″ /proc/net/arp


6. Explorar en búsqueda del virus Conficker en la red LAN

nmap -PN -T4 -p139,445 -n -v –script=smb-check-vulns –script-args safe=1 192.168.0.1-254

Podemos reemplazar el rango 192.168.0.1-254 con el rango de la red que queremos verificar.


7. Explorar la red en búsqueda de AP's falsos (Rogue AP's)

nmap -A -p1-85,113,443,8080-8100 -T4 –min-hostgroup 50 –max-rtt-timeout 2000 –initial-rtt-timeout 300 –max-retries 3 –host-timeout 20m –max-scan-delay 1000 -oA wapscan 10.0.0.0/8

Esta técnica es bastante efectiva para encontrar de forma exitosa muchos puntos de acceso Wi-Fi falsos en redes muy grandes.


8. Utilizar un señuelo mientras se analizan los puertos para evitar ser detectados por el sysadmin

nmap -sS 192.168.0.10 -D 192.168.0.2

Explora en búsqueda de puertos abiertos en la máquina (192.168.0.10) mientras establece una dirección señuelo (192.168.0.2). Esto mostrará la dirección señuelo en lugar de nuestra dirección real en los registros de seguridad del objetivo. La dirección señuelo debe ser de una máquina activa. Verifiquemos los registros de seguridad del objetivo en /var/log/secure para asegurarnos que funciona.


9. Lista de registros reversos DNS para una red específica

nmap -R -sL 209.85.229.99/27 | awk ‘{if($3==”not”)print”(“$2″) no PTR”;else print$3″ is “$2}’ | grep ‘(‘ 

Este comando utiliza nmap para realizar búsquedas reversas de DNS en una red. Produce una lista de direcciones IP con el registro PTR correspondiente para una red específica. Podemos ingresar la direccione de la red en notación CDIR (Por ejemplo, /24 para una red clase C). Podemos agregar “–dns-servers x.x.x.x” después de los argumentos “-sL” si se requiere que las búsquedas se realicen para un servidor DNS específico.


10. Cuantos dispositivos Linux y Windows hay en la red?

nmap -F -O 192.168.0.1-255 | grep “Running: ” > /tmp/os; echo “$(cat /tmp/os | grep Linux | wc -l) Linux device(s)”; echo “$(cat /tmp/os | grep Windows | wc -l) Window(s) devices”

Probablemente se requieran privilegios de root para ejecutar esta exploración.
Recordemos no practicar estas técnicas en redes o máquinas que no nos pertenecen o a las cuales no tenemos autorización.