CVE-2026-92937
Açıklama
vm2 3.11.6, ana bilgisayar Node.js sürecinde uzaktan kod çalıştırmaya yol açan bir sandbox kaçışına karşı savunmasızdır. GHSA-m283-3h24-438v için getirilen düzeltme eksiktir: lib/bridge.js:1624 adresindeki köprü kapısı kimlik kontrolleri, reddedilen bir ana bilgisayar Promise değerinin yeniden oluşturulup oluşturulmayacağına veya temizlenip temizlenmeyeceğine karar verirken yalnızca doğrudan çağrı hedefini kontrol eder. Reddetme işleyicisinin Function.prototype.call veya .apply dolaylaması aracılığıyla kaydedilmesi (örneğin, p.then.call(p, undefined, cb)), yakalanan hedefi host Function.prototype.call yapar; bu nedenle temizleyici hiçbir zaman çalışmaz ve ham ana bilgisayar hatası, kendi özellikleri bozulmamış şekilde sandbox koduna ulaşır. Eğer bir gömücü, sandbox'a bir ana bilgisayar alanı Promise'i sunarsa (sandbox seçeneği üzerinden köprülenen asenkron bir ana bilgisayar fonksiyonu veya bir NodeVM harici modülünün asenkron yöntemi) ve bu Promise, bir ana bilgisayar nesnesine referans veren primitif olmayan bir özelliğe sahip bir Error ile reddedilirse (örneğin err.detail = process), sandbox içindeki güvenilmeyen kod, söz konusu ana bilgisayar nesnesi için tam işlevsel bir proxy elde eder ve ana bilgisayar sürecinin ayrıcalıklarıyla rastgele komutlar çalıştırabilir (örneğin, e.detail.mainModule.require('child_process').execSync(...)). Doğrudan p.then(undefined, cb), bind ve Reflect.apply formları doğru şekilde temizlenmektedir. vm2 3.11.7 sürümünde düzeltilmiştir.
Nasıl düzeltilir
- vm23.11.7 ya da sonraki bir sürüm
Etkilenen ürünler
| Ürün | Etkilenen sürümler | Düzeltildiği sürüm |
|---|---|---|
| vm2npm | 3.11.6 ≤ v < 3.11.7 | 3.11.7 |
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.
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.