CVE-2026-54500

Orta

Açıklama

Oj (Optimized JSON), bir Ruby gem olarak paketlenmiş bir JSON ayrıştırıcı ve Nesne marshaller'ıdır. 3.17.3 öncesindeki sürümlerde, :object modundaki Oj.load, anahtarı 254 bayt veya daha uzun olan bir JSON nesnesini ayrıştırırken başlatılmamış yığın belleğini okur (ve uzun anahtarlar için sınırların dışında okuma yapar). Intern edilen baytlar çağırana ulaşarak işlem yığın belleğinin ifşa olmasına neden olabilir. ext/oj/intern.c dosyasında, form_attr() fonksiyonu uzun anahtar yolunu bir heap tamponu `b` ayırarak, onu öznitelik adıyla doldurarak ve ardından serbest bırakarak işler; ancak rb_intern3() fonksiyonuna (b yerine) başlatılmamış yığın tamponu buf iletilmiştir. Bu nedenle rb_intern3, başlatılmamış yığın belleğinden len + 1 bayt okur. Anahtar uzunluğu >= 256 olduğunda, 256 baytlık buf'ın ötesinde sınır dışı okuma da gerçekleştirir. Ortaya çıkan baytlar intern edilir ve üretilen Symbol aracılığıyla veya geçersiz UTF-8 durumunda ortaya çıkan EncodingError mesajı yoluyla çağırana ulaşarak işlem yığını içeriğini sızdırabilir. Bu sorun 3.17.3 sürümünde düzeltilmiştir.

ÖnemOrta
CVSS5.3
İstismar olasılığı—
ÜrünOhler55 Oj
Yayın1 Tem 2026
İlk görülme1 Tem 2026

Nasıl düzeltilir

Kaynaklarda bu zafiyet için düzeltilmiş sürüm ya da yama bağlantısı yok.

Etkilenen ürünler

ÜrünEtkilenen sürümlerDüzeltildiği sürüm
ohler55 oj< 3.17.3—

Sürümünüzü kontrol edin

Ürünü seçin ve kullandığınız sürümü yazın; sürümün etkilenen aralıkta olup olmadığını görün.

Intelligence 360 paketinde

Attack Surface Management

Alan adlarınıza bağlı varlıkları, bu varlıklarda çalışan teknolojileri ve bilinen zafiyetleri tek listede görün.

CVE-2026-54500 · Ohler55 Oj · Dark Radar