Blog

Los codificadores conquistan la seguridad: Share & Learn Series - Redirecciones y reenvíos no validados

Jaap Karan Singh
Publicado el 23 de mayo de 2019

Codificar un sitio web o una aplicación con la capacidad de procesar redireccionamientos y reenvíos no validados puede ser extremadamente peligroso tanto para sus usuarios como para su organización. Este error común suele ser aprovechado por los hackers que buscan perpetrar estafas de phishing, o para obtener acceso a páginas e información que normalmente estaría restringida.

Siempre que una aplicación web está diseñada para reenviar a los usuarios a nuevas páginas, existe el peligro de que esas peticiones puedan ser manipuladas o secuestradas. Esto puede ocurrir si no hay un proceso de validación para evitar que los parámetros de reenvío apunten a destinos no deseados.

La buena noticia es que los redireccionamientos y reenvíos no validados son una de las vulnerabilidades más fáciles de eliminar de su entorno. Una vez eliminadas, puedes tomar unos sencillos pasos para asegurarte de que nunca se generen en el futuro.

En este episodio, aprenderemos:

  • Cómo aprovechan los hackers las vulnerabilidades de redirección y reenvío no validadas
  • Por qué permitir redireccionamientos y reenvíos no validados puede ser peligroso
  • Políticas y técnicas que pueden emplearse para encontrar y solucionar este problema.

¿Cómo aprovechan los atacantes los redireccionamientos y reenvíos no validados?

Los atacantes deben encontrar primero una aplicación web que esté configurada para reenviar a los usuarios a una página o páginas específicas. Si la página de destino está definida en el código, no hay vulnerabilidad. Por ejemplo, en Java, esta sería una forma segura y predefinida de enviar a un usuario a una nueva ubicación sin que tenga que realizar ninguna acción, como hacer clic en un hipervínculo.

response.sendRedirect("http://www.knownsafesite.com");

La vulnerabilidad se produce si el sitio está programado para aceptar la entrada del usuario para la redirección, o si el parámetro se deja abierto, tal vez para obtener la información de otra fuente. Por ejemplo, un desarrollador podría utilizar el parámetro "url'GET".

response.sendRedirect(request.getParameter("url"));

Aunque esto da más flexibilidad, también crea la vulnerabilidad de las redirecciones y reenvíos no validados. Los hackers pueden añadir información después de las barras de reenvío para activar una redirección a cualquier sitio que elijan, quizás como parte de un correo electrónico de phishing. Los usuarios ven el dominio de confianza en la primera parte de un enlace y no se dan cuenta de que el sitio web puede redirigirlos al sitio del hacker.

¿Por qué son tan peligrosos los redireccionamientos y reenvíos no validados?

El peligro que supone permitir redireccionamientos y reenvíos no validados puede ser importante. Para los usuarios, el mayor peligro es que pueden ser víctimas de ataques de phishing. Como ven la URL de nivel superior, es más probable que confíen en un correo electrónico u otra comunicación de phishing y hagan clic en un enlace. Y si la página a la que se les redirige se parece a la página real, el engaño puede ser bastante eficaz. Podrían compartir su nombre de usuario, contraseñas u otras credenciales y nunca sospechar que están siendo manipulados.

Eliminación de la amenaza que suponen los redireccionamientos y reenvíos no validados

Las redirecciones y reenvíos no validados comienzan a existir mientras se desarrolla una aplicación. Pueden ser eliminados después, pero la forma más fácil de eliminarlos es simplemente no permitir parámetros de usuario o cadenas abiertas como parte de cualquier función de redirección o reenvío en primer lugar. En su lugar, defina estrictamente las direcciones URL a las que serán redirigidos los usuarios, eliminando las variables y negando a los atacantes el margen de maniobra. Mejor aún, considere la posibilidad de no utilizar redireccionamientos y reenvíos en absoluto.

Si no hay absolutamente ninguna manera de evitar tener variables como parte de un proceso de redirección o reenvío, entonces debe haber un proceso de validación establecido para asegurar que la redirección va a uno de un conjunto de destinos válidos. Por último, utilice valores de mapeo en lugar de URLs reales. Los hackers tratarán de utilizar la información de la URL, y probablemente no serán capaces de adivinar el esquema de mapeo incluso si sospechan que se está utilizando uno.

Más información sobre redireccionamientos y reenvíos no validados

