Oj: Use-After-Free in Oj::Parser Symbol Key Cache Toggle
Published Jun 30, 2026
8.7
HIGHCVSS 4.0
EPSS 0.33%
Description
Oj (Optimized JSON) is a JSON parser and Object marshaller packaged as a Ruby gem. Prior to version 3.17.2, disabling symbol_keys on a reused Oj::Parser instance triggers a heap use-after-free. When symbol_keys is toggled from true to false, opt_symbol_keys_set frees the internal key cache (cache_free) but does not clear the pointer. The next parse call reads from the freed cache via cache_intern, producing a use-after-free. This issue has been fixed in version 3.17.2.
Affected products
-
- Version < 3.17.2StatusaffectedConstraints-
- Version
No data.
No data.
No Red Hat product state for this CVE.
No package ranges for this CVE.
Remediation
Red Hat statement
Red Hat's only product shipping the Oj Ruby gem (Compliance Backend) already includes version 3.17.3, which contains the fix for this vulnerability. No Red Hat products are affected.
Red Hat mitigation
Upgrade the oj Ruby gem to version 3.17.2 or later.
Metrics
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
2 other sources (GitHub, NVD) ▾
CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:L/VI:N/VA:L/SC:N/SI:N/SA:N
CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:L/VI:N/VA:L/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/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:N/A:H
No CVSS v3.0 score for this CVE.
No CVSS v2.0 score for this CVE.
This CVE is not in the KEV list.
CISA SSVC (Vulnrichment)
Stakeholder-Specific Vulnerability Categorization from CISA ADP.
Exploitation
PoCAutomatable
NoTechnical Impact
PartialDecision
n/aAssessed Jul 1, 2026 · SSVC 2.0.3
Estimated probability of exploitation in the wild in the next 30 days (FIRST EPSS). As of Oct 4, 2026.
Score over time
Jul-Oct 2026- EPSS v5
Percentile over time
- EPSS v5
Table of values (2 key points)
Flat stretches are collapsed. Showing up to 120 newest points.
| Date | Score | Percentile | Model |
|---|---|---|---|
| Oct 4, 2026 | 0.33% (0.00333) | 24.21th | v5 (v2026.06.15) |
| Jul 1, 2026 | 0.43% (0.00428) | 34.36th | v5 (v2026.06.15) |
References (6)
- https://access.redhat.com/security/cve/CVE-2026-54899 Vendor Advisory
- https://bugzilla.redhat.com/show_bug.cgi?id=2495753 Issue Tracking
- https://github.com/advisories/GHSA-2cw7-v8ff-p88r Advisory
- https://github.com/ohler55/oj/security/advisories/GHSA-2cw7-v8ff-p88r exploitx_refsource_CONFIRM
- https://nvd.nist.gov/vuln/detail/CVE-2026-54899
- https://www.cve.org/CVERecord?id=CVE-2026-54899
| Link | Providers | Tags |
|---|---|---|
| https://access.redhat.com/security/cve/CVE-2026-54899 | Vendor Advisory | |
| https://bugzilla.redhat.com/show_bug.cgi?id=2495753 | Issue Tracking | |
| https://github.com/advisories/GHSA-2cw7-v8ff-p88r | Advisory | |
| https://github.com/ohler55/oj/security/advisories/GHSA-2cw7-v8ff-p88r | exploitx_refsource_CONFIRM | |
| https://nvd.nist.gov/vuln/detail/CVE-2026-54899 | ||
| https://www.cve.org/CVERecord?id=CVE-2026-54899 |
Change history (0)
No recorded changes yet.