Nombre de inicio de sesión y contraseña en la URL

4

Recientemente he encontrado una aplicación web, que tiene su URL en el siguiente formato:

http://www.[WEBAPP].com/INetService/Show.aspx?Username=[EMAIL]&EncryptedPassword=[Some String of 32 characters length]

Ahora parece una forma bastante mala de entregar las credenciales de inicio de sesión a especialmente el servidor, ya que no solo utiliza http, por lo que un atacante podría leer fácilmente el tráfico, sino que también puede copiar y pegar este enlace después de cualquier período de tiempo en otro navegador en otra computadora y funcionará.

Esto significa efectivamente que si el historial del navegador de los usuarios se ve comprometido de alguna manera (por ejemplo, al usar una computadora pública sin cuidado), la cuenta de los usuarios también puede verse comprometida, y cerrar la sesión básicamente no hace nada.

¿Cómo debo proceder, debo notificar al desarrollador de la aplicación?

    
pregunta Bernd Schoolmann 21.10.2016 - 19:50
fuente

1 respuesta

6

Sí, debe notificar al desarrollador. Esto podría ser considerado como una vulnerabilidad bastante seria. Es su decisión si desean o no escuchar sus consejos, pero al menos puede estar tranquilo sabiendo que hizo lo que pudo para ayudarlos a mejorar su seguridad para su aplicación web.

Al final del día, ellos son los responsables en última instancia de la seguridad de sus usuarios, y sería extremadamente tonto ignorar esta obvia laguna en la seguridad.

Si elige escribir un correo electrónico / mensaje a los desarrolladores, intente describir las posibles consecuencias de la inacción. Esto podría ayudar a ponerlos en marcha para corregir realmente el error.

EDITAR: les propondría realizar los siguientes cambios ...

  • Use el método de 'publicar' cuando envíe formularios web para que la información no se muestre en la URL de la página web como lo es en este momento.
  • Sugiera implementar SSL para agregar un nivel básico de cifrado a la comunicación entre el cliente y el servidor
  • Sugiera el uso de cookies para almacenar información de la sesión y NUNCA use la información proporcionada en una URL como una forma válida de autenticación. En teoría, al diseñar aplicaciones como esta, sería prudente suponer que NO PUEDE confiar en el usuario final y, por lo tanto, los scripts / software del lado del servidor deben realizar toda la validación necesaria.
respondido por el RedBullNinja 21.10.2016 - 20:06
fuente

Lea otras preguntas en las etiquetas