Skip to content

Security1 publisher2 min readPublished

Trail of Bits traces SAML's insecurity to the XML signature layer underlying most fielded implementations

SAML's security rests on XML signature validation, and most fielded implementations hand that job to libxmlsec. Trail of Bits says that dependency is the reason to deprecate the protocol and move SSO to OpenID Connect.

The Watch · Security desk

Illustration accompanying Trail of Bits traces SAML's insecurity to the XML signature layer underlying most fielded implementations

What happened

  • Trail of Bits published an argument that SAML has reached the end of its useful life and that organisations should move single sign-on to OpenID Connect.
  • The signature-wrapping attack class was documented against SAML in the 2012 paper "On Breaking SAML: Be Whoever You Want to Be", which the post treats as the origin of the research line.
  • Ping Identity, OneLogin and Okta were founded between 2002 and 2009 on the SAML protocol, and Duo Security, founded in 2010, shipped its first SSO product in 2015.

Compiled by The WatchSomething wrong?How this is made

Why it matters

  • exposure Anyone validating SAML assertions inherits whatever XML signature library sits beneath the identity provider, and that code path is not visible in the SSO configuration an operator actually reviews.
  • constraint The SSO industry was built on this protocol, so an enterprise cannot retire SAML faster than its identity vendor and its SaaS estate support an alternative.
  • decision An identity team asking for OIDC migration budget can now point to a published design argument from a security firm instead of arguing protocol preference. That changes how the request is scored against patch work.

Thomas Ptacek put the dependency in one sentence in 2023, and the post quotes him: "What's insidious about SAML is that it really is mostly straightforward to understand, but it's built on a foundation of sand, bone dust, and ash; it works ... if you assume XML signature validation is reliable. But XML signature validation is deeply cursed, and is so complicated that most fielded SAML implementations are wrapping libxmlsec, a gnarly C codebase nobody reads." [4]

The claim is narrow, and it is testable: the assertion flow is the comprehensible part, and the cryptographic check underneath it is not. In deployed systems that check is usually a C library the identity vendor did not write. Trail of Bits says SAML is "being crushed under the weight of its own complexity" and should be replaced with OpenID Connect. [11][1]

The people who would have to act on that built their products on the protocol. Ping Identity was founded in 2002, OneLogin and Okta in 2009, Duo Security in 2010; all but Duo were essentially built on SAML, and Duo shipped its first SSO product in 2015. [8] The academic and enterprise stack came earlier: CAS at Yale in 2002, Shibboleth IdP from Internet2 in 2003, Microsoft's ADFS in 2003, simpleSAMLphp from Uninett around 2007, all of which eventually supported SAML. [9] The post's author says he worked on Duo's first on-premises Access Gateway, which was built on simpleSAMLphp and SAML. [10]

The design record starts with a merge. SAML was created in 2002 by the OASIS Security Services Technical Committee, which took in four separate XML security specifications: S2ML from Netegrity, AuthXML from Securant, X-TASS from VeriSign, and ITML from Jamcracker. [2][3]

The attack class is XML signature wrapping, which the post calls the arrow to SAML's heel, with earlier signature wrapping research in 2005, 2008 and 2009 and SAML-specific work in 2008. [5] "On Breaking SAML: Be Whoever You Want to Be" landed in 2012, ten years after the specification [12] and seven years after the earliest signature wrapping paper the post cites. [13] Kelby Ludwig's XML comment bypass came later, at the implementation layer rather than the design layer. [7]

The supplied text does not cite a CVE or report active exploitation; the case is the design origin and the research lineage, and it ends with a recommendation to move on. [14] An identity owner can defend a scheduled migration on that. There is nothing here that justifies an emergency change window, and whether the migration can start at all depends on which SaaS vendors in the estate accept an OIDC client registration today.

What to watch

  • Whether Okta, Ping Identity or Microsoft publish a SAML deprecation timeline for their SSO products.
  • The rest of the Trail of Bits series, and whether it names current implementations still wrapping libxmlsec.
  • A new signature-wrapping or comment-injection finding against a widely deployed identity provider. That would move this from design critique to incident.
Loading claim ledger
Loading source directory links
Loading share composer
Loading topic controls
Loading related stories