¿SSO / OAuth es inherentemente dañado?

1

De la forma en que lo entiendo, todo el concepto de OAuth / SSO consiste en permitirle a un usuario la posibilidad de tener una contraseña central que puede usar en una multitud de sitios sin comprometerla porque realmente están ingresando al servicio que aloja su contraseña. .

Ahora, salvo el uso de la autenticación de dos factores, ya que el usuario promedio no usa esta función, y usa la función SSO de Google como ejemplo, pero esto se aplica a todos los servicios similares:

Lo que me impide escribir una aplicación que simplemente informa a un usuario que admitimos que inicie sesión con Google y que, en lugar de redirigirlos a la página SSO adecuada, solo proporciono un lugar para su nombre de usuario y contraseña de Google. Luego emulo al usuario y autorizo mi aplicación a través del proceso normal de inicio de sesión (SSO, por sus siglas en inglés) para que nada parezca anormal, y también almacene su nombre de usuario y contraseña de Google en mi servidor privado para fines maliciosos más adelante.

Y si la respuesta es nada me detendría, ¿por qué no es obligatoria la autenticación de 2 factores en todas estas implementaciones?

    
pregunta Andrew Hendrix 18.01.2017 - 01:09
fuente

1 respuesta

4

Aparte de los aspectos legales mencionados por Neil McGuigan en los comentarios, también es difícil emular perfectamente, por ejemplo, Google. Por un lado, cuando inicio sesión, Google muestra la imagen de mi perfil. En segundo lugar, me pide que realice mi validación de 2FA (lo sé, supones que la mayoría de las personas no usan esto, pero para quienes lo hacen, su ausencia es una bandera roja).

Leyendo su pregunta detenidamente, me di cuenta de esta declaración:

  

Luego emulo al usuario y autorizo mi aplicación a través del proceso normal de inicio de sesión (SSO, por sus siglas en inglés) para que nada parezca anormal

¿Qué quieres decir exactamente con esto? Suponiendo que en este momento ha capturado las credenciales de los usuarios, ¿cómo puede dar vuelta y usarlas para realizar realmente el SSO? No hay forma de que su servidor se autentique con esas credenciales de manera que establezca las cookies correctas en el navegador del usuario, lo que es importante para que el SSO funcione.

Realmente, si fueras a ejecutar este tipo de ataque, también sería mejor falsificar el SSO, u omitirlo por completo, y simplemente almacenar las credenciales para su posterior recuperación.

Pero, nada de esto es específico de OAuth o SSO en sí. Es solo un intento de phishing, no importa cómo se inicie.

    
respondido por el Mike Caron 18.01.2017 - 07:11
fuente

Lea otras preguntas en las etiquetas