CVE-2026-9277

Yüksek

Açıklama

shell-quote'un `quote()` fonksiyonu, object-token girdilerini `parse()` tarafından kullanılan operatör modeliyle doğrulamıyordu. `.op` alanı, JavaScript'te satır sonlandırıcılarla (\n, \r, U+2028, U+2029) eşleşmeyen `/(.)/g` kullanılarak karakter karakter ters eğik çizgi ile kaçışa uğratılıyordu. Bu nedenle, `.op` içindeki bir satır sonlandırıcı, çıktıya kaçış işlemi uygulanmadan aktarılıyordu; POSIX kabukları gerçek bir yeni satırı komut ayırıcı olarak kabul ettiğinden, ondan sonra gelen herhangi bir içerik ikinci bir komut olarak yürütülüyordu. Savunmasız kod yoluna iki şekilde erişilebiliyordu: (1) dış girdiden doğrudan `{ op: '...\n...' }` oluşturulması ve (2) `envFn` fonksiyonunun `.op` değeri saldırgan tarafından etkilenen object token'lar döndürdüğü durumlarda `parse(cmd, envFn)` aracılığıyla. Her ikisi de belgelenmiş API yüzeyleridir. Karakter bazlı kaçış işleminin, katı şekil doğrulamasıyla değiştirilmesiyle düzeltilmiştir: `.op` alanı ayrıştırıcının kontrol operatörü izin listesiyle eşleşmelidir; `{ op: 'glob', pattern }` ifadesi `pattern` değerini doğrular ve satır sonlandırıcıları yasaklar; `{ comment }` ifadesi `comment` değerini doğrular ve satır sonlandırıcıları yasaklar; diğer tüm nesne şekilleri ise `TypeError` fırlatır.

ÖnemYüksek
CVSS8.1
İstismar olasılığı—
ÜrünShell-quote
Yayın22 May 2026
İlk görülme22 May 2026

Nasıl düzeltilir

Etkilenen ürünler

ÜrünEtkilenen sürümlerDüzeltildiği sürüm
shell-quotenpm1.1.0 ≤ v < 1.8.41.8.4

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-9277 · Shell-quote · Dark Radar