Usando NMAP con Scripts

Published:

Seguimos avanzando en el estudio de NMAP, esta vez haciendo uso de Scripts, muchos de los cuales nos pueden ayudar a detectar vulnerabilidades u obtener información para comprometer un sistema, en esta oportunidad será algo más intermedio-avanzado.

1- Escanear vulnerabilidades con scripts

En esta ocasión vamos a valernos de scripts para nmap, que vienen incluidos y hasta podemos descargar bastantes más si sabemos buscar. Ahora vamos a ver como aplicar un script que verifique si hay vulnerabilidades en una determinada IP.

nmap -Pn --script vuln IP

Como habrán visto, el script se llama vuln que nos ayuda a detectar los bugs más conocidos. Veamos algunos de los más conocidos junto con su explicación:

  • Auth: ejecuta todos sus scripts disponibles para autenticación
  • Default: ejecuta los scripts básicos por defecto de la herramienta
  • Discovery: recupera información del target o víctima
  • External: script para utilizar recursos externos
  • Intrusive: utiliza scripts que son considerados intrusivos para la víctima o target
  • Malware: revisa si hay conexiones abiertas por códigos maliciosos o backdoors (puertas traseras)
  • Safe: ejecuta scripts que no son intrusivos
  • Vuln: descubre las vulnerabilidades más conocidas
  • All: ejecuta absolutamente todos los scripts con extensión NSE disponibles

Así que la estructura para usar scripts sería

nmap --script nombre_script IP

Si queremos lanzar un escaneo con varias categorías vamos a hacer

nmap --script categoria1,categoria2,categoria3 IP

El ejemplo sería

nmap --script default,broadcast IP_victima

2- ACTUALIZACION

Para actualizar la base de datos de scripts podemos lanzar el comando updatedb

nmap --script-updatedb

3- UBICACION

Donde se ubican los scripts por defecto: en /usr/shares/nmap/scripts/ y los mismos tiene la extensión .nse.

4- Traceroute Geolocalización

Realicemos un traceroute a un dominio o dirección IP de destino y además trazar los datos de geolocalización para cada salto en el camino. Hace mucho más fácil la correlación de los nombres de enrutadores en su ruta con las direcciones inversas de DNS .

nmap --traceroute --script traceroute-geolocation.nse -p 80 dominio.com

5- Extraer los datos EXIF ​​de archivos

Los archivos EXIF (archivo de imagen intercambiable), contienen información almacenada en los que son tipo JPEG, PNG, PDF y muchos más tipos de archivos. Estos datos nos pueden brindar información interesante tales como marcas de tiempo, información del dispositivo y coordenadas de GPS.

Vamos combinar nmap con un script http-exif-spider que se puede usar para extraer datos EXIF ​de los archivos que encontremos en la victima. Lamentablemente este script no es útil contra sitios como Instagram, Twitter y Facebook dado que eliminan la metadata. Veamos el ejemplo

nmap -p80,443 --script http-exif-spider IP_VICTIMA

Al intentar extraer datos EXIF ​​de los archivos, Nmap puede generar un mensaje de error «Current http cache size exceeds max size». Esto se debe a que Nmap no puede procesar el archivo porque es demasiado grande y excede el valor máximo de tamaño de archivo predeterminado. Para arreglar esto usaremos un parámetro adicional http.max-cache-size y aumentaremos el valor según sea necesario de la manera:

 nmap -p80,443 --script http-exif-spider --script-args="http.max-cache-size=99999999" IP_victima

6- Detectar Huellas Digitales (fingerprint) y saber que Firewall se usa

El script Nmap http-waf-fingerprint está diseñado para ayudarnos a conocer el firewall de la aplicación web exacta en uso en un servidor web objetivo. También intentará identificar su tipo y número de versión exacta.

nmap -p80,443 --script http-waf-fingerprint IP_victima

7- Enumera los directorios utilizados por las aplicaciones y servidores web populares

Realizar un ataque de fuerza bruta para descubrir aplicaciones web en uso. Prueba más de 2000 rutas en el servidor. El funcionamiento de este script es similar la herramienta NIKTO.

nmap ---script  http-enum IP_victima

8- Encontrar los subdominios

nmap ---script  dns-brute IP_victima

9- Detectando malware

Veamos como detectar si un host remoto posee algún tipo de malware instalado

nmap -sV --script=http-malware-host IP_victima

O también podemos usar un script de google

nmap -p80 --script http-google-malware IP_victima
- Advertisement -
Jorge
Jorgehttps://nksistemas.com
Soy Jorge, Sr Sysadmin Linux/DevOps/SRE y creador de NKSistemas.com Trabajo con plataformas: Linux, Windows, AWS, GCP, VMware, Helm, kubernetes, Docker, etc.

Related articles