Interceptar y Manipular Solicitudes HTTP (Burp & ZAP)

Una vez configurado el proxy, podemos interceptar, examinar, modificar y reenviar solicitudes HTTP enviadas por cualquier aplicación web. Esta técnica es la base del pentesting web moderno.


🧲 Interceptar Solicitudes

🧱 Burp Suite

En Burp, la interceptación viene activada por defecto.

Ruta:

Proxy → Intercept

Puedes alternar el modo:

💡 Consejo

El navegador preconfigurado de Burp (Open Browser) ya viene listo para enviar todo a través del proxy.

Una vez visites la web objetivo, Burp mostrará la solicitud en espera:

{19059B27-DC49-4AC4-8D3F-350A17AC5BA6}.png
Presiona Forward para reenviar la solicitud.

Warning

Como todo el tráfico de Firefox pasa por Burp, puede que interceptes varias solicitudes antes de llegar a la del sitio objetivo. Solo da Forward hasta llegar a la correcta.


⚡ ZAP

En ZAP la interceptación viene desactivada por defecto.

CTRL + B

Tras activar, visita la página objetivo. ZAP mostrará la solicitud interceptada:

Request → (panel derecho)

Y podrás reenviarla pulsando el botón Step.


🛠️ HUD de ZAP

ZAP tiene una función muy poderosa llamada:

🛡️ Heads Up Display (HUD)

Te permite controlar muchas funciones del proxy desde dentro del navegador.

Para activarlo:
Pasted image 20251127192428.png
Icono HUD → parte superior derecha

El botón de interceptación está en la columna izquierda del HUD.

Cuando una solicitud es interceptada, verás opciones:

Tip

ZAP mostrará un tutorial del HUD la primera vez. Vale la pena hacerlo.


🛠️ Manipulación de Solicitudes Interceptadas

Cuando una solicitud está interceptada, el navegador queda congelado hasta que la reenviemos.
Aquí es donde comienza la magia del pentesting web.

Podemos modificar:

💡 Aplicaciones comunes

  • SQL Injection

  • Command Injection

  • File Upload Bypass

  • Authentication Bypass

  • XSS

  • XXE

  • Deserialización

  • Manipulación de headers


🧪 Ejemplo Práctico — Manipulando Parámetros

Supongamos que la aplicación tiene un formulario de Ping donde enviamos una IP.
{A5B9FB10-F3FF-44F7-B427-3CF538856D6D}.png

🔗 Solicitud interceptada:

{7A56C92F-6D83-45BD-BB6F-B2A7A4371A28}.png

La página sólo permite números usando JavaScript.
Pero si interceptamos la solicitud podemos cambiar el parámetro.

🧨 Intento de inyección

Cambiamos:

ip=1

por:

ip=;ls;

▶️ Reenviar solicitud

En Burp → Forward
En ZAP → Step

📥 Respuesta del servidor

El servidor ejecutó el comando:

{FC05B659-18AA-471B-96B6-B0D96D05AEA5}.png
En HTTP history veremos las respuesta del servidor
{70E8BB0E-448F-4593-888F-59628B823E90}.png

🚨 Esto confirma una Command Injection

Aunque la interfaz limita la entrada, el backend no valida el parámetro.


🧠 Conclusión

La interceptación y manipulación de solicitudes HTTP es una habilidad esencial en pentesting web.
Estas técnicas permiten:

Info

Este módulo no cubre ataques web en profundidad, pero estas herramientas son la base de todos ellos.