Un ataque de navegación forzada es una vulnerabilidad en la que un usuario no autorizado tiene acceso a los contenidos de un usuario autorizado. La navegación forzada es un ataque cuando una aplicación web tiene más de un nivel de privilegio de usuario para el mismo usuario. Por lo tanto, un atacante obtiene información confidencial a la que de otro modo no debería tener acceso. El atacante puede usar un enfoque de fuerza bruta para obtener directorios comunes, archivos o información de las cuentas de usuario presentes en el sitio web. La navegación forzada se denomina así porque están navegando a la fuerza en la URL que solo un usuario autorizado debe navegar. Además, al usar la navegación forzada, un pirata informático puede obtener acceso a archivos comunes que pueden contener datos importantes. Los ataques de navegación forzada también se pueden realizar utilizando el método hit and trial donde el índice de la aplicación las páginas y los directorios se basan en valores predecibles.
Concepto
Los usuarios de un sitio web tienen un conjunto diferente de privilegios. Un sitio web no es vulnerable solo si los usuarios no pueden acceder a los privilegios de administrador, pero si los usuarios acceden a los derechos y comandos de administrador simplemente copiando y pegando la URL del administrador, pueden causar mucho daño. al sitio web ya la empresa.
Cómo funciona el ataque
Ejemplo 1
Supongamos que un usuario inicia sesión en su cuenta y la URL es- www.gfg.com/info/user1.php. Ahora, copia esta URL y la pega en la pestaña del modo de incógnito. Si se abre la misma página, significa que el sitio web no está verificando la autenticación. El usuario puede modificar la URL mediante un enfoque de golpe y prueba o de fuerza bruta como este: www.gfg.com/info/user2.php y cargar la página. Obtendrá información del usuario 2 presente en ese sitio web sin pedir contraseña o ID de correo electrónico ni ningún tipo de verificación de identidad para acceder a la cuenta de usuario 2. De manera similar, si el usuario obtiene la URL del administrador de alguna manera, podrá obtener admin privilegios sin ningún tipo de autenticación. Por lo tanto, esta vulnerabilidad es crítica.
Ejemplo 2
Supongamos que un usuario que inició sesión en el sitio web de Amazon tiene una URL: www.amazon.com/orders/123. Ahora, identifica que 123 es su ID de pedido. cambia este valor para ver si puede ver pedidos de usuarios aleatorios o no. Modificó la URL a www.amazon.com/orders/122. Ahora, si el sitio web de Amazon tiene una vulnerabilidad de navegación forzada, el sitio web le mostrará los pedidos de un cliente aleatorio con un ID de pedido de 122. Por lo tanto, el atacante, siendo un usuario autorizado, obtuvo acceso a contenido no autenticado que se supone que no debe obtener.
Métodos de navegación forzados
- Predicción manual: como se discutió en el ejemplo anterior, donde el usuario manualmente (utilizando el método de prueba) descubre que el sitio web sufre una vulnerabilidad de navegación forzada simplemente cambiando algunos valores de la URL.
- Predicción automatizada: este método incluye el uso de herramientas automatizadas como dirbuster para encontrar archivos comunes y nombres de directorios que pueden contener información confidencial.
- Métodos de código abierto: «Exploit.db» es una plataforma que enumera la vulnerabilidad de la mayoría de los sitios web y el software de aplicación. Uno puede tomar la ayuda de este sitio web para obtener más información sobre los ataques.
Cómo evitar la navegación forzada
- Para cada página web a la que se accede, el desarrollador debe asegurarse de que solo el usuario autenticado esté autorizado para acceder al contenido.
- Los usuarios autenticados no deberían poder usar contenido autorizado. Se necesita una verificación de autorización en cada paso para garantizar la seguridad.
- La creación de una lista blanca, que permite el acceso explícito a un conjunto de URL que se consideran, permite que parte de la aplicación ejerza su funcionalidad según lo previsto. Cualquier solicitud que no esté en este espacio de URL se deniega de forma predeterminada.
Publicación traducida automáticamente
Artículo escrito por pradiptamukherjee y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA