Contenido
- 1. Preparación del entorno
- 2. Captura del tráfico (la parte divertida)
- 3. Filtrado y análisis del tráfico HTTP
- 4. Análisis de un login (¡a por credenciales!)
- 5. Análisis de cookies y sesión
- 6. Identificación de servidor y tecnologías mediante tráfico
- 7. Detectar patrones de ataque (mini-reto)
- 8. Bonus: reconstrucción de sesión (Follow TCP Stream)
- 9. Conclusiones finales (informe corto)
Aprender a capturar y analizar tráfico de red con Wireshark, identificar credenciales transmitidas en claro, interpretar paquetes HTTP y localizar patrones que un pentester o analista usaría para detectar:
- Credenciales expuestas
- Cookies de sesión
- Estructura de peticiones al servidor
- Intentos de ataque (básico)
- Fingerprinting indirecto del hosting
1. Preparación del entorno
1.1. Material necesario
- Wireshark instalado
- Navegador web
- La URL de vuestra aplicación PHP en el hosting
1.2. Configuración previa
- Abrir Wireshark
- Elegir la interfaz correcta:
- En WiFi: suele ser wlan0 o similar
- En cable: eth0
- Aplicad un filtro pre-captura opcional para no saturar:
tcp port 80 or tcp port 443
2. Captura del tráfico (la parte divertida)
2.1. Comenzar la captura
- En Wireshark → seleccionad interfaz → botón azul Start capture.
- Dejad Wireshark escuchando en segundo plano.
2.2. Generar tráfico real
En vuestra aplicación PHP:
- Entrad en la página del login.
- Haced:
- 1 intento fallido
- 1 intento correcto
- Navegad un poco por el CRUD (listar, ver, editar).
Esto genera tráfico muy fácil de reconocer.
3. Filtrado y análisis del tráfico HTTP
3.1. Filtrar solo HTTP
En la barra de filtros de Wireshark:
http
Observad cómo aparecen las peticiones:
GET /login.php HTTP/1.1POST /login.php HTTP/1.1- Peticiones a JS, CSS, etc.
Entrega:
- Captura del primer filtro HTTP mostrando al menos 8–10 paquetes.
4. Análisis de un login (¡a por credenciales!)
Vamos a buscar el POST del login.
4.1. Filtro preciso del POST
http.request.method == "POST"
Seleccionad el paquete que corresponda a vuestro login.
4.2. Abrir el contenido del POST
En el panel inferior → Hypertext Transfer Protocol → Form-urlencoded.
Deberíais ver algo como:
username=juan
password=1234
(¡si la web no usa HTTPS y el hosting no lo fuerza!)
4.3. Preguntas para entregar
- ¿El login viaja en claro o cifrado?
- Si viaja cifrado, ¿qué aparece en su lugar?
- Si viaja en claro, copiáis:
- usuario
- contraseña
- parámetros adicionales
💡 Esta parte impacta mucho: “Así de fácil es robar credenciales sin HTTPS.”
Filtro:
http.set_cookie
o:
http.cookie
Localizad:
PHPSESSID=xxxxxxxu otro identificador.
5.2. Preguntas para entregar
- ¿La cookie tiene flags
Secure,HttpOnly,SameSite? - ¿Se envía en la misma petición del login?
- ¿Se reutiliza durante toda la sesión?
- ¿Podríais robarla si el tráfico no fuese HTTPS?
6. Identificación de servidor y tecnologías mediante tráfico
Aunque no usemos WhatWeb, Wireshark también revela cosas interesantes.
6.1. Buscad cabeceras del servidor
Filtro:
http.server
y:
http.response
Podéis encontrar:
Server: Apache/2.4.54X-Powered-By: PHP/8.1.12
7. Detectar patrones de ataque (mini-reto)
Ahora vamos a “jugar” con el tráfico que vosotros mismos habéis generado.
Hacer desde otra máquina:
- un par de intentos de fuerza bruta
- navegación rara
- errores 404
- probad rutas prohibidas
7.1. Filtrar errores del servidor
http.response.code >= 400
7.2. Preguntas
- ¿Qué tipo de errores aparecen más?
- ¿Alguna IP destaca como “sospechosa”?
- ¿Puedes reconstruir qué intentaba hacer ese cliente?
(por ejemplo: intentar acceder a/admin/o/backup/)
8. Bonus: reconstrucción de sesión (Follow TCP Stream)
Seleccionad cualquier paquete HTTP → botón derecho:
Follow → TCP Stream
Miraréis la conversación completa entre cliente y servidor como si fuese un chat textual.
Entrega:
- Captura del stream
- Comentad:
- ¿Qué información sensible se ve?
- ¿Podríais reproducir manualmente alguna petición?
9. Conclusiones finales (informe corto)
Cada alumno debe redactar:
9.1. Hallazgos importantes
- ¿Se ven credenciales?
- ¿Se identifican cookies inseguras?
- ¿Qué tecnologías se filtran?
- ¿Alguna ruta interesante/extraña?
9.2. Riesgos detectados
3 riesgos mínimos (exposición de tecnología, falta de HTTPS, cookies inseguras…)
9.3. Recomendaciones
3 medidas de mejora:
- Forzar HTTPS
- Ocultar versión del servidor
- Flag
HttpOnlyen cookies - Deshabilitar rutas innecesarias



