CVE-2022-31116

UltraJSON is a fast JSON encoder and decoder written in pure C with bindings for Python 3.7+. Affected versions were found to improperly decode certain characters. JSON strings that contain escaped surrogate characters not part of a proper surrogate pair were decoded incorrectly. Besides corrupting strings, this allowed for potential key confusion and value overwriting in dictionaries. All users parsing JSON from untrusted sources are vulnerable. From version 5.4.0, UltraJSON decodes lone surrogates in the same way as the standard library's `json` module does, preserving them in the parsed output. Users are advised to upgrade. There are no known workarounds for this issue.
ProviderTypeBase ScoreAtk. VectorAtk. ComplexityPriv. RequiredVector
NISTNIST
7.5 HIGH
NETWORK
LOW
NONE
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
GitHub_MCNA
7.5 HIGH
NETWORK
LOW
NONE
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
CVEADP
---
---
CISA-ADPADP
---
---
Base Score
CVSS 3.x
EPSS Score
Percentile: 13%
VendorProductVersion
ultrajson_projectultrajson
𝑥
< 5.4.0
𝑥
= Vulnerable software versions
Debian logo
Debian Releases
Debian Product
Codename
ujson
bullseye
no-dsa
buster
no-dsa
bookworm
5.7.0-1
fixed
sid
5.10.0-1
fixed
trixie
5.10.0-1
fixed
Ubuntu logo
Ubuntu Releases
Ubuntu Product
Codename
collada2gltf
noble
dne
mantic
dne
lunar
ignored
kinetic
ignored
jammy
needs-triage
impish
ignored
focal
dne
bionic
needs-triage
xenial
needs-triage
trusty
dne
pandas
noble
needs-triage
mantic
ignored
lunar
ignored
kinetic
ignored
jammy
needs-triage
impish
ignored
focal
needs-triage
bionic
needs-triage
xenial
needs-triage
trusty
needs-triage
ujson
noble
not-affected
mantic
not-affected
lunar
not-affected
kinetic
not-affected
jammy
Fixed 5.1.0-1ubuntu0.1~esm1
released
impish
ignored
focal
Fixed 1.35-4ubuntu0.1+esm1
released
bionic
Fixed 1.35-2ubuntu0.1~esm1
released
xenial
Fixed 1.33-1ubuntu0.1~esm2
released
trusty
dne