En el tercer capítulo de nuestra «Guía de Hacking y Pentesting», nos sumergiremos en las profundidades del reconocimiento y enumeración con Nmap. Esta herramienta emblemática se convierte en nuestro aliado estratégico para descubrir información crucial sobre objetivos, identificando servicios, sistemas operativos y arquitecturas de red. Prepárate para desentrañar los secretos del arte del reconocimiento en ciberseguridad.

Tabla de contenidos

¿Te gustaría enterarte de cuando lanzamos descuentos al Máximo o Nuevos Cursos?

Uso de herramientas de escaneo de puertos y servicios

El escaneo de puertos y servicios es una práctica común en ciberseguridad para identificar qué servicios y puertos están abiertos en un sistema. Aquí hay algunas herramientas populares que los profesionales de ciberseguridad suelen utilizar para realizar estas actividades:

Nmap (Network Mapper):

Nmap es una herramienta de código abierto que realiza escaneo de puertos y detección de servicios en una red. Es altamente versátil y puede realizar escaneos rápidos o detallados, incluyendo la detección de sistemas operativos.

Masscan:

Masscan es conocido por su velocidad extrema. Puede escanear la totalidad de los puertos en una red en cuestión de segundos. Es ideal para escaneos rápidos y eficientes.

Zenmap:

Zenmap es la interfaz gráfica de usuario (GUI) para Nmap. Ofrece una representación visual de los resultados del escaneo de puertos y servicios, facilitando la interpretación de la información.

Angry IP Scanner:

Esta herramienta de escaneo de IP es simple pero efectiva. Proporciona información sobre los hosts en una red, incluyendo puertos abiertos y servicios en ejecución.

Hping:

Hping es una herramienta de escaneo de red que permite la construcción y envío de paquetes TCP, UDP y ICMP. Puede utilizarse para realizar escaneos de puertos y evaluar la respuesta de los sistemas.

Netcat (nc):

Aunque Netcat no está diseñado específicamente para el escaneo de puertos, es una herramienta multifuncional que puede utilizarse para verificar la disponibilidad de puertos en un host.

Amap:

Amap (Application Mapper) se centra en la detección de servicios y aplicaciones en puertos específicos. Puede ser útil para identificar servicios más allá de la simple detección de puertos abiertos.

Unicornscan:

Unicornscan es una herramienta de escaneo de red diseñada para ser rápida y eficiente. Puede realizar escaneos de puertos y servicios de manera precisa y rápida.

Recuerda que el uso de estas herramientas debe llevarse a cabo de manera ética y legal, asegurándote de tener la autorización adecuada antes de realizar cualquier escaneo en una red.

¿Qué es el escaneo de puertos?

El escaneo de puertos es un proceso mediante el cual, a través de herramientas especializadas, se analizan los puertos de un sistema informático. Al escanear puertos se puede obtener información como los puertos que están abiertos, los que están cerrados o aquellos que están protegidos con cortafuegos.

Este procedimiento se puede usar con distintas finalidades. Por ejemplo, los administradores de sistemas lo emplean para conocer los servicios que está ofreciendo la máquina o para analizar el estado de los puertos y detectar y subsanar posibles vulnerabilidades.

Sin embargo, como veremos más adelante, el escaneo de puertos abiertos también se puede usar con fines poco éticos. Del mismo modo que los administradores de redes lo pueden usar para detectar y corregir vulnerabilidades, los ciberdelincuentes lo pueden usar para explotar dichas brechas de seguridad.

Técnicas de escaneo de puertos

A continuación, vemos las técnicas más habituales para realizar un scan de puertos.

TCP connect() scanning:

Es una de las técnicas más comunes para realizar escaneos TCP y cuenta con las ventajas de que es un método muy rápido y que apenas requiere privilegios. Básicamente, consiste en usar la llamada a sistema connect(). Si se logra establecer conexión, quiere decir que el puerto está abierto; si no se consigue conectar, significa que el puerto está cerrado.

TCP SYN scanning:

Este método se suele denominar “half-open” o mitad abierta. En realidad, no se crea una conexión TCP completa. En lugar de eso, se envían paquetes SYN como si se fuera a establecer una conexión. Si se recibe como respuesta un SYN-ACK es que el puerto está abierto, pero si se recibe un RST es que el puerto está cerrado. El principal inconveniente de este método es que se requieren privilegios de ROOT para poder llevarlo a cabo.

TCP FIN scanning:

Es una técnica de escaneo de puertos que permite penetrar en sistemas en los que los firewalls o packet filters podrían detectar el uso de paquetes SYN. Usando los paquetes SYN, puede pasar que la respuesta sea un RST si el puerto está cerrado, y que si está abierto el sistema no dé una respuesta. Con los paquetes FIN esto no ocurre.

Fragmentation scanning:

No se trata de un método de escaneo de puertos propiamente dicho, sino que se basa en una modificación de técnicas anteriores. Consiste en dividir o fragmentar los paquetes SYN o FIN que se envían, con el objetivo de que no sean detectados por los firewall o los filtradores de paquetes.

TCP reverse ident scanning:

Gracias al protocolo “ident” se puede conocer el nombre de usuario y el dueño de los servicios que se están usando dentro de una conexión TCP. Para ello es necesario establecer una conexión TCP completa.

UDP ICMP port unreachable scanning:

Es una técnica que se diferencia de las anteriores en que no se basa en el protocolo TCP, sino que usa el UDP. Este protocolo, aunque suele ser más sencillo, resulta más complejo a la hora de escanear puertos, por lo que el proceso se puede volver significativamente más lento.

¿Escanear puertos es siempre legal?

No, el escaneo de puertos no siempre es legal. El port scanning se puede utilizar para fines legítimos. Por ejemplo, para que los administradores de redes y sistemas comprueben el estado de los puertos, las conexiones y los programas o aplicaciones que está ofreciendo el equipo. También se puede usar como un método para el análisis de vulnerabilidades y brechas de seguridad. Los administradores pueden escanear los puertos para crear un mapa de las conexiones y detectar posibles fallos o vulnerabilidades. Por ello, se puede decir que el escaneo de puertos es totalmente legal, siempre y cuando se tenga permiso para acceder al equipo y se realice con fines legítimos.

Sin embargo, también puede ser usado con objetivos poco éticos. Muchos atacantes emplean este tipo de técnicas para aprovecharse de esos fallos de seguridad. Al final, los puertos abiertos pueden funcionar como una puerta de entrada a un equipo, para luego realizar otras actividades maliciosas, como ataques de denegación de servicio. 

Ataques de escaneo de puertos. Qué son y cómo evitarlos

Al hilo del punto anterior, cabe decir que los ataques de escaneo de puertos son uno de los métodos más empleados por los crackers para descubrir vulnerabilidades en un sistema. De hecho, lo primero que hará un cibercriminal antes de lanzar su ataque será un portscan, lo que le permitirá saber información como la arquitectura de la red, los servicios que ofrecemos en nuestros equipos y, por supuesto, buscar agujeros o brechas de seguridad en los mismos. Dicho de otro modo, cada puerto abierto es una potencial puerta de entrada al equipo, por lo que es necesario tomar ciertas medidas de seguridad.

Una de ellas es no abrir más puertos de los necesarios, Normalmente, los equipos ya vienen con una serie de puertos abiertos predeterminados para poder ofrecer los servicios y funciones básicas. También es aconsejable el uso de firewall o filtradores de paquetes, los cuáles funcionan como una barrera que protege al equipo de intrusos. Otra recomendación es mantener siempre los equipos y sistemas actualizados a su última versión, ya que los desarrolladores suelen crear parches que subsanan posibles vulnerabilidades.

Por último, está la opción de usar herramientas como PortScanDetector, que permite detectar cuándo se está realizando un rastreo de nuestros puertos. Básicamente, avisa a los administradores en aquellos casos en los que han sido consultados más de 10 puertos, lo cual puede indicar que un hacker está intentando acceder al equipo.

El escaneo de puertos y servicios es una práctica común en pruebas de penetración y evaluaciones de seguridad para identificar servicios activos, puertos abiertos y posibles vulnerabilidades en un sistema. Aquí hay pasos generales y algunas herramientas comunes utilizadas para realizar este tipo de escaneo:

Pasos Generales:

  • Definir el Alcance: Establecer el alcance de la prueba, identificando los sistemas o redes específicas a escanear y obteniendo el consentimiento del propietario.
  • Seleccionar Herramientas Apropiadas: Elegir herramientas de escaneo de puertos y servicios que se ajusten a los requisitos del proyecto y al entorno que se va a evaluar.
  • Configurar Parámetros: Configurar los parámetros de la herramienta de escaneo, como rango de direcciones IP, rango de puertos y opciones de escaneo específicas.
  • Realizar el Escaneo: Ejecutar la herramienta de escaneo para identificar los puertos abiertos y los servicios en los sistemas objetivo.
  • Analizar Resultados: Revisar los resultados del escaneo para identificar servicios, versiones de software y posibles vulnerabilidades asociadas a los puertos encontrados.
  • Registrar y Documentar: Mantener registros detallados de los resultados del escaneo, incluyendo los servicios identificados, versiones y cualquier hallazgo relevante.

Herramientas Comunes de Escaneo de Puertos y Servicios:

Nmap: Herramienta versátil de escaneo de puertos y mapeo de redes.

Ejemplo de Uso: nmap -p 1-1000 192.168.1.1

Masscan: Escáner de puertos de alto rendimiento.

Ejemplo de Uso: masscan -p1-65535 192.168.1.1

Unicornscan: Herramienta de escaneo de red y puertos con enfoque en velocidad y eficiencia.

Ejemplo de Uso: unicornscan -mU -Iv 192.168.1.1:a