Para más información, puedes echar un vistazo a las páginas de referencia de OWASP sobre redireccionamientos y reenvíos no validados. También puedes poner a prueba tus nuevos conocimientos defensivos con la demostración gratuita de la plataforma Secure Code Warrior , que forma a los equipos de ciberseguridad para que se conviertan en los mejores ciberguerreros. Para saber más sobre cómo derrotar esta vulnerabilidad, y una galería de pícaros de otras amenazas, visite el blogSecure Code Warrior .

Ocúpese de una vez por todas de los redireccionamientos y reenvíos no validados. Aplique sus nuevos conocimientos y ponga a prueba sus habilidades en nuestra plataforma de formación gamificada: [Comience aquí]

Ver recurso
Ver recurso

Codificar un sitio web o una aplicación con la capacidad de procesar redireccionamientos y reenvíos no validados puede ser extremadamente peligroso tanto para sus usuarios como para su organización.

¿Quiere saber más?

Jaap Karan Singh es un evangelista de la codificación segura, jefe Singh y cofundador de Secure Code Warrior.

Secure Code Warrior está a disposición de su organización para ayudarle a proteger el código a lo largo de todo el ciclo de vida de desarrollo de software y crear una cultura en la que la ciberseguridad sea una prioridad. Tanto si es director de AppSec, desarrollador, CISO o cualquier persona implicada en la seguridad, podemos ayudar a su organización a reducir los riesgos asociados a un código inseguro.

Reservar una demostración
Compartir en:
Autor
Jaap Karan Singh
Publicado el 23 de mayo de 2019

Jaap Karan Singh es un evangelista de la codificación segura, jefe Singh y cofundador de Secure Code Warrior.

Compartir en:

Codificar un sitio web o una aplicación con la capacidad de procesar redireccionamientos y reenvíos no validados puede ser extremadamente peligroso tanto para sus usuarios como para su organización. Este error común suele ser aprovechado por los hackers que buscan perpetrar estafas de phishing, o para obtener acceso a páginas e información que normalmente estaría restringida.

Siempre que una aplicación web está diseñada para reenviar a los usuarios a nuevas páginas, existe el peligro de que esas peticiones puedan ser manipuladas o secuestradas. Esto puede ocurrir si no hay un proceso de validación para evitar que los parámetros de reenvío apunten a destinos no deseados.

La buena noticia es que los redireccionamientos y reenvíos no validados son una de las vulnerabilidades más fáciles de eliminar de su entorno. Una vez eliminadas, puedes tomar unos sencillos pasos para asegurarte de que nunca se generen en el futuro.

En este episodio, aprenderemos:

  • Cómo aprovechan los hackers las vulnerabilidades de redirección y reenvío no validadas
  • Por qué permitir redireccionamientos y reenvíos no validados puede ser peligroso
  • Políticas y técnicas que pueden emplearse para encontrar y solucionar este problema.

¿Cómo aprovechan los atacantes los redireccionamientos y reenvíos no validados?

Los atacantes deben encontrar primero una aplicación web que esté configurada para reenviar a los usuarios a una página o páginas específicas. Si la página de destino está definida en el código, no hay vulnerabilidad. Por ejemplo, en Java, esta sería una forma segura y predefinida de enviar a un usuario a una nueva ubicación sin que tenga que realizar ninguna acción, como hacer clic en un hipervínculo.

response.sendRedirect("http://www.knownsafesite.com");

La vulnerabilidad se produce si el sitio está programado para aceptar la entrada del usuario para la redirección, o si el parámetro se deja abierto, tal vez para obtener la información de otra fuente. Por ejemplo, un desarrollador podría utilizar el parámetro "url'GET".

response.sendRedirect(request.getParameter("url"));

Aunque esto da más flexibilidad, también crea la vulnerabilidad de las redirecciones y reenvíos no validados. Los hackers pueden añadir información después de las barras de reenvío para activar una redirección a cualquier sitio que elijan, quizás como parte de un correo electrónico de phishing. Los usuarios ven el dominio de confianza en la primera parte de un enlace y no se dan cuenta de que el sitio web puede redirigirlos al sitio del hacker.

¿Por qué son tan peligrosos los redireccionamientos y reenvíos no validados?

El peligro que supone permitir redireccionamientos y reenvíos no validados puede ser importante. Para los usuarios, el mayor peligro es que pueden ser víctimas de ataques de phishing. Como ven la URL de nivel superior, es más probable que confíen en un correo electrónico u otra comunicación de phishing y hagan clic en un enlace. Y si la página a la que se les redirige se parece a la página real, el engaño puede ser bastante eficaz. Podrían compartir su nombre de usuario, contraseñas u otras credenciales y nunca sospechar que están siendo manipulados.

