Académique Documents
Professionnel Documents
Culture Documents
Nmap se usa generalmente desde la linea de comandos, aunque tambin est disponible Zenmap, que es una interfaz grfica para Nmap.
noten el smbolo "#" delante de nmap, esto significa que se debe ejecutar como root para poder usar ciertas funciones como el OS fingerprinting.
Resumen de Opciones
ESPECIFICACIN DE OBJETIVO: Se pueden indicar nombres de sistema, direcciones IP, redes, etc. Ej: scanme.nmap.org, microsoft.com/24, 192.168.0.1; 10.0.0-255.1-254 -iL <archivo_entrada> Lee una lista de sistemas/redes del archivo. -iR <nmero de sistemas> : Selecciona objetivos al azar --exclude <sist1[,sist2][,sist3],...> Excluye ciertos sistemas o redes --excludefile <fichero_exclusin> Excluye los sistemas indicados en el fichero
DESCUBRIMIENTO DE HOSTS: -sL Sondeo de lista - Simplemente lista los objetivos a analizar -sP: Sondeo Ping - Slo determina si el objetivo est vivo -P0: Asume que todos los objetivos estn vivos -PS/PA/PU [listadepuertos]: Anlisis TCP SYN, ACK o UDP de los puertos indicados -PE/PP/PM: Solicita un anlisis ICMP del tipo echo, marca de fecha y mscara de red -n/-R: No hacer resolucin DNS / Siempre resolver [por omisin: a veces] --dns-servers <serv1[,serv2],...>: Especificar servidores DNS especficos --system-dns: Utilizar la resolucin del sistema operativo
TCNICAS DE ANLISIS: -sS/sT/sA/sW/sM: Anlisis TCP SYN/Connect()/ACK/Window/Maimon -sN/sF/sX: Anlisis TCP Null, FIN, y Xmas --scanflags <indicador>: Personalizar los indicadores TCP a utilizar -sI <sistema zombi[:puerto_sonda]>: Anlisis pasivo (Idle, N. del T.) -sO: Anlisis de protocolo IP -b <servidor ftp rebote>: Anlisis por rebote FTP
ESPECIFICACIN DE PUERTOS Y ORDEN DE ANLISIS: -p <rango de puertos>: Slo sondear los puertos indicados Ej: -p22; -p1-65535; -p U:53,111,137,T:21-25,80,139,8080 -F: Rpido - Analizar slo los puertos listados en el archivo nmap-services -r: Analizar los puertos secuencialmente, no al azar.
DETECCIN DE SERVICIO/VERSIN:
-sV: Sondear puertos abiertos, para obtener informacin de servicio/versin --version-intensity <nivel>: Fijar de 0 (ligero) a 9 (probar todas las sondas) --version-light: Limitar a las sondas ms probables (intensidad 2) --version-all: Utilizar todas las sondas (intensidad 9) --version-trace: Presentar actividad detallada del anlisis (para depurar)
DETECCIN DE SISTEMA OPERATIVO -O: Activar la deteccin de sistema operativo (SO) --osscan-limit: Limitar la deteccin de SO a objetivos prometedores --osscan-guess: Adivinar el SO de la forma ms agresiva
TEMPORIZADO Y RENDIMIENTO: -T[0-5]: Seleccionar plantilla de temporizado (los nmeros altos son ms rpidos) --min-hostgroup/max-hostgroup <tamao>: Paralelizar los sondeos --min-parallelism/max-parallelism <msegs>: Paralelizacin de sondeos --min-rtt-timeout/max-rtt-timeout/initial-rtt-timeout <msegs>: Indica el tiempo de ida y vuelta de la sonda --max-retries <reintentos>: Limita el nmero mximo de retransmisiones de las sondas de anlisis de puertos --host-timeout <msegs>: Abandonar un objetivo pasado este tiempo --scan-delay/--max-scan-delay <msegs>: Ajusta el retraso entre sondas
EVASIN Y FALSIFICACIN PARA CORTAFUEGOS/IDS: (no hace magia, pero es muy util) -f; --mtu <valor>: fragmentar paquetes (opc. con el MTU indicado) -D <seuelo1,seuelo2[,ME],...>: Disimular el anlisis con seuelos
N. del T.: ME es YO mismo. -S <Direccin_IP>: Falsificar la direccin IP origen -e <interfaz>: Utilizar la interfaz indicada -g/--source-port <numpuerto>: Utilizar el nmero de puerto dado --data-length <num>: Agregar datos al azar a los paquetes enviados --ttl <val>: Fijar el valor del campo time-to-live (TTL) de IP --spoof-mac <direccin mac/prefijo/nombre de fabricante>: Falsificar la direccin MAC --badsum: Enviar paquetes con una suma de comprobacin TCP/UDP falsa
SALIDA: -oN/-oX/-oS/-oG <file>: Guardar el sondeo en formato normal, XML, s|<rIpt kIddi3 (n3n3b4n4n4), y Grepeable (para usar con grep(1), N. del T.), respectivamente, al archivo indicado. -oA <nombre_base>: Guardar en los tres formatos principales al mismo tiempo -v: Aumentar el nivel de mensajes detallados (-vv para aumentar el efecto) -d[nivel]: Fijar o incrementar el nivel de depuracin (Tiene sentido hasta 9) --packet-trace: Mostrar todos los paquetes enviados y recibidos --iflist: Mostrar interfaces y rutas (para depurar) --append-output: Agregar, en vez de sobreescribir, a los archivos indicados con -o. --resume <archivo>: Retomar un anlisis abortado/detenido --stylesheet <ruta/URL>: Convertir la salida XML a HTML segn la hoja de estilo XSL indicada --webxml: Referenciar a la hoja de estilo de Insecure.Org para tener un XML ms portable --no_stylesheet: No asociar la salida XML con ninguna hoja de estilos XSL
MISCELNEO:
-6: Habilitar anlisis IPv6 -A: Habilita la deteccin de SO y de versin --datadir <nombreDir>: Indicar la ubicacin de los archivos de datos Nmap personalizados. --send-eth/--send-ip: Enviar paquetes utilizando tramas Ethernet o paquetes IP "crudos" --privileged: Asumir que el usuario tiene todos los privilegios -V: Muestra el nmero de versin -h: Muestra esta pgina resumen de la ayuda.
Ejemplos:
Escaneo Convencional
Esto escanear las 255 direcciones de la red 192.168.1.0 Envia un ping (ICMP echo request) y un paquete TCP ACK al puerto 80. Si el destino contesta con otro ping o con un paquete TCP RST significa que est operativo.
slo el ping:
slo el paquete ACK dirigindolo a un puerto determinado, p. ej. el 20 nmap -PA20 192.168.1.0/24
Detectar el SO y las versiones de software que estan escuchando en los puertos especificados nmap -sV -O -p 22,25,3306 192.168.1.100
Detectar el SO y las versiones de los servicios corriendo, pero con escaneo sigiloso:
Listar servidores con un puerto especifico abierto nmap -sT -p 80 -oG 192.168.1.* | grep open
Encontrar IPs no usadas en una subnet nmap -T4 -sP 192.168.2.0/24 && egrep 00:00:00:00:00:00 /proc/net/arp
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
usar direccines IP como carnada mientras se escanea para no ser detectado (la victima creer que esta siendo escaneada por varias mquinas) nmap -sS 192.168.1.100 -D 192.168.1.55,192.168.1.54,192.168.1.34
(lo que est despus de la -D son las IP's a usar como carnada, que por cierto, deben estar activas)
Suplantar una direccin IP durante el escaneo: nmap -e <interfaz> -S <IP a suplantar> -PN <IP objetivo>
Listar los registros DNS inversos de una subred nmap -R -sL 209.85.229.99/27 | awk {if($3==not)print($2) no PTR;else print$3 is $2} | grep (
Este comando hace un reverse DNS lookup en una subred, se crea una lista con las direcciones IP de los registros PTR en la subred indicada. Se puede insertar la subred en notacin CDIR (ejemplo: /24 para la Clase C). Puedes agregar -dns-servers x.x.x.x despus del parmetro -sL si quieres realizar el listado sobre un servidor DNS especifico.
Se puede usar Nmap junto con Metasploit framework para realizar un ataque automatizado conocido como autopwn:
=[ metasploit v3.7.0-release [core:3.7 api:1.0] + -- --=[ 684 exploits - 355 auxiliary + -- --=[ 217 payloads - 27 encoders - 8 nops
msf > db_create [*] Creating a new database instance... [*] Successfully connected to the database [*] File: /home/jorgepastor66/.msf3/sqlite3.db msf > db_connect [*] Successfully connected to the database [*] File: /home/jorgepastor66/.msf3/sqlite3.db msf > db_nmap -p 445 -sS 10.12.1-2.0-255
con esto guarda los resultados en una base de datos y luego se usa el siguiente comando:
msf> db_autopwn -p -e -b
entonces se iniciar la funcin autopwn, que lanza todos los exploits disponibles a los puertos de los hosts escaneados en nmap hasta que consigue vulnerarlos.
Ya por ultimo aqu unos codigos de uso rapido 1. Obtener informacin de un host remoto y deteccin del SO nmap -sS -P0 -sV -O <direccin>
-sS=escaneo TCP SYN (o escaneo sigiloso) -P0=no se envian pings ICMP -sV=detecta las versiones -O=se intenta identificar el Sistema Operativo Otras opciones: -A=habilita OS fingerprinting y deteccin de versin -v=usar dos veces -v para obtener mas detalles
2. Listar servidores con un puerto especifico abierto nmap -sT -p 80 -oG 192.168.1.* | grep open
Nmap acepta una gran variedad de rangos, notacin de direcciones, objetivos mltiples, etc.
5.Encontrar IPs no usadas en una subnet nmap -T4 -sP 192.168.2.0/24 && egrep 00:00:00:00:00:00 /proc/net/arp
6. Escanear en busca del virus conficker nmap -PN -T4 -p139,445 -n -v script=smb-check-vulns script-args safe=1 192.168.0.1-254
7. Escanear red en busca de AP falsos 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
8. Crear un seuelo durante el escaneo de puertos para evitar ser detectado sudo nmap -sS 192.168.0.10 -D 192.168.0.2
Escanea los puertos del nodo 192.168.1.10 mientras spoofea la IP 192.168.0.2 como nodo atacante (esta IP debe estar activa) asi parecera que el escaneo se ejecuta desde la IP 192.168.0.2 (la ip spoofeada). Comprobar los logs en /var/log/secure para comprobar si ha funcionado corectamente.
9. Listar los registros DNS inversos de una subred nmap -R -sL 209.85.229.99/27 | awk {if($3==not)print($2) no PTR;else print$3 is $2} | grep (
Este comando hace un reverse DNS lookup en una subred, se crea una lista con las direcciones IP de los registros PTR en la subred indicada. Se puede insertar la subred en notacin CDIR (ejemplo: /24 para la Clase C). Puedes agregar -dns-servers x.x.x.x despus del parmetro -sL si quieres realizar el listado sobre un servidor DNS especifico.
10. Cuantos nodos con Linux y cuantos con Windows hay en una red sudo 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
nmap --script=smb-enum-users para ver los usuarios que estan creados en la pc victima o nmap --scrip=smb-enum-shares para ver saber que carpetas comparten nmap --script=vuln para checar vulnerabilidades (muy parecido al --script=smb-check-vulns)
Este manual es una recopilacion de muchos lugares sobre este tema y otros por mi