Bienvenidos, en este artículo veremos NMAP Guía Definitiva. Comparte este articulo y síguenos para recibir más guías y cursos.

Para saber más comente a continuación, respondemos todos y cada uno de los comentarios.

Índice

¿Te gustaría enterarte de cuando lanzamos descuentos y nuevos cursos?

Como hacker ético, NMAP se convierte en tu aliado estratégico. Este artículo te llevará a través de sus funcionalidades, tácticas avanzadas y te proporcionará la destreza necesaria para potenciar tu habilidad en la evaluación de redes y sistemas.

La única desventaja de una herramienta tan robusta y poderosa como Nmap es recordar tantos comandos. Incluso muchos profesionales experimentados de la industria no logran aprovechar Nmap al máximo simplemente porque mantener un registro de todas sus banderas puede resultar todo un desafío.

Hemos compilado y organizado esta hoja de trucos de Nmap para ayudarlo a dominar lo que posiblemente sea la herramienta más útil en el arsenal de cualquier evaluador de penetración. Ya sea que lo use para memorizar las opciones de Nmap, como referencia rápida para tener cerca o como hoja de estudio para su examen CEH/Pentest+, estamos seguros de que lo ayudará a convertirse en un profesional de Nmap.

Introducción a NMAP

Cuando se trata de hackear, el conocimiento es poder. Cuanto más conocimiento tenga sobre un sistema o red de destino, más opciones tendrá disponibles. Esto hace que sea imperativo que se lleve a cabo una enumeración adecuada antes de realizar cualquier intento de explotación.

Digamos que nos han dado una IP para realizar una auditoría de seguridad. Antes de hacer cualquier otra cosa, necesitamos establecer qué servicios se ejecutan en los objetivos. Tal vez uno de ellos esté ejecutando un servidor web y otro esté actuando como un controlador de dominio de Active Directory de Windows. La primera etapa para establecer este “mapa” es algo llamado escaneo de puertos. Cuando una computadora ejecuta un servicio de red, abre un “puerto” de red para recibir la conexión. 

Los puertos son necesarios para realizar múltiples solicitudes de red o tener múltiples servicios disponibles. Cuando carga varias páginas web a la vez en un navegador web, el programa debe tener alguna forma de determinar qué pestaña está cargando qué página web. Esto se hace estableciendo conexiones a los servidores web remotos usando diferentes puertos en su máquina local. 

Cada computadora tiene un total de 65535 puertos disponibles; sin embargo, muchos de estos están registrados como puertos estándar. Casi siempre se puede encontrar un servicio web HTTP en el puerto 80 del servidor. Se puede encontrar un servicio web HTTPS en el puerto 443.

Los puertos

Los puertos son la solución a esto. Las conexiones de red se realizan entre dos puertos: un puerto abierto que escucha en el servidor y un puerto seleccionado al azar en su propia computadora. Por ejemplo, cuando se conecta a una página web, su computadora puede abrir el puerto 49534 para conectarse al puerto 443 del servidor. tal vez desee que su servidor web ejecute las versiones HTTP y HTTPS del sitio), entonces necesita alguna forma de dirigir el tráfico al servicio apropiado. 

Del mismo modo, si desea que un servidor pueda ejecutar más de un servicio (por ejemplo, tal vez desee que su servidor web ejecute las versiones HTTP y HTTPS del sitio), entonces necesita alguna forma de dirigir el tráfico al servicio apropiado.

Como en el ejemplo anterior, el diagrama muestra lo que sucede cuando te conectas a varios sitios web al mismo tiempo. Su computadora abre un puerto diferente con un número alto (al azar), que utiliza para todas sus comunicaciones con el servidor remoto.

Windows NETBIOS se puede encontrar en el puerto 139 y SMB se puede encontrar en el puerto 445. Es importante tener en cuenta; especialmente en una configuración CTF, no es raro que incluso estos puertos estándar se alteren, lo que hace que sea aún más imperativo que realicemos la enumeración adecuada en el objetivo.

Escaneando con Nmap

Si no sabemos cuál de estos puertos tiene abierto un servidor, entonces no tenemos esperanza de atacar con éxito el objetivo; por lo tanto, es crucial que comencemos cualquier ataque con un escaneo de puertos. Esto se puede lograr de varias maneras, generalmente usando una herramienta llamada nmap. 

Nmap se puede usar para realizar muchos tipos diferentes de escaneo de puertos; la teoría básica es esta: nmap se conectará a cada puerto del objetivo por turno. Dependiendo de cómo responda el puerto, se puede determinar si está abierto, cerrado o filtrado (generalmente por un firewall). Una vez que sabemos qué puertos están abiertos, podemos enumerar qué servicios se están ejecutando en cada puerto, ya sea manualmente o, más comúnmente, usando nmap.

Nmap La respuesta corta es que actualmente es el estándar de la industria por una razón: ninguna otra herramienta de escaneo de puertos se acerca a igualar su funcionalidad (aunque algunos recién llegados ahora la igualan en velocidad). Es una herramienta extremadamente poderosa, aún más poderosa gracias a su motor de secuencias de comandos que se puede usar para buscar vulnerabilidades y, en algunos casos, ¡incluso realizar la explotación directamente!

Conmutadores Nmap

Como la mayoría de las herramientas de pentesting, nmap se ejecuta desde la terminal. Hay versiones disponibles tanto para Windows como para Linux. Para esta sala, asumiremos que está utilizando Linux; sin embargo, los interruptores deben ser idénticos. Nmap está instalado de forma predeterminada tanto en Kali Linux como en TryHackMe Attack Box.

Se puede acceder a Nmap escribiendo nmap en la línea de comando del terminal, seguido de algunos de los “interruptores” (argumentos de comando que le dicen a un programa que haga cosas diferentes) que cubriremos a continuación.

Todo lo que necesitará para esto es el menú de ayuda para nmap (se accede con nmap -h) y/o la página de manual de nmap (se accede con man nmap). Para cada respuesta, incluya todas las partes del interruptor a menos que se especifique lo contrario. Esto incluye el guion (-) al principio.

Visión general

Al escanear puertos con Nmap, hay tres tipos básicos de escaneo. Estos son:

  • Exploraciones de conexión TCP ( -sT)
  • SYN Escaneos “medio abiertos” ( -sS)
  • Escaneos UDP ( -sU)

Además, hay varios tipos de escaneo de puertos menos comunes. Estos son:

  • Exploraciones nulas de TCP ( -sN)
  • Escaneos TCP FIN ( -sF)
  • Escaneos de Navidad TCP ( -sX)

La mayoría de estos (con la excepción de los escaneos UDP) se utilizan para propósitos muy similares, sin embargo, la forma en que funcionan difiere entre cada escaneo. Esto significa que, si bien es probable que uno de los tres primeros escaneos sea su opción en la mayoría de las situaciones, vale la pena tener en cuenta que existen otros tipos de escaneo. En términos de escaneo de red, también veremos brevemente el escaneo ICMP (o “ping”).

Reconocimiento y enumeración con Nmap

Nmap es una utilidad completamente gratuita y de código abierto, nos permite descubrir redes y host, así como realizar auditoría de seguridad. Este programa es compatible con sistemas operativos Linux, Windows y también macOS, pero en todos ellos se utiliza a través de la línea de comandos, aunque tenemos la posibilidad de instalar ZenMap que es la utilidad gráfica de Nmap para hacer los escaneos de puertos a través de la interfaz gráfica de usuario. Si no quieres pelearte con comandos a través de consola, esta interfaz gráfica de usuario te podría ser útil para los primeros pasos con este gran programa, no obstante, cuando tengas más experiencia seguramente ejecutes todas las órdenes directamente desde terminal.

Nmap nos permite detectar hosts de una red local, y también a través de Internet, de esta forma, podremos saber si dichos hosts (ordenadores, servidores, routers, switches, dispositivos IoT) están actualmente conectados a Internet o a la red local. Esta herramienta también permite realizar un escaneo de puertos a los diferentes hosts, ver qué servicios tenemos activos en dichos hosts gracias a que nos dirá el estado de sus puertos, podremos saber qué sistema operativo está utilizando un determinado equipo, e incluso podremos automatizar diferentes pruebas de pentesting para comprobar la seguridad de los equipos.

Diferentes tipos de escaneo de puertos

Nmap tiene diferentes tipos de escaneo de puertos, pueden ser a través de segmentos TCP, datagramas UDP o paquetes ICMP, además, permite realizar escaneos de forma oculta para que sean difíciles de detectar por los firewalls. Por supuesto, podremos hacer escaneo de puertos sobre ciertos puertos en concreto, entre rangos de puertos, rangos de direcciones IP, posibilidad de usar paquetes TCP null, FIN, Xmas y ACK además de SYN, para localizar los puertos TCP abiertos.

Otras características que nos brinda esta herramienta, es la posibilidad de hacer un completo inventario de red, e incluso comprobar si un determinado host o servicio sigue levantado y funcionando. Este programa fue diseñado para escanear una gran cantidad de hosts, por tanto, si necesitas escanear múltiples objetivos no tendrás problemas. Este programe es muy flexible, incorpora decenas de técnicas avanzadas para escanear hosts y puertos, además, también permite realizar auditorías a través de NSE (Nmap Search Engine), por lo que es realmente potente.

Nmap tiene varios estados en los puertos que aparecerán cuando hagamos un escaneo de puertos. Es fundamental saber qué significa cada estado de Nmap, porque con cualquier escaneo de puertos, nos devolverá diferentes estados.

Principales usos de Nmap

Como has podido ver, Nmap es una herramienta muy versátil. Esta se puede utilizar para gran variedad de tareas, sobre todo relacionadas con la seguridad de la información. Pero también nos permite realizar administración de redes. Algunos de los usos más comunes para Nmap son:

Escaneo de puertos: 

Se puede utilizar para realizar el escaneo de puertos abiertos en la red. Lo cual nos da la posibilidad de identificar posibles puntos en los que un atacante puede atacar nuestra red. También se pueden realizar escaneos de puertos específicos, o un rango de puertos. Lo cual nos dice los que están abiertos, y como tal, con posibilidad de ser atacados.

Detección de sistemas: 

Nmap se puede utilizar para encontrar sistemas activos en una red. Esto puede incluir servidores y dispositivos de red. Esto se hace escaneando una dirección IP, o un rango de direcciones para identificar los dispositivos en la red.

Detección de servicios: 

Con Nmap es posible detectar los servicios que se están ejecutando en la red, lo cual nos ayuda en muchos casos a detectar vulnerabilidades. Podremos identificar servicios como HTTP, Telnet, FTP, SSH, entre otros muchos. Esto lo que permite es proporcionar información muy detallada sobre los softwares que están siendo ejecutados, incluso las versiones de los mismos.

