SAML — Failles dans l'authentification fédérée

SSO XML

Qu'est-ce que SAML ?

SAML est un protocole d'authentification fédérée basé sur XML, utilisé pour le SSO. Un Identity Provider authentifie l'utilisateur et envoie une assertion signée à un Service Provider.

Attaques courantes

# XML Signature Wrapping (XSW)
# Modifier le contenu sans casser la signature

# XXE dans le parsing SAML
<saml:Assertion>
<!DOCTYPE foo [<!ENTITY xxe SYSTEM "file:///etc/passwd">]>
...&xxe;...
</saml:Assertion>

Défenses

Valider la signature sur le NOEUD exact référencé · Désactiver la résolution d'entités externes XML · Vérifier l'audience et l'émetteur de chaque assertion