Skip to main content
VulnerabilityPublished Updated

CVE-2026-49283: Saml2 · SimpleSAMLphp HTTP-Artifact TLS validator confusion allows cross-IdP authentication bypass

Affects simplesamlphp/saml2Source GCVE Database

0
Compare
Authoritative record:CVE-2026-49283· High 8.7

Not known to be exploited · CVSS 8.7 High : upgrade to 6.2.1 soon.

Data as of 30 Oct 2026, 06:59 UTC

CVSS 3.1 base score
8.7High
How severe the flaw is on the 0–10 CVSS scale.
EPSS
0.4% chance of exploitation in 30 days – higher than 40% of CVEsExploit Prediction Scoring System: the likelihood attackers will use this flaw soon.
Patch
Available – fixed in 6.2.1, 5.0.6, 4.20.2 +1
CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:C/C:H/I:H/A:N

Exploitation evidence

  1. Disclosed: evidence found.

    CVE published 19 Aug 2026

  2. Detectable: no evidence on record.

    No public nuclei template indexed

  3. Weaponized: no evidence on record.

    No public exploit code indexed in Metasploit or Exploit-DB

  4. Exploited in the wild: no evidence on record.

    Not in CISA KEV and no source reports exploitation

  5. Observed by OffSeq Mirage: no evidence on record.

    No attack traffic recorded by OffSeq Mirage sensors

A missing step is not evidence of safety. Sources: cve.org (opens in a new tab), the Metasploit, Exploit-DB and nuclei-templates index as of 29 Oct 2026.

What to do

Upgrade to a fixed release listed under Affected software.

Affected software

ProductAffectedFixed in
Packagistsimplesamlphp/saml2Affected
  • >=6.0.0 <6.2.1
Fixed in
  • 6.2.1
Packagistsimplesamlphp/saml2Affected
  • >=5.0.0 <5.0.6
Fixed in
  • 5.0.6
Packagistsimplesamlphp/saml2Affected
  • >=4.20.0 <4.20.2
Fixed in
  • 4.20.2
Packagistsimplesamlphp/saml2-legacyAffected
  • >=4.20.0 <4.20.2
Fixed in
  • 4.20.2
Packagistsimplesamlphp/saml2Affected
  • <4.19.3
Fixed in
  • 4.19.3
Packagistsimplesamlphp/saml2-legacyAffected
  • <4.19.3
Fixed in
  • 4.19.3

Check your own hosts for these packages with threat-finder (opens in a new tab), our free open-source scanner.

Description

## Summary SimpleSAMLphp's HTTP-Artifact receive path can treat an unsigned embedded SAML `Response` as cryptographically valid for the wrong IdP. In the `HTTPArtifact::receive()` flow, the SOAP `ArtifactResponse` receives a TLS-based validator from `SOAPClient::addSSLValidator()`. The embedded SAML `Response` then receives a validator that delegates signature validation to that outer `ArtifactResponse`. Later, the SP validates the embedded `Response` against metadata selected from the embedded response issuer, not necessarily the artifact issuer. The critical issue is that `SOAPClient::validateSSL()` returns normally when the TLS public key does not match the key currently being validated. `SAML2\Message::validate()` treats any validator call that does not throw an exception as successful. As a result, an `ArtifactResponse` obtained from one IdP can validate an unsigned embedded SAML `Response` that claims to be issued by a different IdP. In a multi-IdP/federation deployment where a malicious or lower-trust IdP can issue an HTTP-Artifact response to an SP, this can allow the attacker to authenticate to the SP as arbitrary users from a higher-trust victim IdP. ## Impact A malicious or lower-trust IdP in the same SP/federation trust set can authenticate to the SP as users from another IdP when HTTP-Artifact is used. The attacker can choose assertion attributes, `NameID`, and session data in the forged unsigned assertion. This is an authentication bypass and identity-provider impersonation issue. In realistic federations, the security boundary between IdPs matters: a compromised or low-assurance IdP should not be able to mint identities for a high-assurance IdP.

References

Community reviews

Loading reviews…