Kritikus isolated-vm sérülékenység vezethet RCE-hez a gazdarendszeren

enlightened Ez az oldal a közösségért készül. heart Kövess minket máshol is:  Linux Mint Magyar Közösség a Mastodon-on  Telegram csatorna – csak hírek  Beszélgessünk a Telegram – Linux csevegő csoport  Hírek olvasása RSS segítségével  Linux Mint Hivatalos Magyar Közösség a Facebook-on      Linux Mint Baráti Kör a Facebook-on
wink Ha hasznosnak találod, és szeretnéd, hogy folytatódjon, támogasd a munkát Ko-fi vagy Paypal segítségével. laugh

kami911 képe

Kritikus súlyosságú típuskonfúziós sérülékenységet azonosítottak az isolated-vm Node.js könyvtárban, amely sikeres kihasználás esetén távoli ódfuttatást (RCE) tehet lehetővé a gazdarendszeren.

Az isolated-vm a V8 JavaScript-motor Isolate interfészére építve biztosít egymástól elkülönített JavaScript-futtatási környezeteket. Minden Isolate saját memóriával, végrehajtási állapottal és garbage collectorral rendelkezik, így a megoldást széles körben használják nem megbízható JavaScript-kód sandboxolt futtatására konténer vagy virtuális gép nélkül.

A CVE-azonosítóval még nem rendelkező hiba az ExternalCopy funkciót érinti, amely az adatok Isolate-ok közötti átviteléért felel. A teljesítmény növelése érdekében a mechanizmus egy transferList segítségével mozgat nagyobb ArrayBuffer objektumokat a különböző környezetek között.

A probléma abból adódott, hogy az adatokat rekonstruáló kód kétszer járta be a listát, miközben a második ellenőrzés során feltételezte, hogy az elemek értéke nem változott. JavaScript getterek használatával azonban egy támadó eltérő értékeket adhat vissza a két bejárás során, és ezzel time-of-check/time-of-use (TOCTOU) hibát idézhet elő. Ez végül támadó által kontrollált pointer dereferálásához vezethet.

Bár az ExternalCopy konstruktort közvetlenül csak a host érheti el, egy sandboxban futó támadó az ivm.Reference mechanizmuson keresztül is előidézheti a sérülékenységet. Sikeres kihasználás esetén a gazdafolyamat összeomolhat, ami szolgáltatásmegtagadást (DoS) eredményezhet, súlyosabb esetben pedig a vezérlési folyamat eltérítésével RCE válhat lehetővé a host rendszeren.

A fejlesztői közlemény szerint minden olyan alkalmazás érintett lehet, amely nem megbízható kódot futtat Isolate-ban, és akár egyetlen Reference objektumot is megoszt vele. A sérülékenységet az isolated-vm 6.2.0 és 7.0.1 verziókban javították, megakadályozva, hogy a másolási folyamat közben felhasználói JavaScript fusson.

Az Endor Labs szerint a hiba a natív C++ összekötő rétegben volt, amely közvetlenül kezeli a V8 belső objektumait és memóriamutatóit. Egyetlen nem megfelelően ellenőrzött típuskonverzió elegendő volt ahhoz, hogy a támadó áttörje az izolációs határt, és potenciálisan kódot futtasson a gazdarendszeren.

(forrás)