Antes de empezar con la seguridad informática y empezar con el análisis de vulnerabilidades, pestenting y hacking ético, hay que definir una cosa muy importante que nos va a permitir entrar en las máquinas que vamos a analizar, escanear o "atacar".
Los puertos son "puertas" a las que se conectan servicios específicos, como por ejemplo un navegador Web que se conectará a través del puerto 80.

Diferentes puertos de comunicación en PC.
Existen varios tipos de puertos y servicios de acuerdo a la configuración de los servicios que van a dar dichos puertos. Una clasificación se puede dar como:
● Puertos paralelos: Transmiten varios bits por ciclo, como el puerto VGA y HDMI.
● Puertos USB: Incluyen USB-C, USB4 y Thunderbolt: Que son estándares modernos para conexiones.
● Puertos de red: Como el puerto Ethernet y los puertos Gigabit, que permiten la conexión a Internet.
● Puertos de expansión: Ranuras PCI Express que permiten añadir componentes adicionales al sistema.
Estos puertos son esenciales para la comunicación y conexión de dispositivos externos a la computadora, por lo que si te quieres dedicar al pentesting, hardening o el análisis forense, es fundamental que aprendas todo sobre los puertos.
¿Que son los puertos?.Si te imaginas un puerto al uso, este es un espacio grande donde los barcos pueden cargar y descargar mercancias y/o personas desde una dársena específica dentro del puerto. Las dársenas pueden ser privadas y solo se abrirán a barcos específicos para su tipo de mercancia.

Las dársenas privadas solo permiten acceso a barcos específicos.
Un puerto es un número entre el 0 y el 65535 que identifica un servicio o un programa que se queda escuchando en un puerto concreto.
Y como has podido deducir existen puertos físicos como el conector USB por ejemplo, y puertos lógicos que usan buses internos del sistema.
Tanto los puertos físicos como lógicos, utilizan diferentes protocolos para poder comunicarse entre sí y otras máquinas. Y siguiendo con nuestra analogía de puertos, un puerto puede estar abierto o cerrado. Si el puerto está abierto, se mantendrá a la escucha de peticiones sobre su puerto; si está cerrado, no podrá recibir ninguna petición (es decir el barco no podrá desembarcar).
A continuación os muestro la lista de puertos más usadas en los PCs actuales.

Puertos más usados en una máquina.
Escaneo de puertos.
De origen, los puertos de una máquina se abren o se cierran de acuerdo al uso que le van a dar las aplicaciones instaladas en tu PC. Así por ejemplo, sabemos que en tu máquina PC seguramente tengas el puerto 80 abierto porque estás leyendo esta página web. Pero hay otros servicios que se están ejecutando en segundo plano (y no los ves), y que tienen puertos abiertos sin que te enteres (seguramente muchos más de los que crees).
Existen muchas herramientas para conecer los puertos de tu PC o máquina en uso, pero la que vamos a usar más a menudo es NMAP.
Uso de NMAP fundamental.NMAP no solo escanea puertos. Realiza otras funciones que como auditor de seguridad infromática te van a venir de perlas. Pero en esta clase solo vamos a fijarnos en las funciones para trabajo con puertos más usadas.
Antes de nada, ¿tienes NMAP? A continuación te muestro los enlaces de descarga para Windows. En tu Kali Linux ya viene por defecto la última versión (si tienes actualizada tu máquina).
● Descargar NMAP para Windows.
NOTA: Los scripts que vamos a ejecutar en esta clase se realizarán desde mi máquina virtual de Kali Linux. Y el destino de los escaneos será mi máquina HOST con W10.
El escaneo de puertos fundamental nos va a servir para averiguar qué puertos están abiertos o cerrados. Esto lo averigua NMAP al enviar una serie de paquetes al puerto en concreto para averiguar su estado. Es como si NMAP preguntase a cada puerto "¿Cual es tu estado?"
Entre los escaneos más usados están:
● Escaneo -sS. O SYN Que es un escaneo que es dificil de detectar porque no completa la conexión TCP.
● Escaneo -sT. O escaneo TCP Connect, que realiza un TCP básico a cada puerto indicado.
● Escaneo -sU. Escaneo de puertos que corren UDP.
● Escaneo -sA. Escaneo ACK, que descubre las reglas del firewall.
Primero, como siempre hay que saber cual es la IP de la máquina que vas a escanear. Con NMAP puedes hacer tanto un escaneo a una sola máquina como a todas las máquinas de tu red, incluso en internet a páginas Web y servicios en la nube. Pero vamos paso a paso.

