CVE-2026-54900
ŚrednieCVSS 6.3Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 17 — wyżej niż 17% wszystkich znanych CVE
Streszczenie
W bibliotece Oj (Optimized JSON) dla języka Ruby wykryto podatność na uszkodzenie sterty. Gdy klucz obiektu JSON ma dokładnie 65 535 bajtów, dochodzi do obcięcia liczby całkowitej w funkcji form_attr, co powoduje przekazanie ujemnej długości do memcpy i skopiowanie ogromnej ilości danych, prowadząc do awarii procesu. Problem został naprawiony w wersji 3.17.2.
Ocena ryzyka
Atakujący może celowo dostarczyć spreparowany dokument JSON, aby spowodować uszkodzenie pamięci sterty i awarię aplikacji, co prowadzi do odmowy usługi (DoS). W skrajnych przypadkach może to umożliwić zdalne wykonanie kodu.
Rekomendacja
Należy niezwłocznie zaktualizować gem Oj do wersji 3.17.2 lub nowszej. Jeśli aktualizacja nie jest możliwa, należy ograniczyć przetwarzanie niezaufanych danych JSON przez podatną wersję biblioteki.
Oryginalny opis (angielski, źródło NVD)
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.

