Every CVE Search/ Get API key

CVE-2024-52806

SimpleSAMLphp SAML2 has an XXE in parsing SAML messages

8.3 HighPublic exploitFix available

SimpleSAMLphp SAML2 library is a PHP library for SAML2 related functionality. When loading an (untrusted) XML document, for example the SAMLResponse, it's possible to induce an XXE. This vulnerability is fixed in 4.6.14 and 5.0.0-alpha.18.

Attack profile

How easy it is to exploit

Attack vector
Network
Complexity
Low
Privileges needed
None
User interaction
None

What an attacker can affect

Confidentiality
Low
Integrity
Low
Availability
Low

Exploit likelihood

0.43%Up 0.4 points since Dec 3, 2024
90%50%10%1%

What each source reports

CVE List Score used 8.3

SimpleSAMLphp SAML2 has an XXE in parsing SAML messages

SimpleSAMLphp SAML2 library is a PHP library for SAML2 related functionality. When loading an (untrusted) XML document, for example the SAMLResponse, it's possible to induce an XXE. This vulnerability is fixed in 4.6.14 and 5.0.0-alpha.18.

Record
CVE-2024-52806
CVSS 3.1
8.3 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:L/I:L/A:L
Weakness
CWE-611
Updated
2026-11-02
EUVDEUVD-2024-3495 8.3

SimpleSAMLphp SAML2 library is a PHP library for SAML2 related functionality. When loading an (untrusted) XML document, for example the SAMLResponse, it's possible to induce an XXE. This vulnerability is fixed in 4.6.14 and 5.0.0-alpha.18.

Record
EUVD-2024-3495
CVSS 3.1
8.3 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:L/I:L/A:L
Updated
2026-11-03
GitHub AdvisoriesGHSA-pxm4-r5ph-q2m2 6.9

SimpleSAMLphp SAML2 has an XXE in parsing SAML messages

Summary

When loading an (untrusted) XML document, for example the SAMLResponse, it's possible to induce an XXE.

$options is defined as: https://github.com/simplesamlphp/saml2/blob/717c0adc4877ebd58428637e5626345e59fa0109/src/SAML2/DOMDocumentFactory.php#L41 including the DTDLoad option, which allows an attacker to read file contents from local file system OR internal network.

While there is the NONET option, an attacker can simply bypass if by using PHP filters: php://filter/convert.base64-encode/resource=http://URL OR FILE

