Integer overflow in Ohler55 Oj

CVE-2026-54903

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.

Vulnerability class: Integer Overflow

Published · last modified .

EPSS exploit prediction

EPSS: 0.003 (24.0th percentile), scored .

Very low probability of exploitation in the next 30 days; routine patching cadence is appropriate. 24th percentile — 24.0% of CVEs in the catalogue have a lower EPSS than this one. How to read EPSS.

EPSS trend (30 days)EPSS over the last 30 days for CVE-2026-54903: held from 0.004 to 0.003.

EPSS over last 30 days · oldest: 0.004 · newest: 0.003 · change: -0.001

Affected products

Weakness classification (CWE)

References