CVE-2026-54903CWE-190

Oj: Integer Overflow in Oj.load 2GB String Handling

Medium · published June 30, 2026

CVSS v4.0
6.3
EPSS
0%
Percentile
25.2
In the wild
Unconfirmed
What it is

Oj (Optimized JSON) is a JSON parser and Object marshaller packaged as a Ruby gem. In versions prior to 3.17.2, Oj.load is vulnerable to heap corruption when parsing a JSON string longer than 2 GB. An integer overflow in buf_append_string (buf.h:61) converts the string length to a large negative size_t, causing memcpy to copy an astronomically large amount of data out of bounds. This crashes the process and can corrupt adjacent heap memory. The issue has been fixed in version 3.17.2.

The record
Technical detail
CVSS v4.0
6.3 · MEDIUM
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
EPSS
0.00333 · 25.2th percentile
Weakness
CWE-190 · Integer Overflow or Wraparound
Published
2026-06-30T23:42Z
EPSS history
Timeline
  • 30 JUN 23:42Z
    Oj: Integer Overflow in Oj.load 2GB String Handling
    cvelistv5