RubySec

Providing security resources for the Ruby community

CVE-2026-54899 (oj): Oj - Use-After-Free in Oj::Parser Symbol Key Cache Toggle

Oj - Use-After-Free in Oj::Parser Symbol Key Cache Toggle

Published: June 19, 2026

SECURITY IDENTIFIERS

GEM

oj

PATCHED VERSIONS

>= 3.17.3

DESCRIPTION

Summary

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.

RELATED