suplantación de ID de nombre SAML

0

Estamos utilizando el nameId de la respuesta SAML (en formato de correo electrónico) para identificar y autorizar al usuario entrante en nuestro sistema. ¿Podría un usuario autenticado diferente no alterar la respuesta SAML de su redirección para tener un ID de nombre conocido diferente? ¿Autorizándose como un usuario diferente en nuestro sistema?

    
pregunta Rob Powell 23.02.2018 - 10:50
fuente

1 respuesta

3

En general, no. La respuesta de SAML y / o las aserciones contienen una firma que sería inválida si el XML subyacente (como el valor del atributo NameId) fuera alterado. La parte que confía verifica esta firma antes de confiar en el contenido de la aserción.

Por supuesto, el software es software y podría haber errores en cualquier extremo, por ejemplo,

  1. El sistema que genera SAML (Proveedor de identidad) podría tener un error que les permita especificar nombres de usuarios arbitrarios para colocarlos en las aserciones antes de agregar la firma.
  2. El sistema receptor (Parte que confía) podría tener un error donde no se puede verificar la firma. Se debe tener en cuenta que la firma se puede encontrar en varios lugares en el SAML y hay una categoría de errores que permiten que los ataques de envoltorio de la firma XML anulen la validación prevista. Se no recomienda "validar su propia" validación de firmas. Más bien, depende de una de las implementaciones bien probadas (comercial o de código abierto) que existen para la mayoría de las plataformas.

Pero estos serían errores bastante fundamentales. La especificación SAML en sí está diseñada para proteger exactamente contra el problema que describe. Es por esto que necesita obtener la clave pública de su IDP (ya sea a través de metadatos o fuera de banda) antes de recibir cualquier aseveración de SAML. Ellos firman con su clave privada y usted verifica con la clave pública asociada.

    
respondido por el explunit 23.02.2018 - 14:19
fuente

Lea otras preguntas en las etiquetas