Eliminación de la amenaza que suponen los redireccionamientos y reenvíos no validados

Las redirecciones y reenvíos no validados comienzan a existir mientras se desarrolla una aplicación. Pueden ser eliminados después, pero la forma más fácil de eliminarlos es simplemente no permitir parámetros de usuario o cadenas abiertas como parte de cualquier función de redirección o reenvío en primer lugar. En su lugar, defina estrictamente las direcciones URL a las que serán redirigidos los usuarios, eliminando las variables y negando a los atacantes el margen de maniobra. Mejor aún, considere la posibilidad de no utilizar redireccionamientos y reenvíos en absoluto.

Si no hay absolutamente ninguna manera de evitar tener variables como parte de un proceso de redirección o reenvío, entonces debe haber un proceso de validación establecido para asegurar que la redirección va a uno de un conjunto de destinos válidos. Por último, utilice valores de mapeo en lugar de URLs reales. Los hackers tratarán de utilizar la información de la URL, y probablemente no serán capaces de adivinar el esquema de mapeo incluso si sospechan que se está utilizando uno.

Más información sobre redireccionamientos y reenvíos no validados

Para más información, puedes echar un vistazo a las páginas de referencia de OWASP sobre redireccionamientos y reenvíos no validados. También puedes poner a prueba tus nuevos conocimientos defensivos con la demostración gratuita de la plataforma Secure Code Warrior , que forma a los equipos de ciberseguridad para que se conviertan en los mejores ciberguerreros. Para saber más sobre cómo derrotar esta vulnerabilidad, y una galería de pícaros de otras amenazas, visite el blogSecure Code Warrior .

Ocúpese de una vez por todas de los redireccionamientos y reenvíos no validados. Aplique sus nuevos conocimientos y ponga a prueba sus habilidades en nuestra plataforma de formación gamificada: [Comience aquí]

Ver recurso
Ver recurso

Rellene el siguiente formulario para descargar el informe

Nos gustaría contar con su permiso para enviarle información sobre nuestros productos y/o temas relacionados con la codificación segura. Siempre trataremos sus datos personales con el máximo cuidado y nunca los venderemos a otras empresas con fines de marketing.

Enviar
Para enviar el formulario, habilite las cookies "Analytics". Siéntase libre de desactivarlas de nuevo una vez que haya terminado.

Codificar un sitio web o una aplicación con la capacidad de procesar redireccionamientos y reenvíos no validados puede ser extremadamente peligroso tanto para sus usuarios como para su organización. Este error común suele ser aprovechado por los hackers que buscan perpetrar estafas de phishing, o para obtener acceso a páginas e información que normalmente estaría restringida.

Siempre que una aplicación web está diseñada para reenviar a los usuarios a nuevas páginas, existe el peligro de que esas peticiones puedan ser manipuladas o secuestradas. Esto puede ocurrir si no hay un proceso de validación para evitar que los parámetros de reenvío apunten a destinos no deseados.

La buena noticia es que los redireccionamientos y reenvíos no validados son una de las vulnerabilidades más fáciles de eliminar de su entorno. Una vez eliminadas, puedes tomar unos sencillos pasos para asegurarte de que nunca se generen en el futuro.

En este episodio, aprenderemos:

  • Cómo aprovechan los hackers las vulnerabilidades de redirección y reenvío no validadas
  • Por qué permitir redireccionamientos y reenvíos no validados puede ser peligroso
  • Políticas y técnicas que pueden emplearse para encontrar y solucionar este problema.

¿Cómo aprovechan los atacantes los redireccionamientos y reenvíos no validados?

Los atacantes deben encontrar primero una aplicación web que esté configurada para reenviar a los usuarios a una página o páginas específicas. Si la página de destino está definida en el código, no hay vulnerabilidad. Por ejemplo, en Java, esta sería una forma segura y predefinida de enviar a un usuario a una nueva ubicación sin que tenga que realizar ninguna acción, como hacer clic en un hipervínculo.

response.sendRedirect("http://www.knownsafesite.com");

La vulnerabilidad se produce si el sitio está programado para aceptar la entrada del usuario para la redirección, o si el parámetro se deja abierto, tal vez para obtener la información de otra fuente. Por ejemplo, un desarrollador podría utilizar el parámetro "url'GET".

response.sendRedirect(request.getParameter("url"));

Aunque esto da más flexibilidad, también crea la vulnerabilidad de las redirecciones y reenvíos no validados. Los hackers pueden añadir información después de las barras de reenvío para activar una redirección a cualquier sitio que elijan, quizás como parte de un correo electrónico de phishing. Los usuarios ven el dominio de confianza en la primera parte de un enlace y no se dan cuenta de que el sitio web puede redirigirlos al sitio del hacker.

