Nmap: Introduccion al escaneo de puertos en redes e internet


NMap es el programa para escaneo de puertos por excelencia, sirve para el bien y para el mal, veamos una introduccion y algunos comandos utiles.

Conoci Nmap hace varios años viendo videos de la Defcon, por entonces me parecia muy divertido, sin embargo no sabia mucho y con el tiempo fui aprendiendo mas y mas, y entonces comprendi que Nmap es una genialidad.

Que son los puertos?

Los puertos son “puertas” en los hosts o servidor esta esperando peticiones, todos las conexiones de red requiren una IP, un puerto y un protocolo, el puerto abierto recibe la conexion para transmitir datos como puede ser por HTTP o FTP.

Que es un protocolo?

Un protocolo es una especie de lenguaje que entienden el servidor y el cliente, en el caso del protocolo HTTP (HyperText Transfer Protocol o Protocolo de Transferencia de Hypertexto), el Apache funciona como Servidor y todos sabemos que el apache “escucha peticiones” en el puerto 80, el navegador es el cliente como puede ser el Google Chrome o Firefox, entonces mediante el protocolo HTTP, el apache y el google chrome se comunican para servir las pagins web.

Que es el Nmap?

El Nmap  o Network Mapper, es un programa que aprovecha el protocolo TCP/IP para saber si un HOST o SERVIDOR en red o internet tiene puertos abiertos.

Conocer los puertos abiertos de un host nos puede ayudar para buscar servicios ocultos, por ejemplo un servidor X puede tener 2 servidores HTTP, un servicio por default en el puerto 80 y un servicio oculto en el puerto 123456, pero los navegadores por default usan el 80, amenos que se le especifique otro.

También se pueden encontrar servicios SMTP, FTP, POP 3, entre otros muchos otros servicios.

Para descargar NMAP podemos ir a la pagina oficial. https://nmap.org/ Existe Nmap para windows, linux y mac. Yo usare Nmap para linux en la consola, tambien pueden instalar en windows y mac, los parametros del comando Nmap son iguales.

En linux [Linux Mint, Debian o Ubuntu] para instalar Nmap escribimos: sudo apt-get install nmap

Caracteristicas de Nmap

Nmap permite diferentes tipos de escaneo, desde los rapidos y sencillos hasta los complejos, alguns de las opciones generales de nmap son:

  • Escaneo rápido
  • Escaneo por host o dominio, por IP, por rango de IP, escanear IP o hosts desde un archivo
  • Escaneo de un puerto, un rango de puertos, los 100 puertos comunes o los 65535 puertos
  • Escaneo por tipo de escaneo Tcp connect, TCP syn, UDP
  • Deteccion de Servicio y sistema operativo
  • Formatos de salida en archivo, XML
  • Entre otras muchas opciones, incluso una para detectar la vulnerabilidad HeartBleed

Escaneo sencillo

Nmap [HOST]

Recuerden que el HOST puede ser un dominio o una IP.

El primer ejemplo seria el comando nmap + el host, por ejemplo: nmap google.com

Este comando nos devuelve los puertos mas comunes abiertos.

Existen básicamente 3 estados: abierto, cerrado y filtrado.

El resultado de google.com es de 2 puertos abiertos y 998 puertos filtrados.

También podemos ver que los servicios que corresponder a puerto 80 es http y puerto 443 es https.

Este escaneo es el mas rápido, a medida que agregamos parámetros el programa puede tardar un poco mas en proporcionar resultados.

Escaneo Rápido

El scaneo rapido usa los 100 puertos mas comunes.

nmap -F [HOST]

Recuerden que el HOST puede ser un dominio o una IP.

Ejemplo: nmap -F angellomix.com

Podemos ver algunos de los puertos, el estado y el servicio que brindan.

Detección de Sistema operativo y servicios

Nmap -A [HOST]

Esta opción sirve para detectar el sistema operativo y los servicios y sus versiones, muy util en caso de que se conoza alguna vulnerabilidad para alguna version de un servicio.

En este ejemplo: nmap -A angellomix.com

Segun el resultado se puede ver que el puerto FTP en el puerto 21 utiliza ProFTPd o KNFTPD.

El certificado y DNS alternativos están a nombre de hostinger.com.

El servidor HTTP en el puerto 80 utiliza OpenResty web app server

Incluso nos dice en el parametro http-generator que la version de WordPress es la 4.9.2

Y que el sistema operativo es Unix.

Deteccion de version de servicios estandar

nmap -sV [host]

Con esta opcion que es un poco mas ligera que la anterior se optienen datos mas generales, pero que tambien pueden ser de mucha ayuda en un escaneo.

Esta opcion nos dice que el servidor que usa es Apache httpd 2.2.16 en Debian Linux

Como podemos notar es posible juntar los datos de las dos opciones para obtener mejores conclusiones.

Conclusión

El Nmap es una herramienta muy buena para escanear puertos, en este articulo les mostré las opciones mas generales, espero escribir otro articulo explicando mas opciones del NMAP, espero les sirva esta introducción.

 


Leave a comment

2 thoughts on “Nmap: Introduccion al escaneo de puertos en redes e internet