Mapeo de redes: 

Se puede utilizar para mapear redes. Esto puede incluir varios factores como la ubicación de un dispositivo o la topología de la propia red. Así será mucho más sencillo crear un mapa visual de toda la infraestructura, identificando los dispositivos y como están conectados.

Pruebas de seguridad: 

Con Nmap se pueden realizar pruebas de penetración y evaluaciones de seguridad. Esto nos permite identificar vulnerabilidades en los sistemas o la red. Esto está directamente ligado al escaneo de puertos.

Monitorización: 

Nmap tiene la capacidad de realizar una monitorización de la disponibilidad de los servidores o dispositivos de la red. Lo cual nos ayuda a ver si están funcionando de la forma correcta.

Para que escanear puertos

Como hemos visto, con nmap tenemos una herramienta especializada en analizar los puertos de los sistemas informáticos, obteniendo información sobre si están abiertos, cerrados o protegidos con cortafuegos. Esto se puede hacer con multitud de finalidades, como saber qué servicios se están ofreciendo desde un equipo por los administradores o por seguridad, buscando solventar algún problema que pueda llegar en forma de vulnerabilidad.

Pero esto también se puede utilizar con fines maliciosos. Igual que los Administradores pueden analizarlos para buscar posibles vulnerabilidades, un atacante puede hacerlo por exactamente lo mismo, pero con la intención de aprovecharse de ello para infiltrarse en la red aprovechando una brecha en la seguridad.

Estado de los puertos con Nmap

  • Open: una aplicación está activamente aceptando conexiones TCP o UDP. El puerto está abierto y se puede utilizar, los pentesters podrán utilizar este puerto abierto para explotar el sistema. Es el estado por defecto si no tenemos ningún firewall bloqueando accesos.
  • Closed: un puerto que está cerrado es accesible porque responde a Nmap, sin embargo, no hay ninguna aplicación funcionando en dicho puerto. Es útil para descubrir que un host está levantado, o como parte de la detección de un sistema operativo. De cara al administrador del sistema, es recomendable filtrar estos puertos con el firewall para que no sean accesibles. De cara al pentester, es recomendable dejar estos puertos “cerrados” para analizar más tarde, por si ponen algún servicio nuevo.
  • Filtered: en este estado Nmap no puede determinar si el puerto está abierto, porque hay un firewall filtrando los paquetes de Nmap en dicho puerto. Estos puertos filtrados son los que aparecerán cuando tengamos un firewall activado. Nmap intentará en varias ocasiones intentar conectar, lo que hace que el escaneo de puertos sea bastante lento.
  • Open| Filtered: Nmap no sabe si el puerto está abierto o filtrado. Esto ocurre porque el puerto abierto no envía ninguna respuesta, y dicha falta de respuesta podría ser por el firewall. Este estado aparece cuando usamos UDP y IP, y utilizamos escaneos FIN, NULL y Xmas.
  • Closed | Filtered: en este estado no se sabe si el puerto está cerrado o filtrado. Solo se usa este estado en el IP Idle Scan.

Efectividad de Nmap

Nmap es una herramienta que se considera altamente efectiva. Esto se debe a una combinación de funcionalidad y características avanzadas, que hace de esta solución una de las mejores que podemos encontrarnos. Esta cuenta con la capacidad de realizar escaneos de vulnerabilidades, para identificar posibles debilidades en las configuraciones de los sistemas de seguridad. Por lo cual, de no ser efectiva, no sería una herramienta tan conocida. Podríamos decir, que la propia fama de Nmap es un buen identificativo para la calidad que puede proporcionarnos en una gran variedad de situaciones diferentes.

Por otro lado, más allá de su eficacia en identificación de dispositivos, servicios y vulnerabilidades, está su capacidad para trabajar con diferentes protocolos de red. Entre otros, TCP, UDP, ICMP e IP. Todo lo cual, se puede integrar con otras herramientas de seguridad y análisis. Pueden ser herramientas como Metasploit o incluso Wireshark. Lo cual hace de Nmap una herramienta muy versátil para todo tipo de sistemas.

En cambio, no estamos ante una solución que sea perfecta, ni que represente una medida de seguridad ante problemas. A pesar de que es muy efectiva y poderosa, requiere de cierto conocimiento por parte de los usuarios que la utilicen. Así como la disposición de las habilidades necesarias para darle uso con todas las garantías, y aprovechando su rendimiento y funciones al máximo. También debemos pensar que muchos dispositivos pueden contar con algún tipo de protección contra los escaneos de las aplicaciones como Nmap, o pueden incluso ser complicados de detectar. Pero en estos casos, ya no sería un problema de la eficiencia de Nmap ni de sus funciones, sino de las medidas de protección establecidas en esos dispositivos. En todo caso, si buscamos una solución efectiva, fiable y con buena trayectoria, Nmap es una de las mejores soluciones actualmente.

Personalización de NMAP

Como puedes ver, con NMAP estamos ante una herramienta de código abierto, por lo cual tiene una alta capacidad de personalización. Lo cual la lleva a ser una solución altamente adaptable a las necesidades de cada usuario, en todo tipo de escenarios. Pero esto es algo que no se realiza a la ligera, sino que hay algunos factores que destacan por encima de otros. Empezando por las opciones de escaneo, donde la gama de opciones es muy amplia. Esta permite gestionar muchos parámetros y opciones avanzadas, que modifican por completo el funcionamiento de NMAP. El escaneo personalizado, permite disponer de información muy valiosa, y de todo tipo al realizar análisis de puertos, por ejemplo.

Por otro lado, están los scripts NSE (Nmap Scripting Engine). Esta es una de las características más potentes de NMAP, la cual permite ejecutar scripts muy personalizados durante el tiempo de escaneo. Al poder crear los scripts por nuestra parte, pueden ser todo lo complejos que sea necesario. Y como tal nos da ese añadido en personalización, el cual no tendríamos sin esta sección de NMAP. Todo se hace buscando la salida personalizada de datos, donde se pueden establecer muchos parámetros. Desde el formato de salida, generar informes HTML, y los resultados que vamos a necesitar que incluya el análisis que se realiza en la red.

Por último, NMAP cuenta con una gran capacidad de integración con otras herramientas. Una de las características más llamativas, es el poder establecer NMAP como entrada para otras herramientas de seguridad que utilicemos, o incluso para detección de intrusos. Lo cual, de nuevo, se puede combinar con los scripts que mencionamos previamente. Una vez que hemos visto las principales características de Nmap, y el estado de los puertos que tenemos disponibles, vamos a instalarlo y utilizarlo.

Descarga e instalación de Nmap en cualquier sistema

Lo primero que tenemos que hacer para utilizar este programa tan potente, es descargarlo y posteriormente instalarlo. En la sección de descargas de Nmap podés encontrar todos los enlaces, binarios y código fuente para su instalación en sistemas operativos Windows, Linux y MacOS. Este programa, actualmente lo tenemos disponible en todos los repositorios de los sistemas operativos basados en Linux, por lo que su instalación es realmente sencilla. En Kali Linux ya viene instalado, pero si en tu Linux no esta instalado simplemente ejecutando la orden de instalación seguido de «nmap», instalaras el programa sin dificultades.

sudo apt install nmap

Ejemplos de uso de Nmap

Nmap es un programa muy avanzado y complejo, con decenas de comandos y ataques que vamos a poder realizar, con el objetivo de descubrir todos los hosts que tengamos en una red local doméstica o profesional, además, también es capaz de detectar hosts en Internet, es decir, vamos a poder escanear uno a uno cualquier dirección IP de Internet e incluso subredes que sean públicas.

Una vez que hemos descubierto que el host está online, se le puede realizar un escaneo rápido de puertos y comprobar si tiene un firewall filtrando todos los paquetes, o bien tenemos un puerto abierto para poder explotar alguna vulnerabilidad. Nmap permite utilizar tanto direcciones IPv4 privadas y públicas, como también direcciones IPv6, con el objetivo de poder escanear los puertos de cualquier host.

A continuación, veremos algunos ejemplos de cómo se utiliza Nmap a nivel usuario, y también con comandos algo más avanzados, y es que este programa nos permitirá descubrir con cierta exactitud qué sistema operativo está utilizando el host remoto, ideal para obtener la máxima información posible.

Escaneo rápido de puertos

Si quieres realizar un escaneo rápido de puertos a un determinado host, debemos teclear el siguiente comando. Este comando básico se encargará de escanear los principales puertos a la dirección IP privada o pública definida, un detalle muy importante es que no escaneará todos los puertos, sino los más utilizados habitualmente.

nmap [ip]

Por ejemplo, si queremos realizar un escaneo rápido de los principales puertos a un host con dirección IP 192.168.1.1, la orden sería la siguiente:

nmap 192.168.1.1

El programa nos devolverá los puertos que se encuentran abiertos en el equipo objetivo.

En el caso de querer escanear todos y cada uno de los puertos tendremos que recurrir al siguiente comando y poner un rango desde el puerto 1 hasta el 65535, de esta forma estaremos comprobando si todos y cada uno de los puertos están abiertos, cerrados o filtrados.

Realizar escaneo de un rango de puertos

En lugar de realizar un escaneo de todos los puertos, podemos establecer un rango de puertos a comprobar. Para ello ejecutaremos:

nmap -p [rango] [ip]

Si queremos realizar un escaneo de puertos desde el 20 TCP hasta el 200 TCP en la dirección IP 192.168.1.1, basta con ejecutar la siguiente orden:

nmap -p 20-200 192.168.1.1

El programa nos indicará dentro de ese rango qué puertos están abiertos.

Dependiendo de la latencia de la conexión entre nuestro equipo y el host remoto, y también el número de puertos a analizar, este proceso podría durar desde varios segundos hasta unos 10 minutos aproximadamente.

Detectar el sistema operativo y más datos del host

Podemos indicar a Nmap que detecte el sistema operativo. Esto lo realiza enviando paquetes y analizando la forma en que los devuelve, siendo en cada sistema totalmente diferente. Junto a esto, realizará una exploración de puertos y de los servicios en busca de vulnerabilidades. Asimismo, el escaneo devolverá información útil. Para ello debemos ejecutar:

nmap -A -v [ip]

Si queremos realizar este escaneo a la dirección IP 192.168.1.1 podemos ejecutar la siguiente orden:

nmap -A -v 192.168.1.1

Esta prueba de detección del sistema operativo no es del todo fiable porque depende de muchos parámetros, en algunos casos la exactitud es muy buena, sobre todo en diferenciar si es Windows o Linux, pero dentro del mundo Linux es realmente complicado conocer qué sistema operativo es en concreto.

