Introducción
El reconocimiento comienza con un objetivo y un alcance claros. Un número de puerto, un estado de puerto, una huella de aplicación y una conclusión de vulnerabilidad describen cosas diferentes y no deben tratarse como intercambiables.
Utilizarás los servicios locales DNS y HTTP preparados para practicar un pequeño flujo de Nmap. Resuelve el objetivo, escanea únicamente sus puertos asignados, identifica los servicios y conserva la salida para analizarla.
Resuelve el objetivo y escanea los puertos seleccionados
En este paso resolverás un objetivo de entrenamiento proporcionado explícitamente y utilizarás un escaneo de conexión TCP sobre un pequeño conjunto de puertos.
Entra en Kali y elige el espacio de trabajo compartido:
kali
cd /home/labex/project
El objetivo autorizado es training-target.test, atendido por el servidor DNS local de entrenamiento. Resuelve su registro A utilizando el flujo DNS de la práctica anterior:
dig @127.0.0.1 -p 5353 +short training-target.test A
La respuesta es 127.0.0.1, la dirección de loopback del contenedor. Solo los puertos 8000, 8081 y 9999 de esa dirección están dentro del alcance. No escanees el host, la puerta de enlace ni ningún sistema público.
Nmap descubre información de hosts y servicios. Su opción -sT utiliza intentos normales de conexión TCP, por lo que este escaneo funciona como estudiante normal. -p limita el conjunto de puertos solicitado; las comas separan los números de puerto. -oN guarda la salida normal legible en el nombre de archivo que sigue:
nmap -sT -p 8000,8081,9999 -oN ports.txt 127.0.0.1
Espera a que termine el escaneo. Debe indicar los puertos 8000 y 8081 como open, mientras que el puerto 9999 es closed. Abierto significa que un servicio acepta conexiones TCP; cerrado significa que el objetivo respondió pero ningún servicio acepta conexiones en ese puerto. Un resultado filtered significa en cambio que Nmap no pudo determinar el estado porque se obstaculizaron las sondas o respuestas.
Lee el informe guardado:
cat ports.txt
Debe identificar el objetivo y contener las filas de los puertos solicitados. Sin detección de versiones, una etiqueta SERVICE puede provenir de la tabla convencional de nombres de puertos de Nmap. Trátala como una pista y no como prueba de la aplicación que realmente escucha.
Identifica servicios y extrae registros de puertos abiertos
En este paso utilizarás sondas de versión de servicios y guardarás un conjunto conciso de hallazgos.
La opción -sV pide a Nmap que sondee los servicios abiertos para obtener información de la aplicación. Es detección de servicios y versiones, no el motor de scripts de Nmap (NSE), y por sí sola no confirma una vulnerabilidad. Limita las sondas a los dos puertos abiertos de entrenamiento:
nmap -sT -sV -p 8000,8081 -oN services.txt 127.0.0.1
Los servicios proporcionados son servidores HTTP de Python. Los resultados deben identificar HTTP y pueden incluir detalles de Python o de la versión del servidor. Las versiones exactas de las herramientas y del intérprete pueden cambiar con el mantenimiento del entorno.
Lee el informe de versiones guardado:
cat services.txt
Compara su evidencia de servicios con los nombres convencionales de ports.txt. Un puerto no predeterminado puede ejecutar HTTP; el número de puerto no es la identidad de la aplicación.
Extrae las filas de puertos abiertos utilizando el flujo de filtrado de texto ya enseñado. Los espacios alrededor de open mantienen la coincidencia centrada en la columna de estado:
grep ' open ' services.txt > open-services.txt
cat open-services.txt
Deberías ver una fila por cada uno de los dos puertos abiertos. Estas filas registran exposición observada e información del servicio, no pruebas de que cualquiera de ellos sea explotable. Conserva el informe completo junto con los hallazgos concisos para poder revisar el contexto original.
Resumen
Resolviste un objetivo autorizado, realizaste un escaneo de conexión TCP acotado, interpretaste estados abiertos y cerrados y utilizaste sondas de versión de servicios. Conservaste los informes completos y extrajiste filas concisas de servicios abiertos sin confundir el descubrimiento con la confirmación de vulnerabilidades.

