
Herramienta de prueba de concepto que envía un payload diseñado a un objetivo y detecta vulnerabilidades de redirección abierta inspeccionando las respuestas 301/302 y las cabeceras Location.
Una pequeña herramienta de prueba de concepto — envía un payload específico a un objetivo y comprueba las respuestas de redirección 301/302, informando de la cabecera Location.
Este repositorio está destinado únicamente a fines educativos/de investigación. Siga las políticas de divulgación responsable. A continuación se incluyen las instrucciones de uso y compilación.
Esta herramienta envía una solicitud a un dominio con el siguiente payload añadido y, si el servidor responde con 301 (Movido Permanentemente) o 302 (Encontrado), comprueba la cabecera Location para detectar una posible vulnerabilidad.
Payload: /public/..%2F%5cgoogle.com%2F%3f%2F..%2F..
El programa desactiva el seguimiento automático de redirecciones de Go mediante la función CheckRedirect, lo que permite inspeccionar la respuesta inicial.
Puede compilar un ejecutable (.exe de Windows) con los siguientes comandos:
# Linux/macOS
go build -o cve-2025-4123 main.go
# Windows (PowerShell o CMD)
go build -o CVE-2025-4123.exe main.go
Uso: CVE-2025-4123.exe [https://example.com]
Ejemplo:
./CVE-2025-4123.exe https://target.example.com
El programa hace lo siguiente:
os.Args[1]) con el payload añadido.Location: VULN FOUND: <location>CVE-2025-4123 Not Found.CheckRedirect: Redirected to <URL>.Detección exitosa (ejemplo):
VULN FOUND: https://google.com/
El seguimiento de redirecciones mediante la devolución de llamada CheckRedirect podría generar:
Redirected to https://google.com/
http.Get sigue automáticamente las redirecciones 301/302. En este PoC, se utiliza CheckRedirect para desactivar el seguimiento automático, lo que permite el acceso directo a la cabecera Location.Location puede no ser siempre una URL absoluta; podría ser relativa o tener otro formato. En tales casos, utilice url.Parse y resp.Request.URL.ResolveReference para construir la URL completa.--timeout.-o/--output para guardar resultados en JSON o CSV.Location vacías o inesperadas con un análisis/normalización robusto.Si este PoC detecta una vulnerabilidad real, contacte con el equipo de seguridad de la organización objetivo e infórmelo de manera responsable. Coordine con la organización antes de realizar cualquier divulgación pública.