Se han revelado dos fallas de seguridad de alta severidad en la biblioteca Ruby-SAML de código abierto que podrían permitir a los actores maliciosos evitar las protecciones de autenticación de Lenguaje de Marca de Afirmación de Seguridad (SAML).
SAML es un lenguaje de marcado basado en XML y un estándar abierto utilizado para intercambiar datos de autenticación y autorización entre partes, habilitando características como Single Sign-On (SSO), que permite a las personas usar un solo conjunto de credenciales para acceder a múltiples sitios, servicios y aplicaciones.
Las vulnerabilidades, rastreadas como CVE-2025-25291 y CVE-2025-25292lleva una puntuación CVSS de 8.8 de 10.0. Afectan las siguientes versiones de la biblioteca –
- <1.12.4
- > = 1.13.0, <1.18.0
Tanto las deficiencias se derivan de cómo REXML y Nokogiri analizan XML de manera diferente, lo que hace que los dos analizadores generen estructuras de documentos completamente diferentes a partir de la misma entrada XML
Este diferencial de analizador permite que un atacante pueda ejecutar un ataque de envoltura de firma, lo que lleva a un bypass de autenticación. Las vulnerabilidades han sido dirigido En las versiones de Ruby-Saml 1.12.4 y 1.18.0.
Github, propiedad de Microsoft, que descubrió e informó los defectos en noviembre de 2024, dijo que los actores maliciosos podrían abusar de ellos para realizar ataques de adquisición de cuentas.
«Los atacantes que están en posesión de una sola firma válida que se creó con la clave utilizada para validar las respuestas o afirmaciones de SAML de la organización específica puede usarla para construir las afirmaciones de SAML y, a su vez, pueden iniciar sesión como cualquier usuario», el investigador del laboratorio de seguridad de Github, Peter Stöckli, dicho en una publicación.
La subsidiaria propiedad de Microsoft también señaló que el problema se reduce a una «desconexión» entre la verificación del hash y la verificación de la firma, abriendo la puerta a la explotación a través de un diferencial de analizador.
Las versiones 1.12.4 y 1.18.0 también enchufan una falla remota de negación de servicio (DOS) al manejar las respuestas SAML comprimidas (CVE-2025-25293, puntaje CVSS: 7.7). Se recomienda a los usuarios que actualicen la última versión para salvaguardar contra posibles amenazas.
Los hallazgos se producen casi seis meses después de que Gitlab y Ruby-Saml se movieron para abordar otra vulnerabilidad crítica (CVE-2024-45409Puntaje CVSS: 10.0) que también podría dar como resultado un bypass de autenticación.