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:
- El usuario selecciona un producto que le gustaría comprar
- El usuario es redirigido a la página de la puerta de enlace para ingresar los detalles de su tarjeta de crédito
- 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.