NMAP – Escaneo de puertos

La forma en la que la información de las redes viajan se hace mediante los protocolos principalmente TCP y UDP.

  • El protocolo TCP (Transfer Control Protocol) es usado en conexiones http, pop3, imap y smtp. Está orientado a la conexión, lo que significa que se debe establecer una conexión entre cliente y servidor antes de poder enviar los datos. El servidor debe estar en escucha esperando solicitudes de conexión del cliente. Ej. aplicaciones que corren en servidor.
  • Por otro lado, el protocolo UDP (User Datagram Protocol) no requiere una conexión para ser establecido y es usado por protocolos con DNS y otros que priorizan comunicaciones en tiempo real como directos o video streaming, etc.

Digamos que TCP prioriza la calidad de la conexión frente a la velocidad, y en UDP, la velocidad es más importante, aunque el vídeo o la señal sea de baja calidad…

Existen diferentes puertos cuando se hace una petición a una web y la consola nos puede reportar los que existen para esa IP.

El volumen total de puertos disponibles es de 65535, y de estos, 1.023 son los que ofreces servicios privilegiados en TCP y UDP como estos.

También puedes consultar este cheat sheet con los puertos más comunes explicados en un pdf (enlace).

Entre los cinco más importantes o usados están:

PuertosProtocolos
20/21 (TCP)FTP
22 (TCP)SSH
80 (TCP)HTTP
443 (TCP)SSL/TLS (HTTPS)
88 (TCP)Kerberos

NMAP (Network Mapper)

«…programa de código abierto que sirve para efectuar rastreo de puertos… Fue creado originalmente para Linux aunque actualmente es multiplataforma. Se usa para evaluar la seguridad de sistemas informáticos, así como para descubrir servicios o servidores en una red informática, para ello Nmap envía unos paquetes definidos a otros equipos y analiza sus respuestas.» por Wikipedia

Por defecto, NMAP escaneará los puertos por TCP, si quieres hacerlo por UDP tienes que especificarlo con el comando -sU.

Para hacer un análisis rápido de si la máquina está activa, bastaría con aplicar la siguiente ejecución de comandos:

nmap -sn IP

Ejemplo de escaneo utilizado por S4vitar:

–open

Sólo los puertos con status abierto, no closed ni filtered. Si no se especifica este comando, la herramienta analizará los 1000 puertos más comunes.

T5

Control del temporizado o tiempo del escaneo, en entornos controlados se puede subir a la plantilla del temporizado a 5 que es el máximo número. Esta opción genera mucho ruido pero en entornos controlados no hay problema. De esta forma el escaneo iría mucho más rápido.

-vvv

Verbose para no esperar a finalizar el escaneo y que toda la información que encuentre sobre los puertos lo vaya reportando en consola.

-n

Para no aplicar resolución DNS porque sino ralentiza el escaneo, también según la máquina que toque afectará más o menos.

-sS
tcpsyncportscan

–min-rate 5000 5.000 paquetes por segundo ; se quitaría el t5

-Pn Host Discovery quitarlo

-p- para escanear todo el rango de puertos, los 65535

-oG formato grepeable al fichero Allports (extractPorts)

-sCV para analizar los servicios y versiones que corren para los puertos que se especifiquen

nmap -p- --open -T5 (-sS en Windows) --min-rate 5000 -vvv -n -Pn IP -oG allPorts

Scripts básicos de reconocmiento de servicios y versionado:

nmap -sCV -pPUERTO1,PUERTO2 IP