Every CVE Search/ Get API key

CVE-2026-76875

PyPy pyexpat ExternalEntityParserCreate Use-After-Free

6.3 MediumFix available

PyPy before versions 3.11.16 and 3.12.14 contains a use-after-free vulnerability in the pyexpat module's ExternalEntityParserCreate function that allows attackers to corrupt memory by supplying a crafted XML document to applications that create external-entity sub-parsers without retaining a reference to the parent parser. The child parser retains a raw C back-pointer to the parent parser struct while PyPy's tracing garbage collector can free the parent's C struct, causing bundled libexpat to dereference the freed pointer on every parsed token, producing memory corruption.

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
None
Integrity
Low
Availability
None

Exploit likelihood

0.24%Unchanged since Sep 30, 2026
90%50%10%1%

What each source reports

CVE List Score used 6.3

PyPy pyexpat ExternalEntityParserCreate Use-After-Free

PyPy before versions 3.11.16 and 3.12.14 contains a use-after-free vulnerability in the pyexpat module's ExternalEntityParserCreate function that allows attackers to corrupt memory by supplying a crafted XML document to applications that create external-entity sub-parsers without retaining a reference to the parent parser. The child parser retains a raw C back-pointer to the parent parser struct while PyPy's tracing garbage collector can free the parent's C struct, causing bundled libexpat to dereference the freed pointer on every parsed token, producing memory corruption.

Record
CVE-2026-76875
CVSS 4.0
6.3 MediumCVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N
CVSS 3.1
5.3 MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N
Weakness
CWE-416
Updated
2026-11-02
EUVDEUVD-2026-88811 6.3

PyPy before versions 3.11.16 and 3.12.14 contains a use-after-free vulnerability in the pyexpat module's ExternalEntityParserCreate function that allows attackers to corrupt memory by supplying a crafted XML document to applications that create external-entity sub-parsers without retaining a reference to the parent parser. The child parser retains a raw C back-pointer to the parent parser struct while PyPy's tracing garbage collector can free the parent's C struct, causing bundled libexpat to dereference the freed pointer on every parsed token, producing memory corruption.

Record
EUVD-2026-88811
CVSS 4.0
6.3 MediumCVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N
Updated
2026-11-02
GitHub AdvisoriesGHSA-4h3r-h8c5-46cf 6.3

PyPy before versions 3.11.16 and 3.12.14 contains a use-after-free vulnerability in the pyexpat...

PyPy before versions 3.11.16 and 3.12.14 contains a use-after-free vulnerability in the pyexpat module's ExternalEntityParserCreate function that allows attackers to corrupt memory by supplying a crafted XML document to applications that create external-entity sub-parsers without retaining a reference to the parent parser. The child parser retains a raw C back-pointer to the parent parser struct while PyPy's tracing garbage collector can free the parent's C struct, causing bundled libexpat to dereference the freed pointer on every parsed token, producing memory corruption.

Record
GHSA-4h3r-h8c5-46cf
CVSS 4.0
6.3 MediumCVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
CVSS 3.1
5.3 MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N
Weakness
CWE-416
Updated
2026-11-02
NVD 6.3

PyPy before versions 3.11.16 and 3.12.14 contains a use-after-free vulnerability in the pyexpat module's ExternalEntityParserCreate function that allows attackers to corrupt memory by supplying a crafted XML document to applications that create external-entity sub-parsers without retaining a reference to the parent parser. The child parser retains a raw C back-pointer to the parent parser struct while PyPy's tracing garbage collector can free the parent's C struct, causing bundled libexpat to dereference the freed pointer on every parsed token, producing memory corruption.

Record
CVE-2026-76875
CVSS 4.0
6.3 MediumCVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
CVSS 3.1
5.3 MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N
Weakness
CWE-416
Updated
2026-11-02
OSV 6.3

PyPy pyexpat ExternalEntityParserCreate Use-After-Free

PyPy before versions 3.11.16 and 3.12.14 contains a use-after-free vulnerability in the pyexpat module's ExternalEntityParserCreate function that allows attackers to corrupt memory by supplying a crafted XML document to applications that create external-entity sub-parsers without retaining a reference to the parent parser. The child parser retains a raw C back-pointer to the parent parser struct while PyPy's tracing garbage collector can free the parent's C struct, causing bundled libexpat to dereference the freed pointer on every parsed token, producing memory corruption.

Record
CVE-2026-76875
CVSS 4.0
6.3 MediumCVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N
Weakness
CWE-416
Updated
2026-11-02
OSVDEBIAN-CVE-2026-76875 6.3