Hping3: Herramienta avanzada de envío de paquetes, útil para escaneo de puertos.

Ejemplo de Uso: hping3 -S -p 80 192.168.1.1

Netcat (nc): Herramienta de utilidad de red que puede utilizarse para escanear puertos.

Ejemplo de Uso: nc -zv 192.168.1.1 1-100

Es fundamental recordar que el escaneo de puertos y servicios debe llevarse a cabo de manera ética y legal, con el consentimiento explícito del propietario del sistema o la red objetivo.

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

Guía Rápida de NMAP – La lista definitiva para hackers de NMAP

Desbloquea todo el potencial de NMAP con nuestra guía definitiva para hackers. Descubre tácticas avanzadas y estrategias esenciales para fortalecer tu destreza en ciberseguridad.

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 vs Nmap: ¿Cuál usar y cuándo?

Descubre la batalla entre Zenmap y Nmap: ¿Cuál elegir para tus necesidades de ciberseguridad? Analizamos las claves de estas herramientas para una elección informada.

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.

Podes saber más en la implementación de NMAP:

Seguridad en Redes – VPN, Firewall y NMAP

Explora la esencia de la seguridad en redes: VPN, Firewall y Nmap. Descubre cómo fortalecer tu red contra amenazas digitales avanzadas.

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.

Podes prácticar con con este box:

TryHackMe #8 – Nmap

Domina el escaneo de red con TryHackMe #8. Descubre Nmap, la herramienta esencial para identificar dispositivos, evaluar servicios y fortalecer tus habilidades en ciberseguridad.

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.

Así que aquí tienes un propósito de Año Nuevo que vale la pena considerar seriamente: si has querido mejorar tus habilidades en seguridad cibernética pero nunca lo has logrado, ahora es definitivamente el momento de dar el siguiente paso. ¿Por qué no considerar nuestro curso Universidad Hacking. Todo en Ciberseguridad. Curso Completo con una excelente relación calidad-precio? ¡Desarrolla tus habilidades cibernéticas y avanza en tu carrera!

Universidad Hacking. Todo en Ciberseguridad. Curso Completo

Aprende Hacking Ético y Ciberseguridad sin necesitar conocimientos Previos. Practica Hacking Ético y Ciberseguridad aquí: https://achirou.com/universidad

El Hacking Ético y Ciberseguridad es Transversal a todo lo que sea Tecnología. Es decir, cualquier dispositivo inteligente, sea Celular, Computadora, o hasta hoy un Vehículo, debe haber Seguridad informática.

¿Esto que significa?

Que hoy más que nunca, se necesitan personas capacitadas en este rubro para trabajar.

Por esa razón cree esta formación profesional para compartirte mis conocimientos y experiencia en la materia y puedas iniciar en este mundo del Hacking Ético y Ciberseguridad.

Te voy a estar acompañando en el proceso de aprendizaje, donde si estas empezando desde 0, sin conocimientos previos, no es un impedimento ya que iniciaremos como si no supieras nada de la materia.

Y si sos una persona con conocimientos, podrás iniciar directamente en el nivel más avanzado o en el que tu elijas.

Como en todos mis cursos en udemy, tendrás muchísima practica para que materialices lo que vas aprendiendo.

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 500.000 estudiantes en Udemy y 100 formaciones profesionales impartidas en la misma.

Empieza a aprender ya mismo!

Recuerda que tienes Acceso de por vida al curso y recibirás las actualizaciones que se hagan sobre el mismo.

Lo que aprenderás

  • Aprende Seguridad informática
  • Te enseñare Hacking Ético
  • Veremos Ciberseguridad
  • La base principal del Hacking, Redes
  • Esto es alternativo que puedes aprender, Programación (python)
  • Necesitaras saber Python para, Hacking con Python
  • Te enseñare Análisis de Malware, además haremos laboratorios, practicas y ejecutaremos Malware para que veas su comportamiento
  • Te enseñare a reforzar tu Privacidad y Anonimato
  • Aprenderás una de las herramientas mas populares por excelencia en el mundo del Hacking, Metasploit
  • Es importante que aprendas Seguridad informática Mobile ya que usamos nuestro celular como una PC
  • Veremos también el top 10 de Owasp Web
  • Veremos también el top 10 de Owasp mobile
  • Veremos también el top 10 de Owasp API
  • Ante la demanda del mercado, te enseñare Seguridad informática para empresas
  • Veras también la suit de herramientas de seguridad informática en un sistema operativo, Kali Linux
  • Herramientas de hacking para el celular en Termux
  • Seguridad informática en WordPress
  • Análisis de trafico en Wireshark

Aprende Hacking Ético y Ciberseguridad sin necesitar conocimientos Previos. Practica Hacking Ético y Ciberseguridad aquí: https://achirou.com/universidad

¿Te gustaría enterarte de cuando lanzamos descuentos al Máximo o Nuevos Cursos?