Introducción
En este laboratorio, aprenderás los fundamentos del reconocimiento utilizando Kali Linux, centrándote en técnicas de escaneo de redes y consultas DNS. Esta experiencia práctica te guiará a través de la identificación de puertos y servicios abiertos en un sistema objetivo mediante nmap, una potente herramienta de escaneo de redes, y la recopilación de información DNS utilizando dnsrecon. Diseñado para principiantes, este laboratorio proporciona instrucciones paso a paso dentro de un entorno seguro de máquina virtual LabEx que se ejecuta en un host en la nube independiente. Realizarás escaneos de puertos con nmap, enumerarás servicios mediante scripts, consultarás registros DNS y guardarás tus hallazgos para su análisis. Al abrir la terminal, te conectarás automáticamente al shell del contenedor de Kali Linux, listo para comenzar a practicar sin necesidad de iniciar o ingresar al contenedor manualmente.
Instalación y ejecución de un escaneo básico con Nmap
En este primer paso, aprenderás a instalar y utilizar nmap, una potente herramienta para el escaneo de redes, con el fin de identificar puertos abiertos en un sistema objetivo. El escaneo de puertos es una habilidad fundamental en el reconocimiento, ya que te ayuda a descubrir qué servicios se están ejecutando en una máquina y a detectar posibles vulnerabilidades. Este paso está diseñado para principiantes y te guiaremos a través de cada detalle.
Cuando abras la terminal en el entorno de la máquina virtual LabEx, te conectarás automáticamente al shell del contenedor de Kali Linux. No es necesario iniciar el contenedor manualmente ni ingresar al shell; el entorno ya está configurado para ti.
Antes de comenzar, entendamos qué hace nmap. nmap, abreviatura de Network Mapper, es una herramienta utilizada para descubrir hosts y servicios en una red mediante el envío de paquetes y el análisis de las respuestas. Los puertos abiertos a menudo indican servicios en ejecución, como servidores web o SSH, que pueden ser puntos de entrada para un análisis posterior.
Ahora, instalemos nmap y realicemos un escaneo básico. Sigue estas instrucciones cuidadosamente:
Primero, actualiza la lista de paquetes para asegurarte de poder instalar la versión más reciente de
nmap. Escribe el siguiente comando en la terminal y presiona Enter:apt updateEste comando actualiza la lista de paquetes disponibles. Puede tardar unos segundos en completarse y verás la salida que muestra el proceso de actualización.
A continuación, instala
nmapescribiendo el siguiente comando y presionando Enter:apt install -y nmapEl indicador
-yconfirma automáticamente la instalación sin pedirte confirmación. Espera a que la instalación finalice; debería tomar poco tiempo. Verás la salida que indica el progreso de la instalación.Una vez instalado
nmap, ejecutemos un escaneo básico enlocalhost(tu propio contenedor, dirección IP127.0.0.1), que es un objetivo seguro para practicar. Escribe el siguiente comando y presiona Enter:nmap localhostEste comando escanea los puertos más comunes en
localhost. Después de unos segundos, verás una salida similar a la siguiente (la salida real puede variar):Starting Nmap 7.91 ( https://nmap.org ) at ... Nmap scan report for localhost (127.0.0.1) Host is up (0.00010s latency). Not shown: 997 closed ports PORT STATE SERVICE 80/tcp open http ... Nmap done: 1 IP address (1 host up) scanned in 0.05 secondsEn esta salida,
Host is upconfirma que el objetivo es alcanzable. La tabla enumera los puertos abiertos, su estado (opensignifica accesible) y el servicio asociado (comohttpen el puerto80). Esta información te ayuda a comprender qué servicios se están ejecutando en el sistema.
Este paso te ha introducido en la instalación y el uso de nmap para el escaneo básico de puertos. Has dado el primer paso en el reconocimiento al identificar puertos abiertos en un objetivo seguro. En el siguiente paso, avanzaremos guardando los resultados del escaneo para un análisis posterior. Asegúrate de sentirte cómodo ejecutando el comando nmap antes de continuar.
Guardar los resultados del escaneo de Nmap en un archivo
Ahora que has realizado un escaneo básico con nmap, aprendamos a guardar la salida de tu escaneo en un archivo para futuras referencias. Guardar los resultados es una habilidad esencial en el reconocimiento, ya que te permite documentar los hallazgos y analizarlos más tarde sin necesidad de volver a ejecutar los escaneos. Este paso se basa directamente en el anterior, así que asegúrate de haber completado el escaneo básico con nmap antes de continuar.
La redirección de salida en Linux te permite guardar los resultados de un comando en un archivo en lugar de mostrarlos en la terminal. Esto se hace utilizando el símbolo >, que escribe la salida en un archivo especificado, sobrescribiéndolo si ya existe. Guardaremos los resultados en el directorio /root dentro del contenedor de Kali Linux, que es tu área de trabajo predeterminada.
Sigue estas instrucciones para guardar los resultados de tu escaneo con nmap:
Realiza otro escaneo con
nmapenlocalhosty redirige la salida a un archivo llamadonmap_scan.txten el directorio/root. Escribe el siguiente comando en la terminal y presiona Enter:nmap localhost > /root/nmap_scan.txtEl símbolo
>redirige la salida del comandonmap localhostal archivo/root/nmap_scan.txt. No verás los resultados del escaneo en la terminal porque se están guardando en el archivo. Espera unos segundos a que el escaneo finalice.Para confirmar que la salida se guardó correctamente, visualiza el contenido del archivo escribiendo el siguiente comando y presionando Enter:
cat /root/nmap_scan.txtDeberías ver una salida similar a la siguiente (la salida real puede variar):
Starting Nmap 7.91 ( https://nmap.org ) at ... Nmap scan report for localhost (127.0.0.1) Host is up (0.00010s latency). Not shown: 997 closed ports PORT STATE SERVICE 80/tcp open http ... Nmap done: 1 IP address (1 host up) scanned in 0.05 secondsEsto confirma que los resultados del escaneo se guardaron correctamente en
/root/nmap_scan.txt. Guardar las salidas en archivos es una forma práctica de realizar un seguimiento de tus hallazgos durante las tareas de reconocimiento.
En este paso, has aprendido a redirigir la salida de nmap a un archivo para su documentación. Esta habilidad será útil a medida que avancemos hacia técnicas de escaneo más avanzadas en el siguiente paso. Asegúrate de poder ver los resultados guardados en el archivo antes de continuar.
Enumeración de servicios con scripts de Nmap
Basándonos en tus habilidades básicas de escaneo, este paso introduce la enumeración de servicios utilizando scripts de nmap para recopilar información detallada sobre los servicios que se ejecutan en los puertos abiertos. La enumeración de servicios es una parte crítica del reconocimiento, ya que ayuda a identificar versiones específicas de servicios que podrían tener vulnerabilidades conocidas. Este paso asume que tienes nmap instalado y que has completado los escaneos anteriores.
La enumeración de servicios va más allá de simplemente encontrar puertos abiertos; su objetivo es identificar el software exacto y la versión que se ejecuta en esos puertos. nmap proporciona un motor de scripting llamado NSE (Nmap Scripting Engine), que incluye scripts preconstruidos para detectar detalles de servicios y posibles problemas. Utilizaremos el indicador -sV para la detección de versiones en este paso.
Enumeremos los servicios en localhost utilizando las siguientes instrucciones:
Ejecuta un escaneo con
nmapcon detección de versiones enlocalhost. Escribe el siguiente comando en la terminal y presiona Enter:nmap -sV localhostEl indicador
-sVle dice anmapque sondee los puertos abiertos para obtener información detallada sobre el servicio y la versión. Espera a que el escaneo finalice; puede tardar unos segundos más que el escaneo básico. Deberías ver una salida similar a la siguiente (la salida real puede variar):Starting Nmap 7.91 ( https://nmap.org ) at ... Nmap scan report for localhost (127.0.0.1) Host is up (0.00010s latency). Not shown: 997 closed ports PORT STATE SERVICE VERSION 80/tcp open http Apache httpd 2.4.41 ((Ubuntu)) ... Service detection performed. Please report any incorrect results at https://nmap.org/submit/ . Nmap done: 1 IP address (1 host up) scanned in 0.10 secondsEn esta salida, puedes ver la versión del servicio que se ejecuta en el puerto
80, comoApache httpd 2.4.41. Esta información es valiosa porque las versiones específicas pueden tener vulnerabilidades conocidas que se pueden investigar más a fondo.Guarda los resultados de este escaneo de detección de versiones en un archivo llamado
service_scan.txten el directorio/root. Escribe el siguiente comando y presiona Enter:nmap -sV localhost > /root/service_scan.txtComo antes, el símbolo
>redirige la salida al archivo especificado. No verás los resultados en la terminal ya que se guardan directamente en/root/service_scan.txt.Confirma que la salida se guardó visualizando el contenido del archivo. Escribe el siguiente comando y presiona Enter:
cat /root/service_scan.txtDeberías ver la misma salida detallada que arriba, ahora almacenada en el archivo para futuras referencias.
Este paso te ha mostrado cómo utilizar nmap para la enumeración de servicios, proporcionando información más profunda sobre los servicios que se ejecutan en un objetivo. En el siguiente paso, exploraremos el reconocimiento DNS utilizando otra herramienta. Asegúrate de entender cómo ejecutar escaneos de detección de versiones y guardar la salida antes de continuar.
Instalación y consulta de DNS con dnsrecon
En este paso, cambiamos el enfoque hacia el reconocimiento DNS utilizando dnsrecon, una herramienta para recopilar información DNS sobre un dominio. La enumeración DNS ayuda a identificar subdominios, servidores de correo y otros detalles de infraestructura, que son cruciales para comprender la presencia en línea de un objetivo. Este paso está diseñado para principiantes y asume que estás trabajando dentro del shell del contenedor de Kali Linux.
El DNS, o Sistema de Nombres de Dominio, traduce nombres de dominio como example.com en direcciones IP que las computadoras utilizan para comunicarse. Los registros DNS incluyen información como direcciones IP para hosts (registros A), servidores de correo (registros MX) y más. dnsrecon es una herramienta que consulta estos registros para descubrir detalles sobre la configuración de un dominio. Para este laboratorio, utilizaremos example.com como un objetivo seguro para practicar.
Sigue estas instrucciones para instalar y utilizar dnsrecon:
Actualiza la lista de paquetes para asegurarte de poder instalar la versión más reciente de
dnsrecon. Escribe el siguiente comando en la terminal y presiona Enter:apt updateEsto actualiza la lista de paquetes. Espera a que el proceso finalice; verás la salida que indica el progreso de la actualización.
Instala
dnsreconescribiendo el siguiente comando y presionando Enter:apt install -y dnsreconEl indicador
-yconfirma la instalación automáticamente. Espera a que la instalación finalice; debería tomar solo unos segundos. Verás la salida que muestra el progreso de la instalación.Una vez instalado, ejecuta una enumeración DNS básica en
example.com. Escribe el siguiente comando y presiona Enter:dnsrecon -d example.comLa opción
-despecifica el dominio a consultar. Después de ejecutar el comando, verás una salida similar a la siguiente (la salida real puede variar):[*] Performing General Enumeration of Domain: example.com [*] DNSSEC is not configured for example.com [*] SOA ns.icann.org 199.4.138.53 [*] NS ns.icann.org 199.4.138.53 [*] A example.com 93.184.216.34 [*] AAAA example.com 2606:2800:220:1:248:1893:25c8:1946 [*] MX example.com 0 . [*] TXT example.com "v=spf1 -all" [*] Enumeration Complete.Esta salida muestra varios registros DNS para
example.com, proporcionando información sobre su configuración:- SOA (Start of Authority): Contiene información administrativa sobre la zona.
- NS (Name Server): Enumera los servidores autorizados para el dominio.
- A (Address): Asocia el nombre de dominio con una dirección IPv4.
- AAAA (IPv6 Address): Asocia el nombre de dominio con una dirección IPv6.
- MX (Mail Exchanger): Especifica los servidores de correo responsables de aceptar correos electrónicos para el dominio.
- TXT (Text): Contiene texto arbitrario, a menudo utilizado para fines de verificación como SPF (Sender Policy Framework), que se muestra aquí (
v=spf1 -all).
Guarda los resultados de la enumeración DNS en un archivo llamado
dns_results.txten el directorio/root. Escribe el siguiente comando y presiona Enter:dnsrecon -d example.com > /root/dns_results.txt 2>&1El símbolo
>redirige la salida al archivo especificado, y2>&1captura el error estándar en el mismo archivo.dnsreconpuede imprimir detalles del escaneo en el error estándar, por lo que guardar ambos flujos de salida asegura que/root/dns_results.txtcontenga los resultados completos en lugar de un archivo vacío.Confirma que la salida se guardó visualizando el contenido del archivo. Escribe el siguiente comando y presiona Enter:
cat /root/dns_results.txtDeberías ver los mismos resultados de enumeración DNS que arriba, ahora almacenados en el archivo.
Este paso te ha introducido en el reconocimiento DNS con dnsrecon, mostrando cómo recopilar información crítica del dominio. En el siguiente paso, combinaremos todos tus hallazgos en un único archivo de resumen. Asegúrate de poder ver los resultados DNS guardados antes de continuar.
Resumen
En este laboratorio, has aprendido técnicas esenciales de reconocimiento utilizando herramientas de Kali Linux para recopilar información sobre un sistema objetivo. Comenzaste instalando y utilizando nmap para realizar un escaneo básico de puertos en un objetivo local seguro (localhost), identificando puertos abiertos y servicios asociados como el servidor web Apache que instalamos. Luego, guardaste estos resultados en un archivo para su documentación. A continuación, exploraste la enumeración de servicios con scripts de nmap para descubrir información detallada de versiones, seguido de un reconocimiento DNS utilizando dnsrecon para consultar registros de dominio para example.com. Estas habilidades fundamentales en el escaneo de redes y la recopilación de información son críticas para las pruebas de penetración y la auditoría de seguridad de redes.


