¿Hay alguna manera de saber si una aplicación de Android realmente usa SSO (inicio de sesión único)?

3

En los últimos años, los protocolos SSO como OAuth y SAML se utilizan cada vez más para permitir que terceros accedan a los recursos de algunos usuarios desde algún servicio sin la necesidad de que el usuario proporcione credenciales a terceros.

Un ejemplo de ello son las pasarelas de pago:

  1. El usuario selecciona un producto que le gustaría comprar
  2. El usuario es redirigido a la página de la puerta de enlace para ingresar los detalles de su tarjeta de crédito
  3. El usuario se redirige al sitio web del comerciante y el comerciante obtiene la confirmación de la pasarela de pago de que la transacción se realizó correctamente, sin conocer los detalles de la tarjeta de crédito del usuario

Cuando se utiliza un navegador web, me queda claro que puedo estar seguro de que estoy en una página de pasarela legítima, mirando el nombre en la barra de direcciones y comprobando que el certificado es correcto (si confío en el pago puerta de enlace).

También hay algunas aplicaciones móviles de comerciantes que utilizan SSO, al integrar el navegador en la aplicación para redirigir al usuario a la pasarela de pago. Sin embargo, en esas aplicaciones no se ve la barra de direcciones ni el certificado de la puerta de enlace. Entonces, ¿cómo puede estar seguro de que está ingresando sus detalles en la página de la pasarela de pago en lugar de la aplicación del comerciante?

Una de esas aplicaciones que vi es una aplicación local de pedidos de alimentos.

EDITAR: Como @Anthony Russell señaló, puedes usar alguna herramienta para detectar el tráfico y ver qué está pasando realmente. Si una aplicación utiliza HTTPS, puede usar Burp / Zap / mitmproxy. Si usa SSL pero no HTTPS, podría intentar revertir el motor de la aplicación, pero eso llevaría más tiempo.

    
pregunta user3362334 18.07.2017 - 17:23
fuente

1 respuesta

2

No puede saberlo, a menos que se muestre el navegador nativo. Es por eso que Google rechazó cualquier enfoque de "vista web" cuando se autentica contra su sistema OAuth2: enlace

El RFC también recomienda navegador nativo en estos casos: enlace

  

Las solicitudes de autorización de OAuth 2.0 desde aplicaciones nativas solo deben realizarse      A través de agentes de usuario externos, principalmente el navegador del usuario. Esta      La especificación detalla las razones de seguridad y usabilidad de por qué esto es      El caso, y cómo las aplicaciones nativas y los servidores de autorización pueden implementar.      esta mejor práctica.

    
respondido por el explunit 18.07.2017 - 17:40
fuente

Lea otras preguntas en las etiquetas