Vulnerability · Published Dec 3, 2025 · Assigned by PSF
CVE-2025-12084Quadratic complexity in node ID cache clearing
Medium 6.3
In plain English
A medium-severity security flaw in CPython from Python Software Foundation. There are no confirmed reports of exploitation so far. The chance it is exploited in the next 30 days is estimated at 0.9% (higher than 59% of all known vulnerabilities). Fixed versions are available - upgrade the affected package.
Severity (CVSS 4.0)6.3Medium
Exploit odds (30 days)0.9%top 41.4% of all CVEs
Exploited in the wildNo reportsCISA SSVC: none
Attack toolingNoneno public tooling known
Official description
When building nested elements using xml.dom.minidom methods such as appendChild() that have a dependency on _clear_id_cache() the algorithm is quadratic. Availability can be impacted when building excessively nested documents.
Affected packages & fixed versions
| Ecosystem | Package | Fixed in | Advisory |
|---|---|---|---|
| AlmaLinux:8 | platform-python | 3.6.8-72.el8_10.alma.1 | ALSA-2026:1631 |
| AlmaLinux:8 | platform-python-debug | 3.6.8-72.el8_10.alma.1 | ALSA-2026:1631 |
| AlmaLinux:8 | platform-python-devel | 3.6.8-72.el8_10.alma.1 | ALSA-2026:1631 |
| AlmaLinux:10 | python-unversioned-command | 3.12.12-3.el10_1 | ALSA-2026:1828 |
| AlmaLinux:9 | python-unversioned-command | 3.9.25-3.el9_7 | ALSA-2026:1478 |
| AlmaLinux:9 | python3 | 3.9.25-3.el9_7 | ALSA-2026:1478 |
| AlmaLinux:9 | python3-debug | 3.9.25-3.el9_7 | ALSA-2026:1478 |
| AlmaLinux:9 | python3-devel | 3.9.25-3.el9_7 | ALSA-2026:1478 |
| AlmaLinux:8 | python3-idle | 3.6.8-72.el8_10.alma.1 | ALSA-2026:1631 |
| AlmaLinux:9 | python3-idle | 3.9.25-3.el9_7 | ALSA-2026:1478 |
| AlmaLinux:8 | python3-libs | 3.6.8-72.el8_10.alma.1 | ALSA-2026:1631 |
| AlmaLinux:9 | python3-libs | 3.9.25-3.el9_7 | ALSA-2026:1478 |
| AlmaLinux:8 | python3-test | 3.6.8-72.el8_10.alma.1 | ALSA-2026:1631 |
| AlmaLinux:9 | python3-test | 3.9.25-3.el9_7 | ALSA-2026:1478 |
| AlmaLinux:8 | python3-tkinter | 3.6.8-72.el8_10.alma.1 | ALSA-2026:1631 |
| AlmaLinux:9 | python3-tkinter | 3.9.25-3.el9_7 | ALSA-2026:1478 |
| AlmaLinux:8 | python3.11 | 3.11.13-4.el8_10 | ALSA-2026:1374 |
| AlmaLinux:9 | python3.11 | 3.11.13-5.el9_7 | ALSA-2026:1410 |
| AlmaLinux:8 | python3.11-debug | 3.11.13-4.el8_10 | ALSA-2026:1374 |
| AlmaLinux:9 | python3.11-debug | 3.11.13-5.el9_7 | ALSA-2026:1410 |
| AlmaLinux:8 | python3.11-devel | 3.11.13-4.el8_10 | ALSA-2026:1374 |
| AlmaLinux:9 | python3.11-devel | 3.11.13-5.el9_7 | ALSA-2026:1410 |
| AlmaLinux:8 | python3.11-idle | 3.11.13-4.el8_10 | ALSA-2026:1374 |
| AlmaLinux:9 | python3.11-idle | 3.11.13-5.el9_7 | ALSA-2026:1410 |
| AlmaLinux:8 | python3.11-libs | 3.11.13-4.el8_10 | ALSA-2026:1374 |
| AlmaLinux:9 | python3.11-libs | 3.11.13-5.el9_7 | ALSA-2026:1410 |
| AlmaLinux:8 | python3.11-rpm-macros | 3.11.13-4.el8_10 | ALSA-2026:1374 |
| AlmaLinux:8 | python3.11-test | 3.11.13-4.el8_10 | ALSA-2026:1374 |
| AlmaLinux:9 | python3.11-test | 3.11.13-5.el9_7 | ALSA-2026:1410 |
| AlmaLinux:8 | python3.11-tkinter | 3.11.13-4.el8_10 | ALSA-2026:1374 |
| AlmaLinux:9 | python3.11-tkinter | 3.11.13-5.el9_7 | ALSA-2026:1410 |
| AlmaLinux:8 | python3.12 | 3.12.12-1.el8_10 | ALSA-2026:0123 |
| AlmaLinux:9 | python3.12 | 3.12.12-4.el9_7 | ALSA-2026:1408 |
| AlmaLinux:8 | python3.12-debug | 3.12.12-1.el8_10 | ALSA-2026:0123 |
| AlmaLinux:9 | python3.12-debug | 3.12.12-4.el9_7 | ALSA-2026:1408 |
| AlmaLinux:8 | python3.12-devel | 3.12.12-1.el8_10 | ALSA-2026:0123 |
| AlmaLinux:9 | python3.12-devel | 3.12.12-4.el9_7 | ALSA-2026:1408 |
| AlmaLinux:8 | python3.12-idle | 3.12.12-1.el8_10 | ALSA-2026:0123 |
| AlmaLinux:9 | python3.12-idle | 3.12.12-4.el9_7 | ALSA-2026:1408 |
| AlmaLinux:8 | python3.12-libs | 3.12.12-1.el8_10 | ALSA-2026:0123 |
| AlmaLinux:9 | python3.12-libs | 3.12.12-4.el9_7 | ALSA-2026:1408 |
| AlmaLinux:8 | python3.12-rpm-macros | 3.12.12-1.el8_10 | ALSA-2026:0123 |
| AlmaLinux:8 | python3.12-test | 3.12.12-1.el8_10 | ALSA-2026:0123 |
| AlmaLinux:9 | python3.12-test | 3.12.12-4.el9_7 | ALSA-2026:1408 |
| AlmaLinux:8 | python3.12-tkinter | 3.12.12-1.el8_10 | ALSA-2026:0123 |
| AlmaLinux:9 | python3.12-tkinter | 3.12.12-4.el9_7 | ALSA-2026:1408 |
| Debian:12 | jython | no fix listed | DEBIAN-CVE-2025-12084 |
| Debian:13 | jython | no fix listed | DEBIAN-CVE-2025-12084 |
| Debian:14 | jython | no fix listed | DEBIAN-CVE-2025-12084 |
| Debian:12 | pypy3 | no fix listed | DEBIAN-CVE-2025-12084 |
| Debian:13 | pypy3 | no fix listed | DEBIAN-CVE-2025-12084 |
| Debian:14 | pypy3 | 7.3.21+dfsg-1 | DEBIAN-CVE-2025-12084 |
| Debian:12 | python3.11 | 3.11.2-6+deb12u7 | DEBIAN-CVE-2025-12084 |
| Debian:13 | python3.13 | 3.13.5-2+deb13u1 | DEBIAN-CVE-2025-12084 |
| Debian:14 | python3.14 | 3.14.2-1 | DEBIAN-CVE-2025-12084 |
| Rocky Linux:8 | python3 | 0:3.6.8-72.el8_10.rocky.0 | RLSA-2026:1631 |
| Rocky Linux:8 | python3.11 | 0:3.11.13-4.el8_10 | RLSA-2026:1374 |
| Rocky Linux:9 | python3.11 | 0:3.11.13-5.el9_7 | RLSA-2026:1410 |
| Rocky Linux:10 | python3.12 | 0:3.12.12-3.el10_1 | RLSA-2026:1828 |
| Rocky Linux:8 | python3.12 | 0:3.12.12-1.el8_10 | RLSA-2026:0123 |
| Rocky Linux:9 | python3.12 | 0:3.12.12-4.el9_7 | RLSA-2026:1408 |
| Rocky Linux:9 | python3.9 | 0:3.9.25-3.el9_7 | RLSA-2026:1478 |
| Ubuntu:22.04:LTS | jython | no fix listed | UBUNTU-CVE-2025-12084 |
| Ubuntu:24.04:LTS | jython | no fix listed | UBUNTU-CVE-2025-12084 |
| Ubuntu:25.10 | jython | no fix listed | UBUNTU-CVE-2025-12084 |
| Ubuntu:26.04:LTS | jython | no fix listed | UBUNTU-CVE-2025-12084 |
| Ubuntu:26.10 | jython | no fix listed | UBUNTU-CVE-2025-12084 |
| Ubuntu:22.04:LTS | pypy3 | no fix listed | UBUNTU-CVE-2025-12084 |
| Ubuntu:24.04:LTS | pypy3 | no fix listed | UBUNTU-CVE-2025-12084 |
| Ubuntu:25.10 | pypy3 | no fix listed | UBUNTU-CVE-2025-12084 |
| Ubuntu:26.04:LTS | pypy3 | no fix listed | UBUNTU-CVE-2025-12084 |
| Ubuntu:26.10 | pypy3 | no fix listed | UBUNTU-CVE-2025-12084 |
| Ubuntu:22.04:LTS | python3.10 | 3.10.12-1~22.04.14 | UBUNTU-CVE-2025-12084 |
| Ubuntu:24.04:LTS | python3.12 | 3.12.3-1ubuntu0.11 | UBUNTU-CVE-2025-12084 |
| Ubuntu:25.10 | python3.13 | 3.13.7-1ubuntu0.3 | UBUNTU-CVE-2025-12084 |
| Ubuntu:25.10 | python3.14 | 3.14.0-1ubuntu0.2 | UBUNTU-CVE-2025-12084 |
Affected products (as reported)
| Vendor | Product | Versions |
|---|---|---|
| Python Software Foundation | CPython | 0 – before 3.10.203.11.0 – before 3.11.153.12.0 – before 3.12.133.13.0 – before 3.13.113.14.0 – before 3.14.23.15.0a1 – before 3.15.0a3 |
Weakness: CWE-407 · Vector: CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:N/VA:L/SC:N/SI:N/SA:N
References
- https://github.com/python/cpython/pull/142146 patch
- https://github.com/python/cpython/issues/142145 issue-tracking
- https://github.com/python/cpython/commit/08d8e18ad81cd45bc4a27d6da478b51ea49486e4 patch
- https://github.com/python/cpython/commit/027f21e417b26eed4505ac2db101a4352b7c51a0 patch
- https://github.com/python/cpython/commit/ddcd2acd85d891a53e281c773b3093f9db953964 patch
- https://github.com/python/cpython/commit/27648a1818749ef44c420afe6173af6868715437 patch
- https://github.com/python/cpython/commit/8d2d7bb2e754f8649a68ce4116271a4932f76907 patch
- https://github.com/python/cpython/commit/9c9dda6625a2a90d2a06c657eee021d6be19842d patch
- https://github.com/python/cpython/commit/a696ba8b4d42fd632afc9bc88ad830a2e4cceed8 patch
- https://github.com/python/cpython/commit/41f468786762348960486c166833a218a0a436af patch
- https://github.com/python/cpython/commit/57937a8e5e293f0dcba5115f7b7a11b1e0c9a273 patch
- https://github.com/python/cpython/commit/e91c11449cad34bac3ea55ee09ca557691d92b53 patch
- https://github.com/python/cpython/commit/a46c10ec9d4050ab67b8a932e0859a2ea60c3cb8 patch
- https://github.com/python/cpython/commit/c97e87593063d84a2bd9fe7068b30eb44de23dc0 patch