¿Qué hace open-redirect?
Playbook de redirección abierta. Úselo cuando los parámetros de URL, las acciones de formulario o los sinks de JavaScript controlen los destinos de navegación y puedan redirigir a los usuarios a destinos controlados por atacantes.
Descripción
Una vulnerabilidad de redirección abierta ocurre cuando una aplicación web redirige a los usuarios a una URL que puede ser controlada por un atacante. Esto puede explotarse para ataques de phishing, malware o robo de credenciales.
Síntomas
- Parámetros de URL como
redirect=,url=,next=,target=que controlan el destino de redirección. - Acciones de formulario que redirigen a un destino dinámico.
- Sinks de JavaScript como
window.location,location.hrefodocument.locationque utilizan entradas no validadas.
Cómo Probarlo
- Identifique puntos donde la aplicación acepta y usa entradas del usuario para redirigir.
- Intente valores maliciosos como:
https://evil.com//evil.comhttp://evil.comjavascript:alert(1)(para sinks JS)
- Verifique si la redirección ocurre sin un aviso o validación.
Mitigación
- No confíe en entradas del usuario para redirecciones. Use una lista blanca de destinos permitidos.
- Valide que la URL de redirección pertenezca al mismo dominio o a una lista segura.
- Para redirecciones dinámicas, use identificadores internos en lugar de URLs completas.
- Codifique adecuadamente las URLs de redirección antes de usarlas.
Enlaces Relacionados
Uso en Plataformas
Este playbook es compatible con:
- Burp Suite: Use Intruder o Repeater para probar parámetros.
- OWASP ZAP: Escaneo activo para detectar redirecciones abiertas.
- yaklang: Scripts de prueba automatizados.