Saca las Ips con IPCONFIG en W11 y IFCONFIG en Linux.
Todos los scripts que se realicen en esta web son orientativos a la formación e investigación. Mirpas.com no se hará responsable bajo ningún concepto del mal uso que hagas de esta herramienta.
Algunos escaneos.
A continuación vamos a usar varios scripts. Para que NMAP escanee los puertos más básicos abiertos en tu máquina con Windows, tendremos que usar un script básico nmap -p seguido de los puertos que quieres escanear más la dirección IP de la máquina que quieres enviar el escaneado. Por ejemplo si queremos escanear el estado de tres puertos:

Escaneo de puertos 22, 80 y 443.
Como puedes ver en la anterior captura no solo escanea el estado de los puertos; también te devuelve el nombre de máquina y su dirección MAC. Como puedes ver el puerto 80 para navegación Web está abierto, por lo que puede recibir peticiones HTTP dicha máquina. También tiene el puerto 443, que permite recibir peticiones seguras con HTTPS. sin embargo el puerto SSH lo tien cerrado.
Pero puede que nos interese escanear los primeros 1000 puertos de nuestra máquina:

Escaneo de un rango de puertos.
en este escaneo ya vemos más puertos abiertos, como el NETBIOS o el ISS entre otros puertos que utiliza Windows especificamente, por lo que también con NMAP podemos sacar el sistema operativo de la máquina a la que dirigimos el escaneado.
Si quisieramos escanear todos los puertos de una máquina no utilizariamos ningún número ni rango de puerto:
Pero este escaneado puede llevar algún tiempo ya que preguntas a cada uno de los 65535 puertos de la máquina objetivo.
Otros escaneos son:
Escaneo SYN + versiones.Hace que NMAP escanee de forma discreta qué puertos están abiertos en la máquina y qué programa y versión esté ocupando dicho puerto abierto.

Escaneo de puertos abiertos, el programa ligado y su versión.
Sabiendo qué servicio y versión está utilizando tu máquina objetivo puedes encontrar una vulnerabilidad para dicho servicio que te permita entrar a la máquina simulando un servicio concreto.
Escaneo UDP.Como el protocolo UDP no está orientado a la conexión, por lo que NMAP tiene que interpretar la respuesta de la máquina. Con este escaneado envia paquetes ICMP a tráves de los puertos que escanea.
Este escaneo es muy lento ya que depende de los mensajes ICMP que devuelva la máquina. Y este tipo de escaneo se realiza para buscar información sobre DNS (puerto 53), DHCP (67-68), SNMP (161-162), NPT (123), TFTP (69), entre otros.
Con NMAP puedes realizar escaneos dobles, como por ejemplo realizar un escaneo SYN más el UDP:
Pero el problema de no establecer un rango de puertos específicos es que el escaneo es muy pesado y lleva mucho tiempo. Podemos ajustar el número de peticiones que hacemos a los puertos de la máquina objetivo ajustando el T de paquetes por escaneado. Además, podemos forzar el escaneado de dicha máquina, con lo que reduciremos el tiempo del escaneado. Pero por desgracia, este escaneo es muy agresivo (llama la atención de los IDS), que estudiaremos proximamente.
NMAP tiene cinco niveles de tiempo de escaneado, desde el T0 que es el que más lleva pero es más seguro hasta T5, que es el más agresivo de todos porque está mandando paquetes continuamente a la red. Mi recomención es que uses un T1 que es de los más silenciosos y no sueles llamar la atención.
Escaneo de rango de IPs.Y NMAP no solo puede aplicar el escaneado a nuestra máquina objetivo, sino que también puede hacerlo a otras máquinas en la propia red. Así podemos hacer un escaner a la red interna poniendo la ruta total. Este escaneo se llama escaneo de descubrimiento de hosts y se aplica sobre la subred local. Por lo que podrás escanear todas tus máquinas virtuales siempre que estén bien configuradas las redes de las mismas. También se llama Ping Sweep.
Este tipo de escaneo de tu red local, te puede permitir descubrir los dispositivos conectados a la misma. Por ejemplo si realizas el escaneo en tu red de casa, te sacará los dispositivos y el nombre de red que tienen:

Escaneo de red local te dice qué dispositivos están conectados.
Además, NMAP viene instalados con una serie de scripts propios que nos servirán para identificar vulnerabilidades en la red escaneada. Pero esto lo veremos en siguientes clases.