Tomada de: https://slideplayer.es/slide/1048631/
 
 
 
DEFINICIÓN
 

Vulnerabilidad producida por la necesidad propia de la aplicación de redireccionar al usuario a una página no segura, el atacante crea enlaces para que la víctima haga clic que luego son llevados a una aplicación de confianza y allí los atacantes instalan el código malicioso.

 

IDENTIFICACION DE LA VULNERABILIDAD

 

  • Revisar el código para detectar redirecciones o reenvíos (llamados transferencias en .NET), identificar si la URL se incluye en el valor de un parámetro y si está validada con una lista blanca.
  • Modificar la URL de destino en caso de redirección de códigos de respuesta DTTP 300-307, típicamente 302, observando los parámetros antes de la redirección si son una URL de destino o un recurso de la misma.
  • Revisar si cada parámetro forma parte de una redirección o un reenvío de una URL de destino y probar que hace.
  • Errores en el tratamiento de redirecciones y uso de datos no confiables  como destino.

 

PREVENCIÓN

 

  • Evitar el uso de redirecciones y reenvíos
  • No involucrar parámetros manipulables por el usuario para definir el destino.
  • Si se hace necesario utilizar parámetros de destino, asegúrese de que el valor suministrado sea válido y autorizado para el usuario.
  • Se recomienda utilizar parámetros de destino con valor de mapeo, se puede utilizar ESAPI para asegurarse que los destinos redirigidos sean seguros
  • Se recomienda utilizar un valor de mapeo en el valor del parámetro de destinom enn el lugar de una dirección URL y en el código del servidor, traducir dicho valor a la dirección URL del destino.

 

 

_______________________________
Tomado del proyecto original de "GUÍA DE BUENAS PRÁCTICAS PARA EL DESARROLLO DE APLICACIONES WEB SEGURAS, ORIENTADAS  A LA FORMACIÓN DE PROGRAMADORES" Liliana Cújar Bahamón. Autora de este sitio web.