Listado de todos los comandos

Este programa es realmente completo, hasta el momento hemos utilizado los comandos básicos para descubrir hosts y también para ver si tiene los puertos abiertos, sin embargo, esto no se queda así, y tenemos un gran listado de comandos para exprimir al máximo esta herramienta.

Seleccionar objetivos

Direcciones o rangos IP, nombres de sistemas, redes, etc.

  • Ejemplo: scanme.nmap.org, microsoft.com/24, 192.168.0.1, 10.0.0-255.1-254
  • -iL fichero lista en fichero -iR n elegir objetivos aleatoriamente, 0 nunca acaba
  • –exclude –excludefile fichero excluir sistemas desde fichero

Descubrir sistemas

  • -PS n tcp syn ping
  • -PA n ping TCP ACK
  • -PU n ping UDP
  • -PM Netmask Req
  • -PP Timestamp Req
  • -PE Echo Req
  • -sL análisis de listado
  • -PO ping por protocolo
  • -PN No hacer ping
  • -n no hacer DNS
  • -R Resolver DNS en todos los sistemas objetivo
  • –traceroute: trazar ruta al sistema (para topologías de red)
  • -sP realizar ping, igual que con –PP –PM –PS443 –PA80

Técnicas de análisis de puertos

En la mayoría de ocasiones, cuando los usuarios están empezando a utilizar esta herramienta, lo más probable es que intenten la resolución de la mayoría de problemas con el tipo de escaneo SYN porque es uno de los más versátiles. Pero, a medida que avanzan y conocen la herramienta en profundidad, se darán cuenta de que ampliarán su abanico de soluciones y aquí abajo explicamos un poco algunos de los comandos que resultan más útiles al momento de analizar puertos.

-sS análisis utilizando TCP SYN:

Este tipo de escaneo, está basado en la velocidad de escaneo, de ahí la versatilidad que mencionamos anteriormente, ya que permite escanear miles de puertos por segundo en una red que se encuentre desprotegida o carezca de un firewall. Además, en lo que a términos de privacidad se refiere, es una excelente técnica, ya que no llega a completar las conexiones TCP y por lo tanto no llama la atención.

-sT análisis utilizando TCP CONNECT:

Este tipo de exploración, podríamos decir que es la que se utiliza principalmente, sobre todo cuando no podemos ejecutar un escaneo tipo SYN, este tipo de análisis de conexión, lo que hace es realizar o emitir una llamada  al sistema de conexión para que se establezca una conexión con la red que estamos analizando. Luego, Nmap lo que hace es utilizar esta llamada para analizar la información sobre cada intento de conexión, la principal desventaja de este tipo de análisis es que nos toma un poco más de tiempo identificar los puertos que están abiertos que nos llevaría por ejemplo con el SYN.

-sU análisis utilizando UDP:

Este tipo de escaneo es bastante simple, suele utilizarse sobre todo cuando queremos realizar un seguimiento de puertos como los DNS, SNMP y DHCP en nuestra red. Por supuesto, que sea sencillo no quita que son puertos bastante importantes, ya que suelen ser las áreas por donde suelen haber atacantes buscando vulnerabilidades para explotar.

  • -sY análisis utilizando SCTP INIT
  • -sZ utilizando COOKIE ECHO de SCTP
  • -sO protocolo IP
  • -sW ventana TCP -sN
  • –sF -sX NULL, FIN, XMAS
  • –sA TCP ACK

Puertos a analizar y orden de análisis

  • -p n-m rango
  • -p– todos los puertos
  • -p n,m,z especificados
  • -p U:n-m,z T:n,m U para UDP, T para TCP
  • -F rápido, los 100 comunes
  • –top-ports n analizar los puertos más utilizados
  • -r no aleatorio

Duración y ejecución:

  • -T0 paranoico
  • -T1 sigiloso
  • -T2 sofisticado
  • -T3 normal
  • -T4 agresivo
  • -T5 locura
  • –min-hostgroup
  • –max-hostgroup
  • –min-rate
  • –max-rate
  • –min-parallelism
  • –max-parallelism
  • –min-rtt-timeout
  • –max-rtt-timeout
  • –initial-rtt-timeout
  • –max-retries
  • –host-timeout –scan-delay

Detección de servicios y versiones

  • -sV: detección de la versión de servicios
  • –all-ports no excluir puertos
  • –version-all probar cada exploración
  • –version-trace rastrear la actividad del análisis de versión
  • -O activar detección del S. Operativo
  • –fuzzy adivinar detección del SO
  • –max-os-tries establecer número máximo de intentos contra el sistema objetivo

Evasión de Firewalls/IDS

  • -f fragmentar paquetes
  • -D d1,d2 encubrir análisis con señuelos
  • -S ip falsear dirección origen
  • –g source falsear puerto origen
  • –randomize-hosts orden
  • –spoof-mac mac cambiar MAC de origen

Parámetros de nivel de detalle y depuración

  • -v Incrementar el nivel de detalle
  • –reason motivos por sistema y puerto
  • -d (1-9) establecer nivel de depuración
  • –packet-trace ruta de paquetes

Otras opciones

  • –resume file continuar análisis abortado (tomando formatos de salida con -oN o -oG)
  • -6 activar análisis IPV6
  • -A agresivo, igual que con -O -sV -sC –traceroute

Opciones interactivas

  • v/V aumentar/disminuir nivel de detalle del análisis
  • d/D aumentar/disminuir nivel de depuración
  • p/P activar/desactivar traza de paquetes

Scripts

  • -sC realizar análisis con los scripts por defecto
  • –script file ejecutar script (o todos)
  • –script-args n=v proporcionar argumentos
  • –script-trace mostrar comunicación entrante y saliente

Formatos de salida

  • -oN guardar en formato normal
  • -oX guardar en formato XML
  • -oG guardar en formato para posteriormente usar Grep
  • -oA guardar en todos los formatos anteriores

Principalmente estos son los comandos de que dispone Nmap. Antes de terminar, debemos decir que Nmap dispone de multitud de opciones con las que poder realizar completos análisis de redes. Podemos consultar todas las opciones disponibles tecleando:

nmap --help

Exploraciones de conexión TCP

Para comprender los escaneos de TCP Connect ( -sT), es importante que se sienta cómodo con el protocolo de enlace de tres vías de TCP. Como breve resumen, el apretón de manos de tres vías consta de tres etapas. Primero, la terminal de conexión (nuestra máquina atacante, en este caso) envía una solicitud TCP al servidor de destino con el indicador SYN establecido. Luego, el servidor reconoce este paquete con una respuesta TCP que contiene el indicador SYN, así como el indicador ACK. Finalmente, nuestro terminal completa el protocolo de enlace enviando una solicitud TCP con el indicador ACK establecido.

Por ejemplo, si un puerto está cerrado, RFC 793 establece que:

“… Si la conexión no existe (CERRADA), se envía un restablecimiento en respuesta a cualquier segmento entrante excepto otro restablecimiento. En particular, los SYN dirigidos a una conexión inexistente se rechazan por este medio”.

En otras palabras, si Nmap envía una solicitud TCP con el indicador SYN establecido en un puerto cerrado , el servidor de destino responderá con un paquete TCP con el indicador RST (Reinicio) establecido. Mediante esta respuesta, Nmap puede establecer que el puerto está cerrado.

Sin embargo, si la solicitud se envía a un puerto abierto , el objetivo responderá con un paquete TCP con los indicadores SYN/ACK establecidos. Luego, Nmap marca este puerto como abierto (y completa el protocolo de enlace enviando un paquete TCP con ACK establecido).

Hay una tercera posibilidad. ¿Qué sucede si el puerto está abierto, pero oculto detrás de un firewall? Muchos cortafuegos están configurados para descartar simplemente los paquetes entrantes. Nmap envía una solicitud TCP SYN y no recibe nada. Esto indica que el puerto está protegido por un firewall y, por lo tanto, se considera que el puerto está filtrado . Dicho esto, es muy fácil configurar un firewall para que responda con un paquete RST TCP . Por ejemplo, en IPtables para Linux, una versión simple del comando sería la siguiente:

iptables -I INPUT -p tcp –dport <port> -j REJECT –reject-with tcp-reset

Esto puede hacer que sea extremadamente difícil (si no imposible) obtener una lectura precisa de los objetivos.

Escaneos SYN

Al igual que con los escaneos TCP , los escaneos SYN ( -sS) se utilizan para escanear el rango de puertos TCP de un destino o destinos; sin embargo, los dos tipos de escaneo funcionan de manera ligeramente diferente. Los escaneos SYN a veces se denominan escaneos ” medio abiertos” o escaneos “sigilosos” .

Donde los escaneos TCP realizan un protocolo de enlace completo de tres vías con el objetivo, los escaneos SYN devuelven un paquete RST TCP después de recibir un SYN/ACK del servidor (esto evita que el servidor intente realizar la solicitud repetidamente). La secuencia para escanear un puerto abierto se ve así:

Esto tiene una variedad de ventajas para nosotros como hackers:

  • Se puede usar para eludir los sistemas de detección de intrusos más antiguos, ya que buscan un apretón de manos completo de tres vías. A menudo, este ya no es el caso con las soluciones IDS modernas; es por esta razón que los escaneos SYN todavía se conocen con frecuencia como escaneos “sigilosos”.
  • Los escaneos SYN a menudo no son registrados por las aplicaciones que escuchan en los puertos abiertos, ya que la práctica estándar es registrar una conexión una vez que se ha establecido por completo. 
  • Sin tener que preocuparse por completar (y desconectarse de) un protocolo de enlace de tres vías para cada puerto, los escaneos SYN son significativamente más rápidos que un escaneo TCP Connect estándar.

Sin embargo, hay un par de desventajas en los escaneos SYN, a saber:

  • Requieren permisos sudo para funcionar correctamente en Linux. Esto se debe a que los escaneos SYN requieren la capacidad de crear paquetes sin procesar (a diferencia del protocolo de enlace TCP completo), que es un privilegio que solo el usuario raíz tiene de forma predeterminada.
  • Los escaneos SYN a veces interrumpen los servicios inestables, lo que podría resultar problemático si un cliente ha proporcionado un entorno de producción para la prueba.

Los pros superan a los contras

Por esta razón, los escaneos SYN son los escaneos predeterminados utilizados por Nmap si se ejecutan con permisos sudo . Si se ejecuta sin permisos de sudo, Nmap utiliza de manera predeterminada el escaneo TCP Connect que vimos en la tarea anterior.

