La gestión de múltiples credenciales de acceso se ha convertido en un desafío significativo para usuarios y organizaciones. Aquí es donde entra en juego el Single Sign-On (SSO), una solución que permite a los usuarios acceder a múltiples aplicaciones con un solo conjunto de credenciales. Sin embargo, la implementación de SSO no está exenta de desafíos.
Desafíos en la Implementación de SSO
La filtración de credenciales sigue siendo una de las tácticas de penetración más frecuentemente utilizadas por los ciberatacantes. En el año 2023, los expertos de Kaspersky Digital Footprint Intelligence identificaron en la Dark Web más de 3100 anuncios que ofrecían acceso a recursos corporativos. Para abordar de manera más efectiva los riesgos asociados, reducir la cantidad de cuentas vulnerables y detectar y bloquear intentos de acceso no autorizado de manera más rápida, las empresas están implementando sistemas de gestión de identidad, los cuales hemos abordado detalladamente previamente.
No obstante, un proceso de gestión de identidad eficiente no es viable hasta que la mayoría de los sistemas corporativos sean compatibles con la autenticación unificada. Por lo general, los sistemas internos dependen de un catálogo centralizado, como Active Directory (Entra ID), para la autenticación unificada, mientras que los sistemas externos basados en SaaS se integran con el catálogo de identidad corporativa a través de una plataforma de inicio de sesión único (SSO), que puede estar ubicada externamente o alojada en la infraestructura de la empresa.
Desde la perspectiva de los trabajadores, esto simplifica en gran medida el proceso de inicio de sesión. Para acceder a sistemas externos, los trabajadores completan el procedimiento de autenticación estándar, que implica ingresar una contraseña y proporcionar un segundo factor de autenticación, como una contraseña de un solo uso o un token USB, de acuerdo con la política de la empresa. No se requieren múltiples inicios de sesión ni contraseñas adicionales. Además, una vez que un trabajador inicia sesión en uno de los sistemas por la mañana, automáticamente se autentica en los demás. En teoría, este proceso es seguro, ya que los equipos de TI y de seguridad de la información tienen un control centralizado sobre las cuentas, las políticas de contraseñas, los métodos de autenticación de múltiples factores y los registros. Sin embargo, en la vida real, la seguridad implementada por los sistemas externos que admiten SSO puede no ser tan rigurosa.
Te podrá interesar: Single Sign On (SSO): Simplificando la Autenticación
Deficiencias en la Implementación de SSO
Cuando un usuario inicia sesión en un sistema de Software como Servicio (SaaS), se lleva a cabo un proceso en el cual el servidor del sistema, el dispositivo cliente del usuario y la plataforma SSO (Inicio de Sesión Único, por sus siglas en inglés) se comunican para validar al usuario y emitir tokens de autenticación al SaaS y al dispositivo. Estos tokens confirman los permisos del usuario y pueden incluir varios atributos que afectan a la seguridad, tales como:
- Expiración del token (y de la sesión), que requiere que el usuario se autentique nuevamente.
- Referencia a un navegador o dispositivo móvil específico.
- Restricciones relacionadas con direcciones IP específicas o rangos de IP, permitiendo restricciones geográficas, por ejemplo.
- Condiciones adicionales para el vencimiento de la sesión, como el cierre del navegador o la desconexión desde la plataforma SSO.
El principal desafío radica en que algunos proveedores de servicios en la nube pueden malinterpretar o incluso ignorar estas restricciones, lo que socava el modelo de seguridad diseñado por el equipo de seguridad de la información. Además de esto, algunas plataformas SaaS pueden carecer de controles adecuados para validar la autenticidad de los tokens, lo que crea oportunidades para la falsificación.
Podría interesarte leer: ¿Cómo SaaS Puede Transformar tu Empresa?
¿Cómo los hackers explotan las vulnerabilidades en la implementación de SSO?
El escenario más habitual implica el robo de tokens de autenticación. Esto puede incluir el robo de cookies almacenadas en la computadora del usuario, la interceptación de tráfico de red o la captura de archivos HAR (registros de tráfico). El uso de un token en un dispositivo diferente o desde una dirección IP distinta suele ser una señal suficientemente clara para la plataforma SaaS, lo que requiere una revalidación y posiblemente una reautenticación por parte del usuario. Sin embargo, en la realidad, los actores maliciosos a menudo logran utilizar tokens robados para acceder al sistema en nombre del usuario legítimo, burlando así contraseñas, códigos de un solo uso y otras medidas de seguridad de la información.
Otro escenario común es el phishing dirigido, que se basa en la creación de sitios web corporativos falsos y, si es necesario, el uso de un proxy inverso como evilginx2 para robar contraseñas, códigos MFA y también tokens de autenticación.
Podría interesarte leer: ¿Usar Google/Facebook para Entrar a Sitios Web?
Mejorando la Seguridad del Inicio de Sesión Único (SSO)
-
Evaluar a los Proveedores de SaaS: El equipo de seguridad de la información puede incluir la evaluación de la implementación de SSO de los proveedores de SaaS como parte de las preguntas que estos deben responder al presentar sus propuestas. Estas preguntas deberían abordar aspectos como el cumplimiento de restricciones diversas, la validación, la expiración y la revocación de tokens. Además, se pueden llevar a cabo auditorías del código de la aplicación, pruebas de integración, análisis de vulnerabilidades y pruebas de penetración como pasos adicionales de evaluación.
-
Planificar Medidas Compensatorias: Existen diversas estrategias para prevenir la manipulación y el robo de tokens. Por ejemplo, la implementación de la Detección y Respuesta a Amenazas (EDR) reduce significativamente el riesgo de infección por malware o de caer en sitios de phishing. La Gestión de Dispositivos Móviles (MDM) puede controlar el acceso móvil a recursos corporativos, y en algunos casos, es recomendable excluir dispositivos no gestionados de los servicios corporativos.
-
Configurar Sistemas de Análisis de Tráfico y Gestión de Identidades: Configurar sistemas de análisis de tráfico y gestión de identidades para supervisar las solicitudes y respuestas de SSO es fundamental. Esto permite detectar solicitudes sospechosas que provienen de aplicaciones cliente no habituales, usuarios atípicos, direcciones IP inesperadas, entre otros. Además, se pueden abordar los tokens con una vida útil excesivamente larga mediante el control de tráfico.
-
Exigir una Implementación de SSO Mejorada: Muchos proveedores de SaaS consideran el SSO como un servicio adicional para el cliente y no priorizan la seguridad de la información. Colaborar con el equipo de adquisiciones puede ayudar a influir en este aspecto, pero los cambios pueden ser lentos. Al hablar con los proveedores de SaaS, es recomendable preguntar acerca de sus planes para mejorar la función SSO, incluyendo la compatibilidad con restricciones de tokens mencionadas previamente (como bloqueo geográfico y caducidad), o cualquier plan para adoptar protocolos de intercambio de tokens más estandarizados.
Podría interesarte leer: Lidiando con lo Inesperado: Gestión de Incidentes de IT
Conclusión
La implementación de SSO es una estrategia crucial para mejorar la eficiencia y la seguridad en el manejo de identidades digitales. Si bien presenta desafíos, como la integración con sistemas existentes, la seguridad, la gestión de identidades y accesos, y la experiencia del usuario, estos pueden superarse con una planificación cuidadosa, la selección de un proveedor adecuado, formación y soporte continuo, pruebas exhaustivas y un monitoreo constante.
Al superar estos desafíos, las organizaciones pueden disfrutar de los numerosos beneficios de SSO, incluyendo una mejor experiencia de usuario, una gestión de accesos más eficiente y una seguridad reforzada. La clave está en abordar estos desafíos con una estrategia bien pensada y una ejecución meticulosa.