¿Por qué son tan peligrosos los redireccionamientos y reenvíos no validados?

El peligro que supone permitir redireccionamientos y reenvíos no validados puede ser importante. Para los usuarios, el mayor peligro es que pueden ser víctimas de ataques de phishing. Como ven la URL de nivel superior, es más probable que confíen en un correo electrónico u otra comunicación de phishing y hagan clic en un enlace. Y si la página a la que se les redirige se parece a la página real, el engaño puede ser bastante eficaz. Podrían compartir su nombre de usuario, contraseñas u otras credenciales y nunca sospechar que están siendo manipulados.

Eliminación de la amenaza que suponen los redireccionamientos y reenvíos no validados

Las redirecciones y reenvíos no validados comienzan a existir mientras se desarrolla una aplicación. Pueden ser eliminados después, pero la forma más fácil de eliminarlos es simplemente no permitir parámetros de usuario o cadenas abiertas como parte de cualquier función de redirección o reenvío en primer lugar. En su lugar, defina estrictamente las direcciones URL a las que serán redirigidos los usuarios, eliminando las variables y negando a los atacantes el margen de maniobra. Mejor aún, considere la posibilidad de no utilizar redireccionamientos y reenvíos en absoluto.

Si no hay absolutamente ninguna manera de evitar tener variables como parte de un proceso de redirección o reenvío, entonces debe haber un proceso de validación establecido para asegurar que la redirección va a uno de un conjunto de destinos válidos. Por último, utilice valores de mapeo en lugar de URLs reales. Los hackers tratarán de utilizar la información de la URL, y probablemente no serán capaces de adivinar el esquema de mapeo incluso si sospechan que se está utilizando uno.

Más información sobre redireccionamientos y reenvíos no validados

Para más información, puedes echar un vistazo a las páginas de referencia de OWASP sobre redireccionamientos y reenvíos no validados. También puedes poner a prueba tus nuevos conocimientos defensivos con la demostración gratuita de la plataforma Secure Code Warrior , que forma a los equipos de ciberseguridad para que se conviertan en los mejores ciberguerreros. Para saber más sobre cómo derrotar esta vulnerabilidad, y una galería de pícaros de otras amenazas, visite el blogSecure Code Warrior .

Ocúpese de una vez por todas de los redireccionamientos y reenvíos no validados. Aplique sus nuevos conocimientos y ponga a prueba sus habilidades en nuestra plataforma de formación gamificada: [Comience aquí]

Acceso a recursos

Haga clic en el siguiente enlace y descargue el PDF de este recurso.

Secure Code Warrior está a disposición de su organización para ayudarle a proteger el código a lo largo de todo el ciclo de vida de desarrollo de software y crear una cultura en la que la ciberseguridad sea una prioridad. Tanto si es director de AppSec, desarrollador, CISO o cualquier persona implicada en la seguridad, podemos ayudar a su organización a reducir los riesgos asociados a un código inseguro.

Ver el informeReservar una demostración
Descargar PDF
Ver recurso
Compartir en:
¿Quiere saber más?

Compartir en:
Autor
Jaap Karan Singh
Publicado el 23 de mayo de 2019

Jaap Karan Singh es un evangelista de la codificación segura, jefe Singh y cofundador de Secure Code Warrior.

Compartir en:

Codificar un sitio web o una aplicación con la capacidad de procesar redireccionamientos y reenvíos no validados puede ser extremadamente peligroso tanto para sus usuarios como para su organización. Este error común suele ser aprovechado por los hackers que buscan perpetrar estafas de phishing, o para obtener acceso a páginas e información que normalmente estaría restringida.

Siempre que una aplicación web está diseñada para reenviar a los usuarios a nuevas páginas, existe el peligro de que esas peticiones puedan ser manipuladas o secuestradas. Esto puede ocurrir si no hay un proceso de validación para evitar que los parámetros de reenvío apunten a destinos no deseados.

La buena noticia es que los redireccionamientos y reenvíos no validados son una de las vulnerabilidades más fáciles de eliminar de su entorno. Una vez eliminadas, puedes tomar unos sencillos pasos para asegurarte de que nunca se generen en el futuro.

En este episodio, aprenderemos:

  • Cómo aprovechan los hackers las vulnerabilidades de redirección y reenvío no validadas
  • Por qué permitir redireccionamientos y reenvíos no validados puede ser peligroso
  • Políticas y técnicas que pueden emplearse para encontrar y solucionar este problema.