PyPy before versions 3.11.16 and 3.12.14 contains a use-after-free vulnerability in the pyexpat module's ExternalEntityParserCreate function that allows attackers to corrupt memory by supplying a crafted XML document to applications that create external-entity sub-parsers without retaining a reference to the parent parser. The child parser retains a raw C back-pointer to the parent parser struct while PyPy's tracing garbage collector can free the parent's C struct, causing bundled libexpat to dereference the freed pointer on every parsed token, producing memory corruption.

Record
DEBIAN-CVE-2026-76875
CVSS 4.0
6.3 MediumCVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
Updated
2026-11-02
OSVUBUNTU-CVE-2026-76875 6.3

PyPy before versions 3.11.16 and 3.12.14 contains a use-after-free vulnerability in the pyexpat module's ExternalEntityParserCreate function that allows attackers to corrupt memory by supplying a crafted XML document to applications that create external-entity sub-parsers without retaining a reference to the parent parser. The child parser retains a raw C back-pointer to the parent parser struct while PyPy's tracing garbage collector can free the parent's C struct, causing bundled libexpat to dereference the freed pointer on every parsed token, producing memory corruption.

Record
UBUNTU-CVE-2026-76875
CVSS 4.0
6.3 MediumCVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N
CVSS 3.1
5.3 MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N
Updated
2026-11-02

Affected products

Affected packages

Affected packages
PackageAffectedFixed
pypy3
Debian:12
All versions, plus listed versions
7.3.11+dfsg-27.3.11+dfsg-2+deb12u17.3.11+dfsg-2+deb12u27.3.11+dfsg-2+deb12u37.3.12+dfsg-1
Show 26 moreShow less
7.3.12~rc1+dfsg-17.3.12~rc2+dfsg-17.3.13+dfsg-17.3.14+dfsg-17.3.15+dfsg-17.3.16+dfsg-17.3.16+dfsg-27.3.17+dfsg-17.3.17+dfsg-27.3.17+dfsg-37.3.18+dfsg-17.3.18+dfsg-27.3.19+dfsg-17.3.19+dfsg-27.3.20+dfsg-17.3.20+dfsg-27.3.20+dfsg-37.3.20+dfsg-47.3.21+dfsg-17.3.21+dfsg-27.3.21+dfsg-37.3.21+dfsg-47.3.22+dfsg-17.3.23+dfsg-17.3.23+dfsg-28.0.0+dfsg-1
None known
pypy3
Debian:13
All versions, plus listed versions
7.3.19+dfsg-27.3.20+dfsg-17.3.20+dfsg-27.3.20+dfsg-37.3.20+dfsg-4
Show 8 moreShow less
7.3.21+dfsg-17.3.21+dfsg-27.3.21+dfsg-37.3.21+dfsg-47.3.22+dfsg-17.3.23+dfsg-17.3.23+dfsg-28.0.0+dfsg-1
None known
pypy3
Debian:14
before 8.0.0+dfsg-1, plus listed versions
7.3.19+dfsg-27.3.20+dfsg-17.3.20+dfsg-27.3.20+dfsg-37.3.20+dfsg-4
Show 7 moreShow less
7.3.21+dfsg-17.3.21+dfsg-27.3.21+dfsg-37.3.21+dfsg-47.3.22+dfsg-17.3.23+dfsg-17.3.23+dfsg-2
8.0.0+dfsg-1
pypy3
Ubuntu:20.04:LTS
All versions, plus listed versions
7.1.1+dfsg-17.2.0+dfsg-17.3.0+dfsg-17.3.0+dfsg-1ubuntu27.3.0+dfsg-1ubuntu37.3.1+dfsg-47.3.1+dfsg-4ubuntu0.1
None known
pypy3
Ubuntu:22.04:LTS
All versions, plus listed versions
7.3.5+dfsg-27.3.7+dfsg-17.3.7+dfsg-47.3.7+dfsg-57.3.8+dfsg-27.3.9+dfsg-17.3.9+dfsg-1ubuntu0.1
None known
pypy3
Ubuntu:24.04:LTS
All versions, plus listed versions
7.3.12+dfsg-17.3.13+dfsg-17.3.14+dfsg-17.3.15+dfsg-17.3.15+dfsg-1build27.3.15+dfsg-1build3
None known
pypy3
Ubuntu:26.10
All versions, plus listed versions
7.3.20+dfsg-47.3.23+dfsg-1ubuntu1
None known
pypy3
Ubuntu:26.04:LTS
All versions, plus listed versions
7.3.20+dfsg-37.3.20+dfsg-4
None known

History

History
RecordedChangedSources
first indexedCVE List, EUVD, GitHub Advisories, NVD, OSV

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

In short

CVE-2026-76875 is a medium vulnerability (CVSS 6.3) in Pypy, published September 29, 2026. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 0.24%, the 15th percentile. Fixed in pypy3 8.0.0+dfsg-1.

References

Show 5 moreShow less
MoveEnter Open