Cuando se usa un escaneo SYN para identificar puertos cerrados y filtrados, se aplican exactamente las mismas reglas que con un escaneo TCP Connect. Si un puerto está cerrado, el servidor responde con un paquete RST TCP . Si el puerto está filtrado por un cortafuegos, el paquete TCP SYN se descarta o se falsifica con un restablecimiento de TCP. En este sentido, los dos escaneos son idénticos: la gran diferencia está en cómo manejan los puertos abiertos .

Los escaneos SYN también se pueden hacer funcionar al darle a Nmap las capacidades CAP_NET_RAW, CAP_NET_ADMIN y CAP_NET_BIND_SERVICE; sin embargo, es posible que esto no permita que muchos de los scripts de NSE se ejecuten correctamente.

Escaneos UDP

A diferencia de TCP, las conexiones UDP no tienen estado. Esto significa que, en lugar de iniciar una conexión con un “apretón de manos” de ida y vuelta, las conexiones UDP se basan en el envío de paquetes a un puerto de destino y, en esencia, esperan que lo logren. Esto hace que UDP sea excelente para las conexiones que dependen de la velocidad sobre la calidad (por ejemplo, compartir videos), pero la falta de reconocimiento hace que UDP sea mucho más difícil (y mucho más lento) de escanear. El interruptor para un escaneo UDP de Nmap es (-sU )

Cuando se envía un paquete a un puerto UDP abierto, no debería haber respuesta. Cuando esto sucede, Nmap se refiere al puerto como open|filtered. En otras palabras, sospecha que el puerto está abierto, pero podría tener un firewall. Si obtiene una respuesta UDP (lo cual es muy inusual), entonces el puerto se marca como abierto. Más comúnmente, no hay respuesta, en cuyo caso la solicitud se envía por segunda vez como una doble verificación. Si aún no hay respuesta, el puerto se marca como abierto|filtrado y Nmap continúa.

UDP cerrado

Cuando se envía un paquete a un puerto UDP cerrado, el objetivo debe responder con un paquete ICMP (ping) que contiene un mensaje que indica que el puerto no está disponible. Esto identifica claramente los puertos cerrados, que Nmap marca como tales y continúa.

Debido a esta dificultad para identificar si un puerto UDP está realmente abierto, los escaneos UDP tienden a ser increíblemente lentos en comparación con los varios escaneos TCP (en la región de 20 minutos para escanear los primeros 1000 puertos, con una buena conexión). Por este motivo, suele ser una buena práctica ejecutar un análisis de Nmap con la–top-ports <number> opción habilitada. Por ejemplo, escanear con  nmap -sU –top-ports 20 <target>. Explorará los 20 puertos UDP más utilizados, lo que resultará en un tiempo de exploración mucho más aceptable.

Al escanear puertos UDP , Nmap generalmente envía solicitudes completamente vacías, solo paquetes UDP sin procesar. Dicho esto, para los puertos que suelen estar ocupados por servicios bien conocidos, en su lugar enviará una carga útil específica del protocolo que es más probable que obtenga una respuesta de la que se pueda extraer un resultado más preciso.

Tipos de escaneo NULL, FIN y Xmas (Navidad)

Los escaneos de puertos NULL, FIN y Xmas TCP se usan con menos frecuencia que cualquiera de los otros que ya hemos cubierto. Se utilizan principalmente porque tienden a ser aún más sigilosos, en términos relativos, que un escaneo “sigiloso” SYN. Comenzando con escaneos NULL:

  • Como sugiere el nombre, los escaneos NULL ( -sN) son cuando la solicitud TCP se envía sin ningún indicador establecido. Según el RFC, el host de destino debe responder con un RST si el puerto está cerrado.

Los escaneos FIN

( -sF) funcionan de manera casi idéntica; sin embargo, en lugar de enviar un paquete completamente vacío, se envía una solicitud con el indicador FIN (generalmente se usa para cerrar correctamente una conexión activa). Una vez más, Nmap espera un RST si el puerto está cerrado.

Al igual que con los otros dos escaneos de esta clase, los escaneos Xmas ( -sX) envían un paquete TCP con formato incorrecto y esperan una respuesta RST para puertos cerrados. Se lo conoce como un escaneo de navidad porque las banderas que establece (PSH, URG y FIN) le dan la apariencia de un árbol de navidad parpadeante cuando se ve como una captura de paquetes en Wireshark.

La respuesta esperada para puertos abiertos con estos escaneos también es idéntica y es muy similar a la de un escaneo UDP . Si el puerto está abierto, no hay respuesta al paquete con formato incorrecto. Desafortunadamente (al igual que con los puertos UDP abiertos), ese también es un comportamiento esperado si el puerto está protegido por un firewall, por lo que los escaneos NULL, FIN y Xmas solo identificarán los puertos como abiertos, filtradoscerrados o filtrados. Si un puerto se identifica como filtrado con uno de estos escaneos, generalmente se debe a que el destino ha respondido con un paquete ICMP inalcanzable.

RFC 793

si bien RFC 793 exige que los hosts de la red respondan a paquetes con formato incorrecto con un paquete RST TCP para puertos cerrados y no respondan en absoluto para puertos abiertos; este no es siempre el caso en la práctica. En particular, se sabe que Microsoft Windows (y muchos dispositivos de red de Cisco) responden con un RST a cualquier paquete TCP con formato incorrecto, independientemente de si el puerto está realmente abierto o no. Esto hace que todos los puertos aparezcan como cerrados.

Dicho esto, el objetivo aquí es, por supuesto, la evasión del firewall. Muchos cortafuegos están configurados para enviar paquetes TCP entrantes a puertos bloqueados que tienen el indicador SYN establecido (bloqueando así nuevas solicitudes de inicio de conexión). Al enviar solicitudes que no contienen el indicador SYN, evitamos de manera efectiva este tipo de firewall. Si bien esto es bueno en teoría, la mayoría de las soluciones IDS modernas son inteligentes para estos tipos de escaneo, así que no confíe en que sean 100% efectivos cuando se trata de sistemas modernos.

Exploración de red ICMP

En la primera conexión a una red de destino en una asignación de caja negra, nuestro primer objetivo es obtener un “mapa” de la estructura de la red o, queremos ver qué direcciones IP contienen hosts activos y cuáles no. .

Una forma de hacer esto es usando Nmap para realizar el llamado “barrido de ping”. Esto es exactamente como sugiere el nombre: Nmap envía un paquete ICMP a cada dirección IP posible para la red especificada. Cuando recibe una respuesta, marca la dirección IP que respondió como viva. Por razones que veremos en una tarea posterior, esto no siempre es exacto; sin embargo, puede proporcionar algo así como una línea de base y, por lo tanto, vale la pena cubrirlo.

Para realizar un barrido de ping, usamos el -snconmutador junto con rangos de IP que se pueden especificar con un guión (-) o notación CIDR. es decir, podríamos escanear la 192.168.0.x red usando:

  • nmap -sn 192.168.0.1-254

o

  • nmap -sn 192.168.0.0/24

-sn le dice a Nmap que no escanee ningún puerto, lo que lo obliga a depender principalmente de paquetes de eco ICMP (o solicitudes ARP en una red local, si se ejecuta con sudo o directamente como usuario raíz) para identificar objetivos. Además de las solicitudes de eco ICMP, -sn también hará que nmap envíe un paquete TCP SYN al puerto 443 del destino, así como un paquete TCP ACK (o TCP SYN si no se ejecuta como raíz) al puerto 80 del destino .

NSE

El Nmap Scripting Engine (NSE) es una adición increíblemente poderosa a Nmap, que amplía considerablemente su funcionalidad . Los scripts NSE están escritos en el lenguaje de programación Lua y se pueden usar para hacer una variedad de cosas: desde buscar vulnerabilidades hasta automatizar exploits para ellas. El NSE es particularmente útil para el reconocimiento, sin embargo, vale la pena tener en cuenta lo extensa que es la biblioteca de scripts.

Hay muchas categorías disponibles. Algunas categorías útiles incluyen:

  • safe:- No afectará al objetivo
  • intrusive:- No es seguro: es probable que afecte al objetivo
  • vuln:- Explorar en busca de vulnerabilidades
  • exploit:- Intento de explotar una vulnerabilidad
  • auth:- Intentar omitir la autenticación para ejecutar servicios (por ejemplo, iniciar sesión en un servidor FTP de forma anónima)
  • brute:- Intento de fuerza bruta de credenciales para ejecutar servicios
  • discovery:- Intente consultar los servicios en ejecución para obtener más información sobre la red (por ejemplo, consultar un servidor SNMP).

Una lista más exhaustiva se puede encontrar aquí .

Trabajando con la NSE

Para activar los scripts NSE de la categoria vuln usamos –script=vuln. No debería sorprender que las otras categorías funcionen exactamente de la misma manera. Si se ejecuta el comando –script=safe, todos los scripts seguros aplicables se ejecutarán contra el destino (Nota: solo se activarán los scripts que se dirijan a un servicio activo).

Para ejecutar un script específico, usaríamos –script=<script-name>, por ejemplo –script=http-fileupload-exploiter, .

Se pueden ejecutar varios scripts simultáneamente de esta manera separándolos con una coma. –script=smb-enum-users,smb-enum-shares.

Algunos scripts requieren argumentos (por ejemplo, credenciales, si están explotando una vulnerabilidad autenticada). Estos se pueden dar con el –script-args Nmap. Un ejemplo de esto sería con el http-putscript (usado para subir archivos usando el método PUT). Esto toma dos argumentos: la URL para cargar el archivo y la ubicación del archivo en el disco. 

nmap -p 80 –script http-put –script-args http-put.url=’/dav/shell.php’,http-put.file=’./shell.php’

Tenga en cuenta que los argumentos están separados por comas y conectados al script correspondiente con puntos (<script-name>.<argument>).

Puede encontrar una lista completa de scripts y sus argumentos correspondientes (junto con ejemplos de casos de uso) aquí .

Los scripts de Nmap vienen con menús de ayuda incorporados, a los que se puede acceder usando nmap –script-help <script-name>. Esto tiende a no ser tan extenso como en el enlace anterior, sin embargo, aún puede ser útil cuando se trabaja localmente.

NSE Búsqueda de Scripts

Hay dos formas de buscar scripts instalados. Una es usando el /usr/share/nmap/scripts/script.db. A pesar de la extensión, esto no es en realidad una base de datos sino un archivo de texto formateado que contiene nombres de archivo y categorías para cada script disponible.

Nmap utiliza este archivo para realizar un seguimiento de (y utilizar) secuencias de comandos para el motor de secuencias de comandos; sin embargo, también podemos recorrerlo para buscar scripts. Por ejemplo: grep «ftp» /usr/share/nmap/scripts/script.db.