¿Cómo aprovechan los atacantes los redireccionamientos y reenvíos no validados?

Los atacantes deben encontrar primero una aplicación web que esté configurada para reenviar a los usuarios a una página o páginas específicas. Si la página de destino está definida en el código, no hay vulnerabilidad. Por ejemplo, en Java, esta sería una forma segura y predefinida de enviar a un usuario a una nueva ubicación sin que tenga que realizar ninguna acción, como hacer clic en un hipervínculo.

response.sendRedirect("http://www.knownsafesite.com");

La vulnerabilidad se produce si el sitio está programado para aceptar la entrada del usuario para la redirección, o si el parámetro se deja abierto, tal vez para obtener la información de otra fuente. Por ejemplo, un desarrollador podría utilizar el parámetro "url'GET".

response.sendRedirect(request.getParameter("url"));

Aunque esto da más flexibilidad, también crea la vulnerabilidad de las redirecciones y reenvíos no validados. Los hackers pueden añadir información después de las barras de reenvío para activar una redirección a cualquier sitio que elijan, quizás como parte de un correo electrónico de phishing. Los usuarios ven el dominio de confianza en la primera parte de un enlace y no se dan cuenta de que el sitio web puede redirigirlos al sitio del hacker.

¿Por qué son tan peligrosos los redireccionamientos y reenvíos no validados?

El peligro que supone permitir redireccionamientos y reenvíos no validados puede ser importante. Para los usuarios, el mayor peligro es que pueden ser víctimas de ataques de phishing. Como ven la URL de nivel superior, es más probable que confíen en un correo electrónico u otra comunicación de phishing y hagan clic en un enlace. Y si la página a la que se les redirige se parece a la página real, el engaño puede ser bastante eficaz. Podrían compartir su nombre de usuario, contraseñas u otras credenciales y nunca sospechar que están siendo manipulados.

Eliminación de la amenaza que suponen los redireccionamientos y reenvíos no validados

Las redirecciones y reenvíos no validados comienzan a existir mientras se desarrolla una aplicación. Pueden ser eliminados después, pero la forma más fácil de eliminarlos es simplemente no permitir parámetros de usuario o cadenas abiertas como parte de cualquier función de redirección o reenvío en primer lugar. En su lugar, defina estrictamente las direcciones URL a las que serán redirigidos los usuarios, eliminando las variables y negando a los atacantes el margen de maniobra. Mejor aún, considere la posibilidad de no utilizar redireccionamientos y reenvíos en absoluto.

Si no hay absolutamente ninguna manera de evitar tener variables como parte de un proceso de redirección o reenvío, entonces debe haber un proceso de validación establecido para asegurar que la redirección va a uno de un conjunto de destinos válidos. Por último, utilice valores de mapeo en lugar de URLs reales. Los hackers tratarán de utilizar la información de la URL, y probablemente no serán capaces de adivinar el esquema de mapeo incluso si sospechan que se está utilizando uno.

Más información sobre redireccionamientos y reenvíos no validados

Para más información, puedes echar un vistazo a las páginas de referencia de OWASP sobre redireccionamientos y reenvíos no validados. También puedes poner a prueba tus nuevos conocimientos defensivos con la demostración gratuita de la plataforma Secure Code Warrior , que forma a los equipos de ciberseguridad para que se conviertan en los mejores ciberguerreros. Para saber más sobre cómo derrotar esta vulnerabilidad, y una galería de pícaros de otras amenazas, visite el blogSecure Code Warrior .

Ocúpese de una vez por todas de los redireccionamientos y reenvíos no validados. Aplique sus nuevos conocimientos y ponga a prueba sus habilidades en nuestra plataforma de formación gamificada: [Comience aquí]

Índice

Descargar PDF
Ver recurso
¿Quiere saber más?

Jaap Karan Singh es un evangelista de la codificación segura, jefe Singh y cofundador de Secure Code Warrior.

Secure Code Warrior está a disposición de su organización para ayudarle a proteger el código a lo largo de todo el ciclo de vida de desarrollo de software y crear una cultura en la que la ciberseguridad sea una prioridad. Tanto si es director de AppSec, desarrollador, CISO o cualquier persona implicada en la seguridad, podemos ayudar a su organización a reducir los riesgos asociados a un código inseguro.

Reservar una demostraciónDescargar
Compartir en:
Centro de recursos

Recursos para empezar

Más entradas
Centro de recursos

Recursos para empezar

Más entradas