Her ay 16 milyondan fazla indirme alan bir JavaScript korumalı alan paketi olan Vm2, güvenilmeyen kodun tek bir işlem içinde senkronize olarak yürütülmesini sağlar.
Oxeye’daki güvenlik araştırmacıları, Ağustos 2022’de vm2’de CVSS puanı 10 olan ve geniş kapsamlı etki potansiyeli nedeniyle tüm vm2 kullanıcılarını bilgilendirmesi gereken önemli bir güvenlik açığı olan CVE-2022-36067’yi buldu.
Oxeye araştırmacılarının SandBreak olarak adlandırdığı güvenlik açığının birincil suçlusu, vm2 bakımcılarının yazılım test çerçevesindeki hataların çağrı yığınını değiştirmesine izin veren Node.js işlevidir.
Oxeye’dan kıdemli güvenlik araştırmacısı Gal Goldshtein’e göre, “vm2 bakım sağlayıcılarına açıklanan önceki sorunları incelerken alışılmadık bir teknik gözlemledik: hata raporlayıcı, korumalı alandan kaçmak için Node.js’deki hata mekanizmasından yararlandı.”
Node.js, belirli bir yöntemi yürütür ve bir hata oluştuğunda bir dizi “CallSite” nesnesini bağımsız değişken olarak iletir. Araştırmacılar, bazı CallSite nesnelerinin, korumalı alanın dışında üretilen öğeleri döndürebileceğini açıklıyor.
Oxeye’a göre, döndürülen nesnelerden birinden sorumlu olan bir saldırgan “Node’un genel nesnelerine erişebilir ve oradan rasgele sistem komutları yürütebilir.”
Error nesnesinin readyStackTrace işlevi çağrıldı ve riski azaltmak için vm2 uygulaması, çağrılan yöntemi ve çağrılan nesneleri kullanıcıların değiştirmesini engelleyecek şekilde sardı.
Bununla birlikte, bir saldırgan,preceStackTrace yönteminin kendi uygulamasını sunabilir ve tüm belirli yöntemleri kapsamadığı için sanal alandan kaçabilir.
Oxeye’daki araştırmacılar, global Error nesnesi için benzersiz bir readyStackTrace işlevi içeren kendi uygulamalarını da ikame edebildiler. Çağrıldığında, sanal alanın dışında bir CallSite nesnesi keşfederek ana bilgisayarın herhangi bir kodu çalıştırmasını sağlardı.
Yaklaşık 28 Ağustos’ta, SandBreak güvenlik açığını gideren vm2 sürüm 3.9.11 yayınlandı, ancak şimdiye kadar kusurla ilgili teknik bilgiler saklı tutuldu. Bu hafta ilerleyen saatlerde Oxeye, teknik bir blog yazısı yayınlamayı planlıyor.
Oxeye, ortamlarındaki tüm vm2 sanal alan örneklerine AppSec mühendisleri, Ar-Ge yöneticileri ve güvenlik uzmanları tarafından yama uygulanmasını ister.