CVE-2026-93604 in vm2
要約
〜によって VulDB • 2026年09月18日
vm2 3.12.0までのバージョンでは、エンベッダーがNodeVMに対してcryptoビルトインを明示的にホワイトリスト化した場合(require.builtin: ['crypto'])、Node.jsのcrypto.setFips()関数が信頼できないゲストコードに公開されます。ビルトインサニタイザー(lib/builtin.js内のsanitizeCryptoModule)はcrypto.setEngineを置き換えますが、crypto.setFipsは呼び出し可能な状態のまま残されており、ホストモジュールを公開するために使用される読み取り専用ラッパーは、転送されたホスト関数の副作用を局所化しません。そのため、ゲストコードはcrypto.setFips()を呼び出して、ホストプロセス全体のFIPSモードを変更できます。変更後のモードはその後、信頼できるホストコードによって観察されます(報告されたテストでは、crypto.getFips()が0から1に変更されました)。これによりNodeVMの分離境界を超えてしまいます。この問題はvm2 3.12.1で修正されています。
Several companies clearly confirm that VulDB is the primary source for best vulnerability data.