La segunda forma de buscar scripts es simplemente usar el lscomando. Por ejemplo, podríamos obtener los mismos resultados que en la captura de pantalla anterior usando ls -l /usr/share/nmap/scripts/*ftp*:

Tenga en cuenta el uso de asteriscos (*) a cada lado del término de búsqueda

Las mismas técnicas también se pueden utilizar para buscar categorías de secuencias de comandos. Por ejemplo:

grep «safe» /usr/share/nmap/scripts/script.db

Instalación de nuevos scripts

Anteriormente mencionamos que el sitio web de Nmap contiene una lista de scripts, entonces, ¿qué sucede si falta uno de estos en el scriptsdirectorio local? Un estándar sudo apt update && sudo apt install nmapdebería arreglar esto; sin embargo, también es posible instalar los scripts manualmente descargándolos desde Nmap ( sudo wget -O /usr/share/nmap/scripts/<script-name>.nse https://svn.nmap.org/nmap/scripts/<script-name>.nse). A continuación, se debe seguir con nmap –script-updatedb, que actualiza el script.dbarchivo para que contenga el script recién descargado.

Vale la pena señalar que necesitaría el mismo comando “updatedb” si tuviera que crear su propio script NSE y agregarlo a Nmap.

Evasión de cortafuegos

Ya hemos visto algunas técnicas para eludir los cortafuegos (piense en los escaneos sigilosos, junto con los escaneos NULL, FIN y Xmas); sin embargo, existe otra configuración de firewall muy común que es imperativo que sepamos cómo eludir.

Su host típico de Windows, con su firewall predeterminado, bloqueará todos los paquetes ICMP. Esto presenta un problema: no solo usamos ping a menudo para establecer manualmente la actividad de un objetivo, Nmap hace lo mismo por defecto. Esto significa que Nmap registrará un host con esta configuración de firewall como muerto y no se molestará en escanearlo en absoluto.

Por lo tanto, necesitamos una forma de sortear esta configuración. Afortunadamente, Nmap proporciona una opción para esto: -Pn, que le dice a Nmap que no se moleste en hacer ping al host antes de escanearlo. Esto significa que Nmap siempre tratará a los hosts de destino como si estuvieran vivos, omitiendo efectivamente el bloque ICMP; sin embargo toma mucho tiempo para completar el escaneo (si el host realmente está muerto, entonces Nmap seguirá verificando y verificando dos veces cada puerto especificado).

Vale la pena señalar que si ya está directamente en la red local, Nmap también puede usar solicitudes ARP para determinar la actividad del host.

Hay una variedad de otros conmutadores que Nmap considera útiles para la evasión de cortafuegos. Se pueden encontrar aquí .

Los siguientes interruptores son de particular interés:

  • -f: Se utiliza para fragmentar los paquetes (es decir, dividirlos en partes más pequeñas) para que sea menos probable que los paquetes sean detectados por un firewall o IDS .
  • Una alternativa a -f, pero brindando más control sobre el tamaño de los paquetes: –mtu <number>, acepta un tamaño máximo de unidad de transmisión para usar con los paquetes enviados. Debe ser múltiplo de 8.
  • –scan-delay <time>ms:- se usa para agregar un retraso entre los paquetes enviados. Esto es muy útil si la red es inestable, pero también para evadir cualquier activador de firewall/IDS basado en tiempo que pueda estar en su lugar.
  • –badsum:- esto se usa para generar una suma de verificación no válida para paquetes. Cualquier pila real de TCP/IP eliminaría este paquete, sin embargo, los cortafuegos pueden responder automáticamente, sin molestarse en verificar la suma de verificación del paquete. Como tal, este conmutador se puede utilizar para determinar la presencia de un cortafuegos/IDS.

Nmap es sin duda una herramienta muy sencilla y completa para realizar auditorías de redes, pero esto no acaba aquí, también tenemos disponible Nmap NSE para realizar pentesting avanzados.

Otras técnicas de escaneo

Como hemos visto, nmap ofrece muchos parámetros para realizar un escaneo más a medida, pero actualmente existen otros métodos para realizar esta tarea los cuales pueden ser interesantes. Cada uno de ellos tiene sus propias características, y pueden variar en efectividad.

  • TCP connect()scanning: Es una de la formas de escaneo más comunes, porque es rápido y no son necesarios demasiados privilegios en el equipo.
  • TCP SYN scanning: También conocido como «half-open». Este no llega a crear una conexión TCP, si no que utiliza el envío de paquetes SYN. Puede obtener dos respuestas diferentes, un SYN-ACK que indica que el puerto está abierto, y un RST que está cerrado.
  • TCP FIN scanning: Permite realizar escaneos de puertos en aquellos sistemas que cuentan con firewalls o filtros de paquetes SYN.
  • Fragmentation Scanning: Aquí no estamos ante un escaneo como tal, sino que está para modificar las técnicas anteriores mediante la división o fragmentación de paquetes SYN o FIN. Esto se hace para que no sean detectados por firewall o filtros de paquetes.
  • TCP reverse ident scanning: Con este identificador, es posible conocer datos sobre el responsable de los servicios que están usando una determinada conexión TCP. Requiere una conexión completa.

Gracias a estas técnicas de escaneo avanzadas, pordemos determinar si los puertos están abiertos o cerrados.

Nmap NSE: qué es y para qué sirve

Nmap Search Engine o también conocido como Nmap NSE, es una gran base de datos con miles de scripts que nos permitirá automatizar la realización de pentesting a sistemas y redes. El primer paso de cualquier pentesting es realizar un escaneo de puertos, una vez realizado este escaneo de puertos, podremos intentar explotar vulnerabilidades en los servicios que hay funcionando detrás de un determinado puerto, por ejemplo, podríamos atacar servidores web, servidores Samba, FTP, servidores SSH, servidores DNS, comprobar si los diferentes servicios tienen vulnerabilidades conocidas o directamente intentar autenticarnos en ellos, si es que tienen autenticación como en el FTP o SSH.

NMAP NSE es un conjunto de scripts que nos permitirá automatizar muchas acciones, como realizar ataques de fuerza bruta a servidores Samba, con el objetivo de intentar acceder a ellos y hacernos con el control, aunque también podríamos atacarlo para realizarle un ataque de denegación de servicio y que el servicio no esté disponible. Lo mismo podríamos hacer con los servidores FTP, servidores SSH y mucho más, sobre todo, los servidores web que deben tener un puerto abierto en el firewall son los que más se deben proteger para evitar o mitigar los ataques que nos puedan realizar.

Ejemplos de NMAP NSE

Por ejemplo, si queremos realizar un ataque de fuerza bruta, basado en un listado de usuarios (con un archivo que se llame usuarios.txt) y con un listado de contraseñas a probar (con un archivo que se llame claves.txt) a un servidor SSH de un determinado equipo que tiene la IP 192.168.25.01, podemos poner el siguiente comando:

nmap -p 22 --script ssh-brute --script-args userdb=usarios.txt,passdb=claves.txt --script-args ssh-brute.timeout=4s 192.168.25.01

Si queremos saber si un servidor FTP tiene habilitado la autenticación anónima, podremos hacerlo fácilmente poniendo la siguiente orden:

nmap -sV -sC -p21 192.168.25.01

si queremos realizar un ataque de fuerza bruta a un servidor FTP a un servidor con la IP 99.99.99.99, podemos poner el siguiente comando:

nmap -p 21 --script ftp-brute 192.168.25.01

Disponemos de una grandísima cantidad de scripts dentro de Nmap NSE con el objetivo de comprobar la seguridad de decenas de servicios, porque no solamente tendremos los típicos de servidores Samba, FTP, SSH y más, sino que también podremos atacar de forma muy concreta un servidor web con cabeceras HTTP especiales para ver si hay vulnerabilidades, por supuesto, tendremos scripts específicos que nos permitirá explotar vulnerabilidades al PHP de los servidores web, por supuesto, también podremos explotar vulnerabilidades a los diferentes servidores Samba, FTP y SSH, es decir, vulnerabilidades conocidas que ya han sido solucionadas, pero que es posible que todavía el objetivo las tenga operativas. Por este motivo es tan importante actualizar cuanto antes todos los servicios que tengamos expuestos a Internet, y también servicios que tengamos expuestos a la red local, porque con un malware podría explotar una vulnerabilidad y convertirse el ataque de penetración en un ataque de ransomware para cifrar todos los archivos y carpetas.

Recomiendo visitar la web oficial de uso de NSE donde encontrás todos los scripts que hay actualmente en esta gran base de datos, además, tendrás ejemplos de cómo utilizarlos.

Zenmap, la interfaz gráfica de Nmap

Zenmap es una herramienta gratuita que podemos utilizar para escanear los puertos. Podemos saber cuáles tenemos abiertos, para evitar problemas a la hora de usar algunos programas o acceder a un servidor. Se trata de la interfaz gráfica del popular programa de código abierto Nmap, que permite hacer un escaneo de puertos completo de cualquier equipo conectado. Hay que indicar que esta herramienta, que es totalmente gratuita, está disponible para diferentes sistemas operativos como Microsoft Windows, Linux o macOS. Permite a los usuarios ejecutar diferentes tipos de análisis de puertos. Es ideal tanto para usuarios menos experimentados como también para los más avanzados.

Para comenzar a utilizar Zenmap lo primero que tenemos que hacer es descargarlo. Podemos hacerlo desde la página oficial de Nmap. Allí encontraremos las diferentes versiones, según el sistema operativo que estemos utilizando. El proceso de instalación es sencillo, rápido e intuitivo. En unos segundos lo tendremos listo para utilizar.

Cuando lo hayamos instalado simplemente tendremos que ejecutarlo. Nos encontraremos con una imagen como la de arriba. Podemos elegir un escaneo de puertos a fondo, escaneo rápido, puertos TCP, UDP, etc. Con Zenmap podemos ver qué puertos hay abiertos en cualquier dispositivo. En el apartado de Objetivo tenemos que poner la dirección IP que corresponde a ese equipo para, posteriormente, realizar el escaneo para que muestre cuáles están abiertos. Por tanto lo primero que tenemos que hacer es saber cuál es la dirección IP de nuestro equipo.

Uso de Zenmap en Windows

En Windows este proceso es muy sencillo. Simplemente tenemos que ir a Inicio, ejecutamos el Símbolo del sistema y posteriormente ipconfig. Nos mostrará una serie de información entre las que podemos ver la puerta de enlace predeterminada (generalmente 192.168.1.1) así como la dirección IP de ese equipo. Cuando sepamos cuál es la dirección tendremos que ponerla en el apartado de Objetivo, en Zenmap. Posteriormente tendremos que elegir el tipo de escaneo que queremos realizar, como podría ser por ejemplo un escaneo completo de todos los puertos TCP.

En Zenmap, en la parte de arriba, encontraremos diferentes pestañas. Veremos Salida Nmap, Puertos/Servidores, Topología, Detalles del servidor y Escaneos. Todos ellos nos aporta información, así como poder elegir el tipo de servicio en la parte de la izquierda. Cuando le damos a Puertos/Servidores nos aparecerá una recopilación de todos los puertos abiertos y filtrados que hay en ese host. Hay que tener en cuenta que nos aparecerán más o menos puertos en función del tipo de escaneo que hayamos realizado.

Analizando resultados en Zenmap

Si pinchamos en Escaneos nos aparecerán todos los escaneos que hemos realizado. Los podemos guardar para poder analizar los datos en otra ocasión, así como también eliminarlos y que no aparezcan ahí.

Esto lo podemos hacer con cualquier otro equipo que tengamos conectado a la red. Por ejemplo, podemos comprobar también los puertos abiertos y hacer un escaneo a nuestro teléfono móvil. Únicamente vamos a necesitar conocer cuál es la dirección IP. Eso sí, hay que tener en cuenta que este proceso puede tardar más o menos según el tipo de dispositivo.

En definitiva, Zenmap es un programa interesante con el que podemos hacer escaneos de puertos. Lo podemos usar en Windows, que es el sistema operativo más utilizado en equipos de escritorio, así como en Linux y macOS. Su uso es sencillo e intuitivo y podremos tener un mayor control sobre qué puertos tenemos abiertos, especialmente cuando necesitamos conocer si un equipo va a funcionar correctamente al hacer uso de alguna aplicación que requiera de ciertos puertos abiertos.

Implementación en empresas

Muchas empresas deciden implementar estos sistemas para tener un poco más de control sobre sus redes. Pero esto es algo que se debe estudiar de forma detenida, y siguiendo unos pasos para que todo el proceso sea totalmente eficiente. Estos pasos son:

Evaluación de necesidades:

Siempre y cuando se implemente un nuevo sistema en una empresa, es necesario realizar una evaluación de las necesidades que vamos a tener dentro de la organización. Tendremos que identificar los objetivos, los activos críticos de la red, y todos y cada uno de los requisitos de seguridad que vamos a necesitar solucionar con NMAP.

Instalación y configuración:

En cualquier entorno, lo más recomendable es acudir siempre a los sitios oficiales para obtener la herramienta. Esto hará que el proceso sea totalmente seguro. Una vez disponemos de ella, tendremos que configurar correctamente los ajustes y opciones en NMAP para que esta cumpla con los requisitos específicos.

Políticas y procedimientos:

Las políticas que se establezcan en NMAP, deben ser claras y concisas. Aquí podremos configurar los escaneos y los tipos, así como los protocolos de notificación y reporte de hallazgos.

Capacitación:

Todo el personal que utilice NMAP, debe estar correctamente formado y capacitado para utilizarlo. Será necesario comprender cómo se utiliza la herramienta de forma segura y efectiva, y que siempre deben estar al tanto de todas las políticas y procedimientos.

Análisis:

Como es normal, NMAP nos va a dar unos resultados. Estos deben ser analizados, y como tal será necesario tener un procedimiento para ello. Esto hará que el análisis sea mucho más efectivo, y tengamos la información adecuada en todo momento.

Actualizaciones: 

Una vez disponemos de la herramienta instalada y configurada, tendremos que establecer la forma en la cual vamos a mantenerla actualizada. Esto es algo crítico, ya que será necesario para que todo se mantenga lo más segura posible y con el funcionamiento más óptimo.

Como podemos ver, Nmap es una herramienta tremendamente útil, que nos puede dar muchas facilidades a la hora de gestionar redes.

Hemos compilado y organizado esta hoja de trucos de Nmap para ayudarlo a dominar lo que posiblemente sea la herramienta más útil en el arsenal de cualquier evaluador de penetración. Ya sea que lo use para memorizar las opciones de Nmap, como referencia rápida para tener cerca o como hoja de estudio para su examen CEH/Pentest+, estamos seguros de que lo ayudará a convertirse en un profesional de Nmap.

Especificación de destino

CAMBIAREJEMPLODESCRIPCIÓN
nmap 192.168.1.1Escanea una sola IP
nmap 192.168.1.1 192.168.2.1Escanear IP específicas
nmap 192.168.1.1-254Escanear un rango
nmap scanme.nmap.orgEscanear un dominio
nmap 192.168.1.0/24Escanear usando notación CIDR
-Illinoisnmap -iL targets.txtEscanear objetivos desde un archivo
-irnmap -iR 100Escanea 100 hosts aleatorios
-excluirnmap -exclude 192.168.1.1Excluir hosts listados

Técnicas de escaneo de Nmap

CAMBIAREJEMPLODESCRIPCIÓN
-SSnmap 192.168.1.1 -sSExploración del puerto TCP SYN (predeterminado)
-callenmap 192.168.1.1 -stExploración del puerto de conexión TCP (predeterminado sin privilegios de root)
-sunmap 192.168.1.1 -sUescaneo de puertos UDP
-sanmap 192.168.1.1 -sAEscaneo de puerto TCP ACK
-sudoestenmap 192.168.1.1 -sWEscaneo de puerto de ventana TCP
-sMnmap 192.168.1.1 -sMEscaneo del puerto TCP Maimon

Descubrimiento de host

CAMBIAREJEMPLODESCRIPCIÓN
-sLnmap 192.168.1.1-3 -sLSin escaneo. Listar solo objetivos
-snnmap 192.168.1.1/24 -snDeshabilite el escaneo de puertos. Solo descubrimiento de host.
-Pnnmapn 192.168.1.1-5 -PnDeshabilite el descubrimiento de host. Sólo escaneo de puertos.
-PDnmap 192.168.1.1-5 -PS22-25,80Descubrimiento TCP SYN en el puerto x.
Puerto 80 por defecto
-PENSILVANIAnmap 192.168.1.1-5 -PA22-25,80Descubrimiento de TCP ACK en el puerto x.
Puerto 80 por defecto
-PUnmap 192.168.1.1-5 -PU53Descubrimiento de UDP en el puerto x.
Puerto 40125 por defecto
-PRnmap 192.168.1.1-1/24 -PRDescubrimiento de ARP en la red local
-nortenmap 192.168.1.1 -nNunca hagas resolución DNS

Especificación del puerto

CAMBIAREJEMPLODESCRIPCIÓN
-pagnmap 192.168.1.1 -p 21Escaneo de puertos para el puerto x
-pagnmap 192.168.1.1 -p 21-100Rango de puertos
-pagnmap 192.168.1.1 -p U:53,T:21-25,80Escaneo de puertos múltiples puertos TCP y UDP
-pagnmap 192.168.1.1 -p-Escanear todos los puertos
-pagnmap 192.168.1.1 -p http,httpsEscaneo de puertos desde el nombre del servicio
-Fnmap 192.168.1.1 -FEscaneo rápido de puertos (100 puertos)
-puertos-superioresnmap 192.168.1.1 -top-ports 2000CopiedEscaneo de puertos en los x puertos superiores
-p-65535nmap 192.168.1.1 -p-65535Dejar fuera el puerto inicial dentro del rango hace que el escaneo comience en el puerto 1
-p0-nmap 192.168.1.1 -p0-Dejar el puerto final dentro del alcance hace que el escaneo pase al puerto 65535

Detección de servicio y versión

CAMBIAREJEMPLODESCRIPCIÓN
-sVnmap 192.168.1.1 -sVIntenta determinar la versión del servicio que se ejecuta en el puerto.
-sV -versión-intensidadnmap 192.168.1.1 -sV -version-intensity 8Nivel de intensidad de 0 a 9. Un número más alto aumenta la posibilidad de corrección
-sV -versión-luznmap 192.168.1.1 -sV -version-lightHabilita el modo de luz. Menor posibilidad de corrección. Más rápido
-sV -versión-todonmap 192.168.1.1 -sV -version-allHabilitar nivel de intensidad 9. Mayor posibilidad de corrección. Más lento
-Anmap 192.168.1.1 -APermite la detección de sistema operativo, detección de versiones, escaneo de scripts y traceroute.

Detección del sistema operativo

CAMBIAREJEMPLODESCRIPCIÓN
-Onmap 192.168.1.1 -ODetección remota del sistema operativo mediante huellas dactilares de pila TCP/IP
-O -osscan-límitenmap 192.168.1.1 -O -osscan-limitSi no se encuentran al menos un puerto TCP abierto y uno cerrado, no intentará la detección del sistema operativo en el host.
-O -osscan-guessnmap 192.168.1.1 -O -osscan-guessHace que Nmap adivine de forma más agresiva
-O -max-os-triesnmap 192.168.1.1 -O -max-os-tries 1Establecer el número máximo x de intentos de detección del sistema operativo contra un objetivo
-Anmap 192.168.1.1 -APermite la detección de sistema operativo, detección de versiones, escaneo de scripts y traceroute.

Tiempo y rendimiento

CAMBIAREJEMPLODESCRIPCIÓN
-T0nmap 192.168.1.1 -T0Paranoico (0) Evasión del sistema de detección de intrusiones
-T1nmap 192.168.1.1 -T1Evasión furtiva del sistema de detección de intrusos (1)
-T2nmap 192.168.1.1 -T2Cortés (2) ralentiza el análisis para utilizar menos ancho de banda y menos recursos de la máquina de destino
-T3nmap 92.168.1.1 -T3Normal (3) que es la velocidad predeterminada
-T4nmap 192.168.1.1 -T4Exploraciones de velocidades agresivas (4); asume que estás en una red razonablemente rápida y confiable
-T5nmap 192.168.1.1 -T5Loco (5) velocidades de escaneo; asume que estás en una red muyrápida

Interruptores de sincronización y rendimiento

CAMBIARENTRADA DE EJEMPLODESCRIPCIÓN
-host-timeout 1s; 4m; 2hRenuncia al objetivo después de tanto tiempo.
-min-rtt-timeout/max-rtt-timeout/initial-rtt-timeout 1s; 4m; 2hEspecifica el tiempo de ida y vuelta de la sonda.
-min-hostgroup/max-hostgroup 50; 1024Tamaños de grupos de exploración de hosts paralelos
-min-parallelism/max-parallelism 10; 1Paralelización de sondas
-max-retries3Especificar el número máximo de retransmisiones de sondas de escaneo de puertos
-min-rate 100Enviar paquetes a una velocidad no inferior a <número> por segundo
-max-rate100Enviar paquetes a una velocidad no superior a <número> por segundo

Guiones NSE

CAMBIAREJEMPLODESCRIPCIÓN
-sCnmap 192.168.1.1 -sCEscanee con scripts NSE predeterminados. Se considera útil para el descubrimiento y seguro.
-script defaultnmap 192.168.1.1 -script defaultEscanee con scripts NSE predeterminados. Se considera útil para el descubrimiento y seguro.
-scriptnmap 192.168.1.1 -script=bannerEscanee con un solo script. Banner de ejemplo
–scriptnmap 192.168.1.1 -script=http*Escanee con un comodín. Ejemplo http
-scriptnmap 192.168.1.1 -script=http,bannerEscanee con dos guiones. Ejemplo http y banner
-scriptnmap 192.168.1.1 -script «not intrusive»Escanee de forma predeterminada, pero elimine los scripts intrusivos
-script-argsnmap -script snmp-sysdescr -script-args snmpcommunity=admin 192.168.1.1Script NSE con argumentos

Ejemplos útiles de scripts NSE

DOMINIODESCRIPCIÓN
nmap -Pn -script=http-sitemap-generator scanme.nmap.orggenerador de mapas del sitio http
nmap -n -Pn -p 80 -open -sV -vvv -script banner,http-title -iR 1000Búsqueda rápida de servidores web aleatorios
nmap -Pn -script=dns-brute dominio.comFuerzas brutas nombres de host DNS adivinando subdominios
nmap -n -Pn -vv -O -sV -script smb-enum*,smb-ls,smb-mbenum,smb-os-discovery,smb-s*,smb-vuln*,smbv2* -vv 192.168.1.1Scripts SMB seguros para ejecutar
nmap -script whois* dominio.comconsulta whois
nmap -p80 -script http-unsafe-output-escaping scanme.nmap.orgDetectar vulnerabilidades de secuencias de comandos entre sitios
nmap -p80 -script http-sql-injection scanme.nmap.orgComprobar inyecciones SQL

Firewall / Evasión y suplantación de identidad (IDS)

CAMBIAREJEMPLODESCRIPCIÓN
-Fnmap 192.168.1.1 -fLos análisis solicitados (incluidos los análisis de ping) utilizan pequeños paquetes IP fragmentados. Más difícil para los filtros de paquetes
-mtunmap 192.168.1.1 -mtu 32Establece tu propio tamaño de compensación
-Dnmap -D 192.168.1.101,192.168.1.102,192.168.1.103,192.168.1.23 192.168.1.1Enviar escaneos desde IP falsificadas
-Dnmap -D decoy-ip1,decoy-ip2,your-own-ip,decoy-ip3,decoy-ip4 remote-host-ipEjemplo anterior explicado
-Snmap -S www.microsoft.com www.facebook.comEscanee Facebook desde Microsoft (es posible que se requiera -e eth0 -Pn)
-gnmap -g 53 192.168.1.1Utilice el número de puerto de origen proporcionado
-proxiesnmap -proxies http://192.168.1.1:8080, http://192.168.1.2:8080 192.168.1.1Retransmitir conexiones a través de servidores proxy HTTP/SOCKS4
-data-lengthnmap -data-length 200 192.168.1.1Agrega datos aleatorios a los paquetes enviados.

Ejemplo de comando de evasión IDS

nmap -f -t 0 -n -Pn –longitud-datos 200 -D
192.168.1.101,192.168.1.102,192.168.1.103,192.168.1.23 192.168.1.1

Producción

CAMBIAREJEMPLODESCRIPCIÓN
-ennmap 192.168.1.1 -oN normal.fileSalida normal al archivo normal.file
-oXnmap 192.168.1.1 -oX xml.fileSalida XML al archivo xml.file
-oGnmap 192.168.1.1 -oG grep.fileSalida grepable al archivo grep.file
-oAnmap 192.168.1.1 -oA resultsSalida en los tres formatos principales a la vez
-oG-mapa nm 192.168.1.1 -oG –Salida Grepable a la pantalla. -oN -, -oX – también utilizable
-append-outputnmap 192.168.1.1 -oN file.file -append-outputAgregar un escaneo a un archivo de escaneo anterior
-vnmap 192.168.1.1 -vAumente el nivel de detalle (use -vv o más para obtener un mayor efecto)
-dnmap 192.168.1.1 -dAumentar el nivel de depuración (use -dd o más para un mayor efecto)
-reasonnmap 192.168.1.1 -reasonMuestra el motivo por el que un puerto se encuentra en un estado particular, el mismo resultado que -vv
-opennmap 192.168.1.1 -openMostrar solo puertos abiertos (o posiblemente abiertos)
-packet-tracenmap 192.168.1.1 -T4 -packet-traceMostrar todos los paquetes enviados y recibidos
-iflistnmap -iflistMuestra las interfaces y rutas del host.
-resumenmap -resume results.fileReanudar un escaneo

Ejemplos útiles de salida de Nmap

DOMINIODESCRIPCIÓN
nmap -p80 -sV -oG – -open 192.168.1.1/24 | grep openBusque servidores web y grep para mostrar qué IP están ejecutando servidores web
nmap -iR 10 -n -oX out.xml | grep «Nmap» | cut -d » » -f5 > live-hosts.txtGenerar una lista de las IP de los hosts en vivo
nmap -iR 10 -n -oX out2.xml | grep «Nmap» | cut -d » » -f5 >> live-hosts.txtAgregar IP a la lista de hosts en vivo
ndiff scanl.xml scan2.xmlComparar la salida de nmap usando ndif
xsltproc nmap.xml -o nmap.htmlConvertir archivos nmap xml a archivos html
grep » open » results.nmap | sed -r ‘s/ +/ /g’ | sort | uniq -c | sort -rn | lessLista ordenada inversa de la frecuencia con la que aparecen los puertos

Banderas varias de Nmap

CAMBIAREJEMPLODESCRIPCIÓN
-6nmap -6 2607:f0d0:1002:51::4Habilitar el escaneo IPv6
-hnmap -hpantalla de ayuda de nmap

Otros comandos útiles de Nmap

DOMINIODESCRIPCIÓN
nmap -iR 10 -PS22-25,80,113,1050,35000 -v -snDescubrimiento solo en los puertos x, sin escaneo de puertos
nmap 192.168.1.1-1/24 -PR -sn -vvDescubrimiento de Arp solo en la red local, sin escaneo de puertos
nmap -iR 10 -sn -tracerouteTraceroute a objetivos aleatorios, sin escaneo de puertos
nmap 192.168.1.1-50 -sL -dns-server 192.168.1.1Consultar el DNS interno para hosts, enumerar solo destinos
nmap 192.168.1.1 –packet-traceMuestre los detalles de los paquetes que se envían y reciben durante un escaneo y capture el tráfico.

¿Qué son Zenmap y Nmap?

Si no está familiarizado con estas aplicaciones, le sorprenderá saber que son [efectivamente] la misma herramienta.

Escáner de seguridad Nmap es una aplicación de escaneo de red multiplataforma (Windows, Mac OS X, Linux, etc.) basada en línea de comandos diseñada para detectar hosts y servicios en una computadora. red. 

Zenmap es la versión oficial de la GUI (interfaz gráfica de usuario) del escáner de seguridad de Nmap. Al igual que Nmap, Zenmap también es multiplataforma (disponible en Linux, Windows y otros sistemas operativos).

¿Quién utiliza Zenmap y Nmap?

Los usuarios de Nmap incluyen a todos, desde principiantes hasta profesionales de la seguridad cibernética.

Los administradores de red utilizan Nmap (y Zenmap) para mapear subredes y descubrir hosts. Los profesionales de la seguridad cibernética utilizan Nmap para escanear los sistemas de destino en busca de puertos abiertos y servicios que puedan estar ejecutando. Estos escáneres de seguridad se utilizan durante testeo y pruebas de penetración para descubrir sistemas de destino, recopilar información y comprobar vulnerabilidades.

Independientemente del caso de uso, Nmap y Zenmap nunca deben usarse para escanear redes y sistemas que no sean de su propiedad sin un permiso explícito. 

¿Cuáles son las capacidades de Zenmap y Nmap?

Tanto Nmap como Zenmap se pueden utilizar para proporcionar información extensa sobre una red de destino. Algunas de las funciones de Nmap más utilizadas incluyen:

  • Descubrimiento de host: Genera una lista de nombres de host (es decir, una computadora u otro dispositivo que se comunica en una red. Por ejemplo, PC, impresoras, servidores, etc.) y su IP direcciones.
  • Escaneo de puertos: Escanee puertos específicos (o rangos de puertos) para determinar si están abiertos en un objetivo determinado o en un conjunto de objetivos.
  • Detección del sistema operativo: Intenta adivinar detalles sobre el sistema operativo del objetivo, como el proveedor (por ejemplo, Microsoft), el sistema operativo subyacente (por ejemplo, Windows) y la generación del sistema operativo (por ejemplo, 10).
  • Evasión del firewall/sistema de detección de intrusiones (IDS): Proporciona varias opciones para que los usuarios avanzados eviten que un firewall o un sistema IDS detecten (y posteriormente eliminen) las actividades de escaneo. Por ejemplo, ocultar (o falsificar) su dirección IP, puerto de origen, dirección MAC, etc.

Nmap

En Nmap, los usuarios aprovechan los modificadores de la línea de comandos para definir los parámetros de escaneo. La interfaz de Zenmap presenta un creador de comandos que permite la creación interactiva de líneas de comandos de Nmap utilizando utilidades desplegables (que también pueden ser editadas por usuarios avanzados).

Línea de comando Nmap en Windows

Zenmap

Zenmap también puede proporcionar (y guardar) gráficos de mapas de topología para ayudarle a visualizar los hosts accesibles y sus puertos:

GUI de mapa Zen

Zenmap también le permite guardar los resultados del análisis, que se pueden comparar entre sí para determinar qué ha cambiado (por ejemplo, hosts o servicios que se agregaron o eliminaron).

La siguiente infografía proporciona una comparación lado a lado:

Nmap vs ZenmapNmapZenmap
User InterfaceNmap es una utilidad de basada en CLIZenmap es la interfaz gráfica de usuario de Nmap, pero también incluye el componente CLI
FootprintNmap es ligero y portátil, y viene pre-empaquetado con algunas distribuciones de Linux (p. ej. Kali)Zenmap tiene un debido a la inclusión de una interfaz gráfica
Ease of useNmap requiere que aprender los comandos para ejecutar escaneosZenmap sólo necesita un objetivo para ejecutar una exploración
Suitable forNmap es mejor para usuarios avanzados que quieren ejecutar escaneos actualesZenmap es más fácil de principiantes
ReportsNmap escanea como archivos de textoLos escaneos Zenmap pueden guardar escaneos como imágenes de topología

Cómo descargar e instalar Zenmap y Nmap

Tanto Nmap como Zenmap están disponibles para descargar en nmap.org/download.html. En la parte superior de la página, puede seleccionar su sistema operativo haciendo clic en el enlace de anclaje correspondiente:

Sistemas operativos compatibles

Algunos de los sistemas operativos para los que están disponibles Nmap y Zenmap son:

Puede encontrar soporte para otros sistemas operativos en la parte inferior de esta página.

Cómo instalar Zenmap y Nmap en Windows

La siguiente guía lo guiará a través de los pasos de instalación de Zenmap y Nmap en una PC con Windows.

(versión 7.93 en el momento de escribir este artículo): última versión estable y luego haga clic en el enlace para descargar https://nmap.org/download.html#windows

para continuar:Acepto. El primer paso de la instalación es aceptar el acuerdo de licencia. Seleccione nmap-7.94-setup.exe. No voy a describir la instalación porque es dar siguiente, instalar, siguiente, siguiente, finalizar… doy fé de que pueden solos =).

Cómo instalar Zenmap en Kali Linux

Nmap viene incluido con Kali Linux (junto con cientos de otras herramientas útiles), por lo que no es necesario instalarlo por separado. Kali Linux se eliminó Zenmap de su paquete, pero aún puede instalarlo manualmente.

luego ingrese, CTRL+ALT+T

sudo apt update

Para actualizar todos los paquetes, ejecute

sudo apt full-upgrade -y

Dado que Zenmap requiere dependencias que ya no son compatibles con Kali Linux, necesitaremos usar «Kaboxer» (Kali Applications Boxer) para instalarlo como una aplicación empaquetada en un contenedor Docker. Correr

sudo apt install zenmap-kbx -y

Zenmap ahora estará disponible en la lista de aplicaciones:

Y ya esta instalado:

Pros y contras de NMAP frente a Zenmap

Ventajas de Nmap

  • Gratis y de código abierto.
  • Más pequeño y portátil que Zenmap.
  • Puede ejecutar análisis múltiples y simultáneos.
  • Se puede utilizar en entornos que carecen de GUI (por ejemplo, SSH).

Contras de Nmap

  • La CLI crea una curva de aprendizaje más pronunciada que las herramientas basadas en GUI.
  • Falta de opciones para exportar información en un formato legible por humanos adecuado para su presentación a partes interesadas no técnicas.

Ventajas de Zenmap

  • Gratis y de código abierto.
  • Interfaz gráfica de usuario (GUI) fácil de usar.
  • Muestra los resultados del escaneo en formatos de texto y gráficos.
  • Le permite guardar y comparar análisis realizados anteriormente.

Desventajas de Zenmap

  • Mayor huella en comparación con Nmap y otras herramientas basadas en CLI.
  • Requiere dependencias no necesarias para Nmap, que pueden estar disponibles o no para el sistema operativo elegido.

Conclusión:

Al cerrar este capítulo, hemos explorado las capacidades avanzadas de Nmap para el reconocimiento y enumeración. Desde la identificación de servicios hasta la elaboración de mapas de red detallados, Nmap se erige como un pilar fundamental en el arsenal del Pentester. La precisión y la meticulosidad en la fase de reconocimiento no solo revelan vulnerabilidades, sino que también guían la estrategia para fortalecer las defensas digitales. Con Nmap, el Pentester se convierte en un maestro de la información.

Nmap es la primera herramienta que utilizará en la etapa de escaneo y enumeración de muchas evaluaciones, sentando las bases para el resto de su pentest. Al concluir esta guía rápida de NMAP, te has armado con conocimientos cruciales para enfrentar cualquier desafío en el ámbito de la ciberseguridad. La maestría en el uso de NMAP te proporcionará la capacidad de explorar y asegurar redes con precisión, consolidando tu posición como un experto en ciberseguridad.

En este artículo, explicamos las diferencias entre Nmap y su GUI oficial, Zenmap. Zenmap es excelente para usuarios que no se sienten cómodos trabajando con consolas de línea de comandos y proporciona funcionalidad adicional en forma de búsquedas guardables y gráficos de topología.

Para aquellos que necesitan una utilidad de escaneo de red liviana pero potente y no tienen acceso a una GUI (por ejemplo, ejecutar escaneos mientras están conectados a través de SSH), Nmap es el camino a seguir.

En conclusión, estas son dos caras de la misma moneda, y ambas son una adición bienvenida a su arsenal de ciberseguridad. Puedes dominar Nmap con nuestro Curso completo de piratería ética de Nmap, o practicar el uso de ambos en tu propio laboratorio de piratería virtual

Preguntas frecuentes

¿Cuáles son algunos de los usos de Zenmap?

Zenmap (y Nmap) se utilizan para descubrir información útil sobre los puntos finales de destino en una red, incluyendo:

  • Nombres de host
  • Direcciones IP• Posibles servicios y versiones de servicio• Posibles sistemas operativos
  • Puertos abiertos

¿Cómo se relaciona Zenmap con Nmap?

Zenmap (y Nmap) se utilizan para descubrir información útil sobre los puntos finales de destino en una red, incluyendo:

  • Nombres de host
  • Direcciones IP
  • Posibles servicios y versiones de servicio
  • Posibles sistemas operativos
  • Puertos abiertos

¿Cuáles son algunas alternativas a Nmap?

Zenmap es la interfaz gráfica de usuario (GUI) oficial de Nmap.

Escáner de puertos avanzado (solo Windows): Una utilidad gratuita para Windows que puede encontrar rápidamente puertos abiertos en puntos finales de red y recuperar información sobre los programas que se ejecutan en esos puertos. La aplicación puede instalarse en su computadora o ejecutarse como un ejecutable portátil.

Masscan (multiplataforma): Masscan es un puerto de escala de Internet gratuito y de código abierto. escáner. Si bien Linux (incluido Kali Linux) es la plataforma de destino principal, su código fuente se puede compilar para ejecutarlo en otros sistemas como Windows o Linux.

Al llegar al final de este análisis, has comprendido las distintas facetas de Zenmap y Nmap. Ambas herramientas poseen características únicas y se adaptan a diversos escenarios de seguridad. La elección entre una u otra dependerá de tus necesidades específicas y del contexto de tu proyecto. Recuerda, en el mundo de la ciberseguridad, la elección informada es la mejor defensa.

No te detengas, sigue avanzando

Aquí tienes un propósito para este 2025 que debes considerar seriamente: si has querido mejorar tus habilidades en hacking, Ciberseguridad y programación ahora es definitivamente el momento de dar el siguiente paso. ¡Desarrolla tus habilidades aprovechando nuestros cursos a un precio increíble y avanza en tu carrera! El mundo necesita más hackers…

¿Quieres iniciarte en hacking y ciberseguridad pero no sabes por dónde empezar? Inicia leyendo nuestra guia gratuita: Cómo Iniciarse en Hacking y Ciberseguridad en 2025 que te lleva de 0 a 100. Desde los fundamentos más básicos, pasando por cursos, recursos y certificaciones hasta cómo obtener tu primer empleo.

Hemos creado una ruta de 0 a 100. Un plan de desarrollo que va desde las bases: cómo aprender hacking, qué aprender, en qué orden; pasando por las areas técnicas necesarias como Linux, Redes, Programación y los conocimientos necesarios en ciber seguridad, hacking, pentesting hasta la práctica y el inicio laboral: Crear tu propio laboratorio, certificaciones, adquirir experiencia e iniciarse laboralmente.

Hacker de 0 a 100 desde las bases hasta conseguir empleo

Este es un mega post. Una guía con más de 400 artículos que te llevaran por el camino del hacker. Esta guía es gratuita y esta creada gracias al esfuerzo y al trabajo combinado de Alvaro Chirou y mío (Laprovittera Carlos).

Creamos esta guía: Cómo Iniciarse en Hacking y Ciberseguridad en 2025 y curso: Cómo iniciarse en Hacking y Ciberseguridad para que puedas iniciarte en este mundo. Puedes arrancar ahora, GRATIS, solo necesitas un PC, conexión a internet y paciencia (Ser hacker NO ES un camino de la noche a la mañana).

El Hacking y la ciberseguridad es una carrera divertida, emocionante y gratificante que te recompensará y desafiará por igual. Sin embargo, para quienes buscan adentrarse en este campo en auge y en constante evolución, puede resultar difícil saber por dónde empezar. ¡Ahí es donde entra en juego nuestra guía en ciberseguridad!

Esta es la hoja de ruta hacia el trabajo de ciberseguridad de tus sueños. Te ayudará a entender qué conocimientos, habilidades y certificados son necesarios para alcanzar tus metas profesionales y tener una carrera próspera. Si quieres ser consultor de ciberseguridad, analista de malware, evaluador de penetración, analista de SOC o cualquier otro puesto de ciberseguridad, esta guía es lo que necesitas.

Esta guía va a tener una actualización constante durante todo el año. Para no hacer de esta guía un post maratónicamente largo voy a dividirlo en varios capítulos que van desde como iniciar en hacking y ciberseguridad, pasando por conocimientos básicos como Redes, Linux, Programación, Hasta como obtener certificaciones y trabajo. Cada capítulo contiene links a otros posts en donde desarrollo mejor cada tema y a webs externas que complementan este material.

Lo que vas a aprender en esta guía de Hacking y Ciberseguridad

Esta es la guía completa de Cómo Iniciarse en Hacking y Ciberseguridad en 2025:

Aprende con nuestros más de 100 cursos que tenemos disponibles para vos

¿Te gustaría enterarte de cuando lanzamos descuentos y nuevos cursos?

Sobre los autores

Álvaro Chirou

Yo soy Álvaro Chirou, tengo más de 20 Años de experiencia trabajando en Tecnología, eh dado disertaciones en eventos internacionales como OWASP, tengo más de 2.000.000 estudiantes en Udemy y 100 formaciones profesionales impartidas en la misma. Puedes seguirme en mis redes:

Laprovittera Carlos

Soy Laprovittera Carlos. Con más de 20 años de experiencia en IT brindo Educación y Consultoría en Seguridad de la Información para profesionales, bancos y empresas. Puedes seguirme en mis redes:

Compartimos estos recursos para ayudar a la comunidad de hacking y ciberseguridad. COMPARTE y Siéntete libre de agregar más sugerencias en los comentarios a continuación, respondemos todos y cada uno de los comentarios.