¿Es el historial del navegador un factor importante al considerar la seguridad?

90

Descubrí algo que considero una vulnerabilidad importante en un producto SaaS que incluye el nombre de usuario y la contraseña en la cadena de consulta de la URL en el registro y cada intento de inicio de sesión.

El soporte técnico del servicio me ha dicho que consideran que la vulnerabilidad es insignificante, ya que la única forma de explotarla es obtener acceso al historial del navegador del usuario.

¿Fueron correctos en su decisión? Soy bastante nuevo en la seguridad de la información, pero aún así suena como pereza por su parte.

Hojeé por esta pregunta , pero después de leer la respuesta más votada, ahora me preocupa aún más que se pase esto por alto, ya que los datos se envían a través de GET y las credenciales se muestran en texto sin formato.

    
pregunta Ivan Talanov 24.01.2018 - 13:02
fuente

4 respuestas

122

Sí, esto es una vulnerabilidad. Puedes apuntarlos a cuerpos tan augustos como

El problema común es que las credenciales se almacenan en el lado del cliente de forma clara (historial del navegador) y en el lado del servidor (registros de conexión del servidor web) y existen varios métodos para acceder a esos datos .

Sí, es la pereza de su parte. Piensan solo en su código y se olvidan del lado del cliente y de la infraestructura.

    
respondido por el schroeder 24.01.2018 - 15:57
fuente
57

Los secretos no pertenecen a las URL. Las URL aparecen en los historiales del navegador, en las cachés de proxy, en los registros del servidor, se envían a proveedores de servicios analíticos y pueden aparecer en muchos otros lugares donde no desea que aparezca información secreta. El uso de HTTPS (ellos do usa HTTPS, ¿verdad?) Solo evita el almacenamiento en caché de proxy, ninguno de los otros.

Los usuarios también pueden copiar & pegue las URL sin darse cuenta de que sus credenciales de inicio de sesión todavía están en ellas.

Por lo tanto, los registros y los inicios de sesión deben utilizar el método POST de HTTPS con las credenciales de inicio de sesión en el cuerpo del mensaje.

    
respondido por el Philipp 24.01.2018 - 15:57
fuente
13

Primera regla de seguridad del producto: nunca, nunca, confíe en el proveedor diciendo que un problema de seguridad es irrelevante.

No duplicaré las respuestas técnicas dadas ya. Quiero ampliarlos y señalar que la evaluación que los lleva a evaluar el problema como irrelevante se basa en supuestos que pueden o no mantenerse en el entorno del cliente. Sin una comprensión sólida de su entorno, no pueden realizar esta llamada . Es como una compañía automotriz que dice que conducir su nuevo modelo a 250 km / h es perfectamente seguro; probablemente esté en la pista de prueba, pero en la mayoría de las carreteras del mundo real no lo sería (calidad de la carretera y tráfico).

Esto queda claro una vez que entiendes qué tan defectuosa es su evaluación. Además del historial del navegador, un parámetro GET también aparecerá en los archivos de registro de proxy y se puede enviar por error cuando alguien quiere compartir un enlace, para mencionar solo las otras dos formas más obvias en que este secreto podría filtrarse gracias a su mala decisión de ingeniería. .

Tomando en cuenta la vulnerabilidad en sí misma y su mal razonamiento y manejo en torno a ella, dudaría seriamente de su capacidad para fabricar productos seguros. Les haría saber en términos muy claros y volvería a evaluar el producto a la luz de esta nueva información.

    
respondido por el Tom 25.01.2018 - 07:25
fuente
3

Tienes razón. Hay dos cosas aquí:

  1. Credenciales en URL
  2. Caché en el navegador

Las credenciales nunca deben estar expuestas en la URL. Las URL se registran en muchos lugares, por ejemplo, servidores proxy, firewalls, etc. Me encantaría poder robar esa información si fuera el administrador del firewall o algo parecido. Ahora a su punto de que el atacante necesitaría acceso al navegador. Bueno, ¿qué tal si el usuario está utilizando una computadora pública? ¿Seguirían diciendo que es insignificante? Si lo hacen, hombre, debes dejar de usar sus servicios.

    
respondido por el H4X 25.01.2018 - 03:03
fuente

Lea otras preguntas en las etiquetas