From there an attacker can induce network connections and steal the targeted file OOB (haven't fully tested this).

RCE may be possible with the php://expect or php://phar wrappers, but this hasn't been tested.

Note: The mitigation here: https://github.com/simplesamlphp/saml2/blob/717c0adc4877ebd58428637e5626345e59fa0109/src/SAML2/DOMDocumentFactory.php#L63-L69 Comes too late, as the XML has already been loaded into a document. Mitigation:

Remove the LIBXML_DTDLOAD | LIBXML_DTDATTR options. Additionally, as a defense in depth measure, check if there is the string: <!DOCTYPE inside the XML before parsing it. (This is not a complete fix because someone may be able to exploit some parser differentials, to load a DOCTYPE, maybe through spacing like: <! DOCTYPE)

Record
GHSA-pxm4-r5ph-q2m2
CVSS 4.0
6.9 MediumCVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:N/SC:L/SI:L/SA:L
CVSS 3.1
8.3 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:L/I:L/A:L
Weakness
CWE-611
Updated
2026-11-02
NVD 8.3

SimpleSAMLphp SAML2 library is a PHP library for SAML2 related functionality. When loading an (untrusted) XML document, for example the SAMLResponse, it's possible to induce an XXE. This vulnerability is fixed in 4.6.14 and 5.0.0-alpha.18.

Record
CVE-2024-52806
CVSS 3.1
8.3 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:L/I:L/A:L
Weakness
CWE-611
Updated
2026-11-02
OSV 8.3

SimpleSAMLphp SAML2 has an XXE in parsing SAML messages

SimpleSAMLphp SAML2 library is a PHP library for SAML2 related functionality. When loading an (untrusted) XML document, for example the SAMLResponse, it's possible to induce an XXE. This vulnerability is fixed in 4.6.14 and 5.0.0-alpha.18.

Record
CVE-2024-52806
CVSS 3.1
8.3 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:L/I:L/A:L
Weakness
CWE-611
Updated
2026-11-04
OSVDEBIAN-CVE-2024-52806 8.3

SimpleSAMLphp SAML2 library is a PHP library for SAML2 related functionality. When loading an (untrusted) XML document, for example the SAMLResponse, it's possible to induce an XXE. This vulnerability is fixed in 4.6.14 and 5.0.0-alpha.18.

Record
DEBIAN-CVE-2024-52806
CVSS 3.1
8.3 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:L/I:L/A:L
Updated
2026-11-02
OSVGHSA-pxm4-r5ph-q2m2 6.9

SimpleSAMLphp SAML2 has an XXE in parsing SAML messages

Summary

When loading an (untrusted) XML document, for example the SAMLResponse, it's possible to induce an XXE.

$options is defined as: https://github.com/simplesamlphp/saml2/blob/717c0adc4877ebd58428637e5626345e59fa0109/src/SAML2/DOMDocumentFactory.php#L41 including the DTDLoad option, which allows an attacker to read file contents from local file system OR internal network.

While there is the NONET option, an attacker can simply bypass if by using PHP filters: php://filter/convert.base64-encode/resource=http://URL OR FILE

From there an attacker can induce network connections and steal the targeted file OOB (haven't fully tested this).

RCE may be possible with the php://expect or php://phar wrappers, but this hasn't been tested.

Note: The mitigation here: https://github.com/simplesamlphp/saml2/blob/717c0adc4877ebd58428637e5626345e59fa0109/src/SAML2/DOMDocumentFactory.php#L63-L69 Comes too late, as the XML has already been loaded into a document. Mitigation:

Remove the LIBXML_DTDLOAD | LIBXML_DTDATTR options. Additionally, as a defense in depth measure, check if there is the string: <!DOCTYPE inside the XML before parsing it. (This is not a complete fix because someone may be able to exploit some parser differentials, to load a DOCTYPE, maybe through spacing like: <! DOCTYPE)

Record
GHSA-pxm4-r5ph-q2m2
CVSS 4.0
6.9 MediumCVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:N/SC:L/SI:L/SA:L
CVSS 3.1
8.3 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:L/I:L/A:L
Weakness
CWE-611
Updated
2026-11-02
OSVUBUNTU-CVE-2024-52806 8.3

SimpleSAMLphp SAML2 library is a PHP library for SAML2 related functionality. When loading an (untrusted) XML document, for example the SAMLResponse, it's possible to induce an XXE. This vulnerability is fixed in 4.6.14 and 5.0.0-alpha.18.

Record
UBUNTU-CVE-2024-52806
CVSS 3.1
8.3 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:L/I:L/A:L
Updated
2026-11-02

Affected products

Affected packages

Affected packages
PackageAffectedFixed
simplesamlphp/saml2
Packagist
before 4.6.14
4.6.14
simplesamlphp/saml2-legacy
Packagist
before 4.6.14
4.6.14
simplesamlphp
Debian:12
before 1.19.7-1+deb12u1, plus listed versions
1.19.7-1
1.19.7-1+deb12u1
simplesamlphp
Debian:14
before 1.19.7-1+deb12u1, plus listed versions
1.10.0-11.11.0-11.12.0-11.12.0~rc1-11.12.0~rc2-1
Show 45 moreShow less
1.13.0-11.13.1-11.13.1-21.13.2-11.14.0-11.14.1-11.14.10-11.14.11-11.14.15-11.14.2-11.14.2-21.14.3-11.14.4-11.14.5-11.14.6-11.14.7-11.14.8-11.14.9-11.15.0-11.15.1-11.15.2-11.15.3-11.15.4-11.16.0-11.16.1-11.16.2-11.16.3-11.17.0-11.17.1-11.17.2-11.17.2-21.17.3-11.17.4-11.17.5-11.17.6-11.17.6-21.18.1-11.18.4-11.18.5-11.18.6-11.18.7-11.18.8-11.19.0-11.19.1-11.19.1-1.1
1.19.7-1+deb12u1
simplesamlphp
Debian:11
From an advisory covering 2 CVEs
before 1.19.0-1+deb11u1, plus listed versions
1.19.0-1
1.19.0-1+deb11u1
simplesamlphp
Debian:12
From an advisory covering 2 CVEs
before 1.19.7-1+deb12u1, plus listed versions
1.19.7-1
1.19.7-1+deb12u1
simplesamlphp/saml2
Packagist
before 4.6.14, plus listed versions
4.6.9v0.1.0v0.1.0-alphav0.3.0v0.4.0
Show 45 moreShow less
v0.4.1v0.4.2v0.5.0v0.6.0v0.6.1v0.6.2v0.6.3v0.6.4v0.7.0v0.7.1v0.8.0v0.8.1v1.0.0v1.1.0v1.10v1.10.1v1.10.2v1.10.3v1.10.4v1.10.5v1.10.6v1.2.0v1.3.0v1.3.1v1.3.2v1.4.0v1.5.0v1.5.1v1.5.2v1.5.3v1.5.4v1.6.0v1.6.1v1.7.0v1.7.1v1.7.2v1.8v1.8.1v1.8.2v1.9v1.9.1v1.9.2v2.0.0v2.0.1v2.1
4.6.14
simplesamlphp/saml2-legacy
Packagist
before 4.6.14, plus listed versions
4.6.9v0.1.0v0.1.0-alphav0.3.0v0.4.0
Show 45 moreShow less
v0.4.1v0.4.2v0.5.0v0.6.0v0.6.1v0.6.2v0.6.3v0.6.4v0.7.0v0.7.1v0.8.0v0.8.1v1.0.0v1.1.0v1.10v1.10.1v1.10.2v1.10.3v1.10.4v1.10.5v1.10.6v1.2.0v1.3.0v1.3.1v1.3.2v1.4.0v1.5.0v1.5.1v1.5.2v1.5.3v1.5.4v1.6.0v1.6.1v1.7.0v1.7.1v1.7.2v1.8v1.8.1v1.8.2v1.9v1.9.1v1.9.2v2.0.0v2.0.1v2.1
4.6.14
simplesamlphp
Ubuntu:Pro:16.04:LTS
All versions, plus listed versions
1.13.2-11.14.0-11.14.0-1ubuntu21.14.0-1ubuntu2+esm1
None known
simplesamlphp
Ubuntu:Pro:18.04:LTS
All versions, plus listed versions
1.14.15-11.15.0-11.15.1-11.15.2-11.15.3-11.15.3-1ubuntu0.1~esm1
None known
Show 4 moreShow less
Affected packages
PackageAffectedFixed
simplesamlphp
Ubuntu:Pro:20.04:LTS
All versions, plus listed versions
1.17.5-11.17.6-11.17.6-21.18.1-11.18.4-11.18.4-1ubuntu0.1~esm1
None known
simplesamlphp
Ubuntu:Pro:22.04:LTS
All versions, plus listed versions
1.19.1-11.19.1-1.11.19.1-1.1ubuntu0.1~esm1
None known
simplesamlphp
Ubuntu:24.04:LTS
All versions, plus listed versions
1.19.7-11.19.7-1+deb12u1ubuntu0.1
None known
simplesamlphp
Ubuntu:25.10
All versions, plus listed versions
1.19.7-1+deb12u11.19.7-2
None known

Public exploits

Links only. Every CVE stores no exploit code.

Public exploits
SourceLinkDate
PoC in GitHubheartlesseorg-dot/CVE-2024-52806-PoC2026-08-12

History

History
RecordedChangedSources
affected
factsOSV
aliasesEUVD
first indexedCVE List, GitHub Advisories, NVD, OSV, PoC in GitHub

Dates are when Every CVE recorded each change. Upstream dates may differ.

In short

CVE-2024-52806 is a high vulnerability (CVSS 8.3) in Simplesamlphp Saml2, published December 2, 2024. Public exploit code exists. EPSS puts the chance of exploitation in the next 30 days at 0.43%, the 37th percentile. Fixed in simplesamlphp/saml2 4.6.14.

References

This page doesn't list everything

Left out here: 200 versions. The JSON record has them.

MoveEnter Open