Araştırmacılar, NPM paket deposu aracılığıyla ayda 16 milyondan fazla indirilen bir JavaScript sanal alan kitaplığı olan ‘vm2’de kritik bir uzaktan kod yürütme kusuru konusunda uyarıyorlar.
vm2 güvenlik açığı CVE-2022-36067 olarak izleniyor ve saldırganların sanal alan ortamından kaçmasına ve bir ana bilgisayar sisteminde komut çalıştırmasına izin verebileceğinden, CVSS sistemindeki maksimum puan olan 10.0 önem derecesini aldı.
Korumalı alanlar, işletim sisteminin geri kalanından duvarlarla çevrili yalıtılmış bir ortamdır. Bununla birlikte, geliştiriciler genellikle güvenli olmayan kodları çalıştırmak veya test etmek için sanal alanları kullandığından, bu sınırlı ortamdan “kaçma” ve ana bilgisayarda kod yürütme yeteneği büyük bir güvenlik sorunudur.
Kum havuzundan kaçış
Oxeye’daki güvenlik araştırmacıları, sanal alanın dışında oluşturulan “CallSite” nesnelerini oluşturmak ve bunları Node’un global nesnelerine erişmek ve komutları yürütmek için kullanmak için VM2’de oluşan bir hatanın çağrı yığınını özelleştirmenin akıllı bir yolunu buldular.
Kütüphanenin yazarları geçmişte bu olasılığı azaltmaya çalışırken, Oxeye araştırmacıları “prepareStackTrace” yönteminin özel bir uygulamasını kullanarak bu azaltma mekanizmasını atlamanın bir yolunu buldular.
Araştırmacılar, “Muhabirin POC’si, vm2’nin “WeakMap” JavaScript yerleşik türüyle ilgili belirli yöntemleri kaydırmayı kaçırdığı için yukarıdaki mantığı atladı” dedi. onların raporunda.
“Bu, saldırganın kendi “prepareStackTrace” uygulamasını sağlamasına, ardından bir hatayı tetiklemesine ve sanal alandan kaçmasına izin verdi.”
Analistler, “prepareStackTrace” işlevini uygulayan, yine sandbox dışında oluşturulan “CallSite” nesnelerine erişen ve mevcut süreçte komutları çalıştıran özel bir nesneyle global Error nesnesini geçersiz kılmanın da mümkün olduğunu buldu.
En kısa sürede güncelleyin
Oxeye’nin araştırma ekibi bu kritik sorunu 16 Ağustos 2022’de keşfetti ve birkaç gün sonra VM2 ekibine bildirdi ve VM2 ekibi, bir soruşturma başlattıklarını doğruladı.
Sonunda, popüler kitaplığın yazarları, 28 Ağustos 2022’de korumalı alandan kaçış ve kod yürütme sorunlarını ele alan 3.9.11 sürümünü yayınladı.
Yazılım geliştiricilerin en son VM2 sürümüne güncelleme yapmaları ve projelerindeki eski sürümleri mümkün olan en kısa sürede değiştirmeleri istenmektedir.
Son kullanıcılar için, VM2’ye dayanan sanallaştırma yazılım araçlarının mevcut güvenlik güncellemesini uygulaması biraz zaman alabilir.
ile gördüğümüz gibi Log4Shellyaygın olarak dağıtılan bir açık kaynak kitaplığındaki kritik bir güvenlik sorunu, etkilenen kullanıcılar tedarik zincirindeki belirsizlik nedeniyle savunmasız olduklarını bile bilmeden uzun süreler boyunca devam edebilir.
Bir korumalı alan çözümü kullanıyorsanız, bunun VM2’ye dayanıp dayanmadığını ve en son sürümü kullanıp kullanmadığını kontrol edin.