GhostAcademy logo GhostAcademy

Apache Enumeration

Reconocimiento y Enumeración Aplicación Web Puerto 80/443 Nmap · WhatWeb · Nikto · Gobuster

🌐 ¿Qué es la enumeración web y por qué es crítica?

La enumeración de un servidor web consiste en identificar todas las tecnologías, rutas, directorios y posibles puntos de entrada que expone el servidor. Apache es el servidor web más utilizado del mundo, lo que lo convierte en un objetivo frecuente.

El objetivo es construir un mapa completo de la superficie de ataque antes de intentar explotar ninguna vulnerabilidad.

Metodología: Reconocimiento → Fingerprinting → Análisis de vulnerabilidades → Descubrimiento de contenido oculto → Explotación.

Herramientas del laboratorio

HerramientaFunción principalCapa
nmapEscaneo de puertos y fingerprinting con NSERed
whatwebIdentificar tecnologías, CMS, frameworks y versionesAplicación
niktoEscaner de vulnerabilidades y configuraciones insegurasAplicación
gobusterFuerza bruta de directorios y archivosContenido
dirbAlternativa de fuerza bruta con diccionarios predefinidosContenido

🔧 Comandos del laboratorio

1. Identificación del objetivo

bash
cat /root/Desktop/target

2. Escaneo inicial con Nmap

Detecta puertos HTTP/HTTPS y versiones de servicios. El flag -sS usa paquetes SYN (más sigiloso que TCP completo).

bash — puertos web + versiones
nmap -sS -sV -p 80,443 <IP>
bash — enumerar rutas con NSE
nmap --script http-enum -p 80 <IP>
bash — encabezados HTTP
nmap --script http-headers -p 80 <IP>

3. Fingerprinting de tecnologías con WhatWeb

WhatWeb identifica el CMS (WordPress, Joomla...), frameworks, versiones de librerías JS, servidor web y otros metadatos sin necesidad de autenticación.

bash — básico
whatweb http://<IP>
bash — salida detallada con encabezados
whatweb -v http://<IP>
Tip: si el resultado muestra WordPress, Drupal o Joomla, usa wpscan, droopescan o joomscan para enumeración específica del CMS.

4. Escaneo de vulnerabilidades con Nikto

Nikto comprueba más de 6700 archivos/CGIs potencialmente peligrosos, versiones desactualizadas y problemas de configuración como cabeceras de seguridad ausentes.

bash
nikto -h http://<IP>
bash — guardar resultado
nikto -h http://<IP> -o nikto_out.txt
Nota: Nikto es ruidoso y será detectado por IDS/WAF. Úsalo solo en entornos autorizados.

5. Fuerza bruta de directorios con Gobuster

Gobuster prueba rutas del diccionario contra el servidor para descubrir directorios y archivos no enlazados en el sitio.

bash — directorios con wordlist común
gobuster dir -u http://<IP> -w /usr/share/wordlists/dirb/common.txt
bash — buscar extensiones específicas
gobuster dir -u http://<IP> -w /usr/share/wordlists/dirb/common.txt -x php,txt,bak,conf
bash — alternativa: dirb
dirb http://<IP>

6. Análisis manual y obtención de la flag

Con las rutas descubiertas, accede manualmente para revisar paneles de administración, backups o archivos de configuración expuestos.

bash — descargar archivo
wget http://<IP>/ruta/flag.txt
bash — leer en terminal
curl http://<IP>/ruta/flag.txt

🗼 Flujo del ejercicio

1
ReconocimientoEscanear puertos 80/443 y detectar versiones del servidor.
2
FingerprintingWhatWeb para identificar tecnologías y CMS.
3
Análisis de vulnerabilidadesNikto para detectar fallos de configuración y archivos expuestos.
4
Descubrimiento de contenidoGobuster/Dirb para rutas no indexadas.
5
Análisis manualRevisar las rutas encontradas en busca de paneles, backups o flags.
6
Obtención de la flagwget/curl para descargar el archivo objetivo.

🎯 ¿Qué buscar? — Indicadores de éxito