GHSA-f4g9-h89h-jgv9 · Severity: medium · Ecosystem: pip — SAML XML Signature wrapping in PySAML2
PySAML2 is a pure python implementation of SAML Version 2 Standard. PySAML2 before 6.5.0 has an improper verification of cryptographic signature vulnerability. All users of pysaml2 that need to validate signed SAML documents are impacted. The vulnerability is a variant of XML Signature wrapping because it did not validate the SAML document against an XML schema. This allowed invalid XML documents to be processed and such a document can trick pysaml2 with a wrapped signature. This is fixed in PySAML2 6.5.0.
Conclusion & alert: CVE-2021-21238 is rated Moderate Risk (48.1/100): CVSS Medium severity, with medium exploitation likelihood (EPSS 1.08%). Mandatory action: Review affected assets and schedule remediation.
Risk is dynamic; we continuously reassess and refresh what is shown on this page as upstream context changes.
EPSS lead: Daily EPSS estimates relative likelihood of exploitation; percentile ranks this CVE among scored vulnerabilities (higher = more severe relative rank).
| # | Date | Old EPSS score | New EPSS score | Delta (New - Old) |
|---|---|---|---|---|
| 1 | 2026-06-15 | 0.14% | 1.08% | +0.94% |
| 2 | 2025-11-21 | 0.16% | 0.14% | -0.02% |
| 3 | 2025-11-18 | — | 0.16% | — |
Full EPSS history (10 records total)
CVSS metrics for this CVE.
| Base score | Version | Severity | Vector | Exploitability | Impact | Score source |
|---|---|---|---|---|---|---|
| 6.5 | 3.1 | MEDIUM |
|
2.8 | 3.6 | [email protected] |
| 6.5 | 3.1 | MEDIUM |
|
2.8 | 3.6 | [email protected] |
| 4.3 | 2.0 | MEDIUM |
|
8.6 | 2.9 | [email protected] |
GHSA-f4g9-h89h-jgv9 · Severity: medium · Ecosystem: pip — SAML XML Signature wrapping in PySAML2
| vendor | priority | summary | link |
|---|---|---|---|
alpine
|
medium | CVE-2021-21238: 1 source package rows (py3-saml2); 7 state rows across 7 repos (3.17-community, 3.18-community, 3.19-community, 3.20-community, 3.21-community, 3.22-community, edge-community); fixed 7, open 0. | https://security.alpinelinux.org/vuln/CVE-2021-21238 |
debian
|
not yet assigned | CVE-2021-21238 not yet assigned priority: Debian including 1 source packages (python-pysaml2), 5 status rows across 5 suites (bookworm, bullseye, forky, sid, trixie): resolved 5. | https://security-tracker.debian.org/tracker/CVE-2021-21238 |
redhat
|
medium | — | https://access.redhat.com/security/cve/CVE-2021-21238 |
suse
|
medium | CVE-2021-21238 severity moderate: SUSE including 137 source package names (ardana-cobbler-8.0+git.1614096566.e8c2b27-3.44.3, ardana-neutron-9.0+git.1615223676.777f0b3-3.25.2, …), 256 product×package rows across 6 product lines (HPE Helion OpenStack 8, SUSE OpenStack Cloud 8, … (6 product lines)): Fixed 256. | https://www.suse.com/security/cve/CVE-2021-21238/ |
ubuntu
|
low | CVE-2021-21238 low priority: Ubuntu including 1 source packages (python-pysaml2), 16 status rows across 16 suites (bionic, focal, groovy, hirsute, impish, jammy, kinetic, lunar, mantic, noble, oracular, plucky, questing, trusty, upstream, xenial): not-affected 6, ignored 4, needed 4, DNE 1, released 1. | https://ubuntu.com/security/CVE-2021-21238 |
| Vendor | Product | Version | Raw CPE |
|---|---|---|---|
| pysaml2_project | pysaml2 | < 6.5.0 | cpe:2.3:a:pysaml2_project:pysaml2:*:*:*:*:*:*:*:* |
| URL | Tags |
|---|---|
| https://github.com/IdentityPython/pysaml2/commit/1d8fd268f5bf887480a403a7a5ef8f048157cc14 | Patch Third Party Advisory |
| https://github.com/IdentityPython/pysaml2/releases/tag/v6.5.0 | Third Party Advisory |
| https://github.com/IdentityPython/pysaml2/security/advisories/GHSA-f4g9-h89h-jgv9 | Third Party Advisory |
| https://pypi.org/project/pysaml2 | Product Third Party Advisory |