CVE-2026-44660 json
UltraJSON: Memory Leak in ujson.dump() on Write Failure
published 2026-05-12 5 mo ago modified 2026-09-10 1 mo ago also EUVD-2026-32663 , GHSA-c38f-wx89-p2xg , PYSEC-2026-2293
- cvss
- 7.5
- version 3.1, NVD
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 0.4%
- EPSS 0.4% chance of exploitation in 30 days, percentile 36%
- public exploits
- 0
- none known
Summary
UltraJSON is a fast JSON encoder and decoder written in pure C with bindings for Python 3.7+. Prior to 5.12.1, when ujson.dump() writes to a file-like object and the write operation raises an exception, the serialized JSON string object is not decremented, leaking memory. Each failed write operation leaks the full size of the serialized payload. This vulnerability is fixed in 5.12.1.
Patch / fix
- pypi ujson 5.12.1
- ultrajson_project ultrajson 5.12.1
- ujson Debian 14 5.13.0-1
debian advisories DEBIAN-CVE-2026-44660
- python-ujson SLES for SAP 15 SP6, SLES for SAP 15 SP5, SLES for SAP 15 SP4 +9 more 1.35-150100.3.13.1
- python-ujson SLES 16.0, SLES for SAP applications 16.0 5.10.0-160000.3.1
suse advisories SUSE-SU-2026:3539-1SUSE-SU-2026:23114-1SUSE-SU-2026:23136-1
- python-ujson openSUSE Leap 16.0 5.10.0-160000.3.1
opensuse advisories openSUSE-SU-2026:21518-1
Vendor advisories
What the vendors themselves say about their products: affected, fixed or not affected, and what to do.
red hat product security vex CVE-2026-44660 updated cvss 7.5
python-ujson: UltraJSON: Memory leak leading to Denial of Service
-
Red Hat Exploit Intelligence exploit-intelligence-tech-preview/vulnerability-analysis-rhel9affected: workaround, no fix available
-
Red Hat Enterprise Linux AI (RHEL AI) 3 rhelai3/bootc-cuda-rhel9, rhelai3/bootc-rocm-rhel9, rhelai3/bootc-gaudi-rhel9, rhelai3/disk-image-cuda-rhel9affected: workaround, no fix planned “Will not fix”
-
Red Hat OpenShift AI (RHOAI) rhoai/odh-workbench-jupyter-pytorch-llmcompressor-cuda-py312-rhel9affected: workaround, no fix available
-
Red Hat OpenShift AI 2.25 rhoai/odh-feature-server-rhel9 1792148523, rhoai/odh-llama-stack-core-rhel9 1783701598, rhoai/odh-caikit-tgis-serving-rhel9 1783082430fixed: vendor fix RHSA-2026:42644
-
Red Hat OpenShift AI 3.4 rhoai/odh-feature-server-rhel9 1791863220, rhoai/odh-workbench-jupyter-pytorch-cuda-py312-rhel9 1787073605, rhoai/odh-workbench-jupyter-pytorch-rocm-py312-rhel9 1787073546, rhoai/odh-workbench-jupyter-trustyai-cpu-py312-rhel9 1787073593, rhoai/odh-workbench-jupyter-datascience-cpu-py312-rhel9 1787074331, rhoai/odh-workbench-jupyter-tensorflow-cuda-py312-rhel9 1787073717, +1 morefixed: vendor fix RHSA-2026:84734
-
Red Hat Satellite 6.18 satellite/iop-host-inventory-rhel9 1785956730fixed: vendor fix RHSA-2026:51347
-
Red Hat Satellite 6.19 satellite/iop-host-inventory-rhel9 1785970678fixed: vendor fix RHSA-2026:51195
-
Red Hat Migration Toolkit for Applications 8 mta/mta-generic-external-provider-rhel9not affected: vulnerable code not present
show 3 moreshow fewer
-
Red Hat OpenShift AI (RHOAI) rhoai/odh-caikit-nlp-rhel9not affected: vulnerable code not in execute path
-
Red Hat OpenShift AI 2.25 rhoai/odh-rhel9-operator 1784004914, rhoai/odh-rhel9-operator 1792570619, rhoai/odh-vllm-cpu-rhel9 1782397826, rhoai/odh-vllm-cpu-rhel9 1792018436, rhoai/odh-dashboard-rhel9 1782826282, rhoai/odh-dashboard-rhel9 1791853525, +139 more Red Hat OpenShift AI 3.4 rhoai/odh-cli-rhel9 1787330837, rhoai/odh-cli-rhel9 1791509689, rhoai/rhai-cli-rhel9 1787330837, rhoai/rhai-cli-rhel9 1791509689, rhoai/odh-automl-rhel9 1786612415, rhoai/odh-automl-rhel9 1791535789, +199 morenot affected: vulnerable code not present
-
Red Hat OpenStack Platform 16.2 python-ujson, python3-ujson Red Hat OpenStack Platform 17.1 python3-ujson Red Hat OpenStack Platform 18.0 python-ujsonnot affected: vulnerable code not in execute path
Red Hat CSAF VEX © Red Hat, Inc., from https://security.access.redhat.com/data/csaf/v2/vex/; changed: reduced to product statuses and remediations. CC BY 4.0 · csaf
CISA SSVC
- Exploitation
- Proof of concept is public
- Automatable
- yes
- Technical impact
- partial
- Assessed
- 5 mo ago
Exploit prediction
0.42% chance of exploitation in the next 30 days, higher than 36% of all scored CVEs (FIRST EPSS, 2026-11-08).
Exploits and checks
- github.com https://github.com/ultrajson/ultrajson/security/advisories/GHSA-c38f-wx89-p2xg referenced PoC, tagged "exploit" by a source, unverified
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CNA | 4.0 | 8.7 | CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N |
| GitHub | 3.1 | 7.5 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H |
| CNA | 4.0 | 8.7 | CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/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 |
| NVD | 3.1 | 7.5 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H |
| OSV | 3.1 | 7.5 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H |
Affected packages
| ecosystem | package | affected | fixed in |
|---|---|---|---|
| pypi | ujson | <5.12.1 |
5.12.1 |
Affected products
- ultrajson ultrajson
Classification
- Weakness
-
- CWE-401 Missing Release of Memory after Effective Lifetime
References
-
github.com
/ultrajson/ultrajson/commit/82af1d0ac01d09aa40c887b460d44b9d9f4bccd9
web, patch
-
github.com
/ultrajson/ultrajson/security/advisories/GHSA-c38f-wx89-p2xg
exploit, web, mitigation, patch, vendor-advisory
-
github.com
/ultrajson/ultrajson/releases/tag/5.12.1
web, product, release-notes, advisory
-
nvd.nist.gov
/vuln/detail/CVE-2026-44660
advisory
-
github.com
/ultrajson/ultrajson
package
Sources
- CVE List CVE-2026-44660
- GitHub Advisory GHSA-c38f-wx89-p2xg
- NVD CVE-2026-44660
- OSV PYSEC-2026-2293
Fencer Vulns keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.
CPEs and fixed versions use Anchore's correction of NVD's data: Added CPE configurations because not yet analyzed by NVD.