Approved changes feed: RSS · Atom
cpe:2.3:a:ohler55:oj:*:*:*:*:*:*:*:*part: a version: * update: *
| Vendor | Ohler55 (5b5c98b2-0515-57bd-9e88-375cdd50109e) |
|---|---|
| Product | Oj (51d14fda-ae3c-56c6-bf5a-cbe4b7766cfd) |
| Edition | * |
| Language | * |
| Software edition | * |
| Target software | * |
| Target hardware | * |
| Other | * |
Notes
Imported from gcve-enriched-dumps CVE data
PURL mappings
| PURL | Source | Last updated |
|---|---|---|
| No PURL mappings for this CPE yet. | ||
Vulnerability references
| Identifier | cpeApplicability | Submitted | db.gcve.eu details | Rationale |
|---|---|---|---|---|
CVE:CVE-2026-54903 |
vulnerable | 2026-07-29 01:00:28.098921 |
Oj: Integer Overflow in Oj.load 2GB String Handling
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.
Published: 2026-06-30T23:42:06.777Z
Updated: 2026-07-01T12:43:48.523Z |
Imported from gcve-enriched-dumps CVE data |
CVE:CVE-2026-54902 |
vulnerable | 2026-07-29 01:00:28.098807 |
Oj: Use-After-Free in Oj::Parser SAJ Long Key Callback
Oj (Optimized JSON) is a JSON parser and Object marshaller packaged as a Ruby gem. Prior to version 3.17.2, is vulnerable to Use-After-Free when in SAJ mode. The Oj::Parser does not protect cached object keys (≥ 35 bytes) from garbage collection, and a Ruby callback that triggers GC inside hash_end can cause the key string to be reclaimed while the C parser still holds a pointer to it. The subsequent access to the freed string VALUE results in a segfault, confirmed by an RIP pointing to address 0x4242 (a canary-style pattern suggesting control over the freed memory's content). This issue has been fixed in version 3.17.2.
Published: 2026-06-30T23:40:32.627Z
Updated: 2026-07-01T12:37:40.878Z |
Imported from gcve-enriched-dumps CVE data |
CVE:CVE-2026-54901 |
vulnerable | 2026-07-29 01:00:28.098679 |
Oj: Use-After-Free in Oj::Parser array_class/hash_class GC Marking
Oj (Optimized JSON) is a JSON parser and Object marshaller packaged as a Ruby gem. In versions prior to 3.17.2, Oj::Parser in usual mode does not mark array_class and hash_class references during garbage collection, leading to Use-After-Free. If GC runs after the class is assigned but before a parse, the class object is reclaimed, leaving the parser holding a dangling VALUE. The subsequent parse call dereferences the freed object, producing a segfault. This issue has been fixed in version 3.17.2.
Published: 2026-06-30T23:36:38.526Z
Updated: 2026-07-01T12:34:23.576Z |
Imported from gcve-enriched-dumps CVE data |
CVE:CVE-2026-54900 |
vulnerable | 2026-07-29 01:00:28.098450 |
Oj: Negative-Size memcpy in Oj::Parser create_id Attribute Handling
Oj (Optimized JSON) is a JSON parser and Object marshaller packaged as a Ruby gem. In versions prior to 3.17.2, when in usual mode with create_id enabled, Oj::Parser#parse is vulnerable to heap corruption via a negative-size memcpy. When a JSON object key is exactly 65,535 bytes long, an integer truncation in form_attr (usual.c:63) converts the length to -1 before passing it to memcpy. This causes memcpy to copy SIZE_MAX bytes (interpreted as a huge size_t), corrupting heap memory and crashing the process. The issue has been fixed in version 3.17.2.
Published: 2026-06-30T23:34:05.904Z
Updated: 2026-07-01T15:48:35.112Z |
Imported from gcve-enriched-dumps CVE data |
CVE:CVE-2026-54899 |
vulnerable | 2026-07-29 01:00:28.098334 |
Oj: Use-After-Free in Oj::Parser Symbol Key Cache Toggle
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.
Published: 2026-06-30T23:03:15.696Z
Updated: 2026-07-01T14:26:28.538Z |
Imported from gcve-enriched-dumps CVE data |
CVE:CVE-2026-54898 |
vulnerable | 2026-07-29 01:00:28.098208 | db.gcve.eu details were skipped to keep the page responsive. | Imported from gcve-enriched-dumps CVE data |
CVE:CVE-2026-54897 |
vulnerable | 2026-07-29 01:00:28.098055 | db.gcve.eu details were skipped to keep the page responsive. | Imported from gcve-enriched-dumps CVE data |
CVE:CVE-2026-54896 |
vulnerable | 2026-07-29 01:00:28.097802 | db.gcve.eu details were skipped to keep the page responsive. | Imported from gcve-enriched-dumps CVE data |
CVE:CVE-2026-54592 |
vulnerable | 2026-07-29 01:00:27.901728 | db.gcve.eu details were skipped to keep the page responsive. | Imported from gcve-enriched-dumps CVE data |
CVE:CVE-2026-54502 |
vulnerable | 2026-07-29 01:00:27.869649 | db.gcve.eu details were skipped to keep the page responsive. | Imported from gcve-enriched-dumps CVE data |
CVE:CVE-2026-54500 |
vulnerable | 2026-07-29 01:00:27.869332 | db.gcve.eu details were skipped to keep the page responsive. | Imported from gcve-enriched-dumps CVE data |
Contribute
You can submit an edit proposal for this CPE entry or suggest a related product/vendor addition using the action button above.
Inspect record JSON
Open this panel to browse, search, copy or download the JSON record.