CVE-2026-50029

Orta

Açıklama

js-toml, JavaScript için bir TOML ayrıştırıcısıdır. Versiyon 1.1.2 öncesinde yorumlayıcı, bir anahtarın ayrıştırıcı tarafından oluşturulan kapsayıcıda zaten mevcut olup olmadığını `if (key in object)` yerine `if (object[key])` ile kontrol eder. Önceki değer falsy bir primitif (`false`, `0`, `0n`, `0.0`, `-0` veya `""`) olduğunda, yinelenen anahtar dalı atlanır ve değer, aynı adı paylaşan daha sonraki bir alt tablo, noktalı anahtarlı alt tablo veya tablolar dizisi tarafından sessizce üzerine yazılarak değiştirilir. TOML 1.0.0 spesifikasyonuna göre ("Bir anahtarın birden fazla kez tanımlanması geçersizdir"; "Herhangi bir anahtar veya tabloyu birden fazla kez tanımlayamazsınız"), bu durum bir ayrıştırma hatası olmalıdır. Bunun sonucu, `load()` tarafından döndürülen değerdeki saldırgan tarafından adlandırılmış anahtarların yapısal tip karmaşasına yol açmasıdır. Boolean türündeki `false` (veya sayısal `0`), truthy bir nesneye dönüşür. Davranışı `if (config.flag)`, `if (!user.banned)`, `if (config.allowDelete)` veya `if (config.publicMode)` üzerinden denetleyen ana uygulamalar, sessizce truthy dalını takip edecektir. Bu durum, GHSA-65fc-cr5f-v7r2'den (1.0.2 prototip kirliliği düzeltmesi) farklıdır. `Object.prototype` kirletilmez. 1.0.2 sürümünden gelen `Object.create(null)` hafifletmesi geçerliliğini korumaktadır; buradaki hata kapsayıcı oluşturmada değil, yinelenen anahtar durum makinesindedir. Versiyon 1.1.2 hatalı karşılaştırmayı yamalamaktadır.

ÖnemOrta
CVSS5.3
İstismar olasılığı—
ÜrünJs-toml
Yayın14 Ağu 2026
İlk görülme14 Ağu 2026
Zayıflık türüCWE-697CWE-697

Nasıl düzeltilir

Güncelleyin
  • js-toml1.1.2 ya da sonraki bir sürüm

Etkilenen ürünler

ÜrünEtkilenen sürümlerDüzeltildiği sürüm
js-tomlnpmv < 1.1.21.1.2

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-50029 · Js-toml · Dark Radar