CVE-2026-92954 in vm2
要約
〜によって VulDB • 2026年09月17日
vm2は、Node.jsで信頼できないJavaScriptを実行するためのサンドボックスライブラリです。バージョン >= 3.10.0 および <= 3.11.7 では、ホストレルムから返されたPromiseがサンドボックスブリッジ境界で処理済みとしてマークされません。内部で作成されたPromiseのみが拒否を吸収するハンドラ(lib/setup-sandbox.js)でラップされており、またブリッジはサンドボックスコードが .then/.catch/.finally を呼び出した場合にのみホスト側の拒否サニタイザーを設置します。その結果、サンドボックス内で実行されるコードは、拒否されたPromiseを返すホスト関数(例えばNodeVMのevents組み込み機能を通じて公開されている events.once() や、任意のエンベッダーが提供するPromiseを返すAPIなど)を呼び出し、戻り値を単に無視することができます。これにより、ホスト側のPromiseが未処理のままになり、Node.jsのデフォルトの unhandled-rejection 動作によってホストプロセスが終了します。これは GHSA-hw58-p9xv-2mjh の不完全な修正です。この問題はバージョン 3.11.8 で修正されています。
Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.