概要
Node.js向けサンドボックスライブラリ vm2 のバージョン3.11.3以前に、サンドボックスを脱出してホストOSで任意コードを実行できる脆弱性が確認されました。CVSSスコアは10.0(最高値)と評価されています。
Buffer.call.call({}.__lookupGetter__, Buffer, "__proto__") と Buffer.call.call({}.__lookupSetter__, Buffer, "__proto__") を組み合わせ、Node.jsの ERR_INVALID_ARG_TYPE エラーを利用することで、ホスト側の TypeError コンストラクタを取得できます。これによりサンドボックスの制限が突破され、攻撃者はホストOS上で任意のコードを実行できる状態になります。
CVSSベクトル
| 項目 | 値 |
|---|---|
| スコア | 10.0 (CRITICAL) |
| 攻撃元区分 (AV) | ネットワーク (N) |
| 攻撃条件の複雑さ (AC) | 低 (L) |
| 必要な特権 (PR) | 不要 (N) |
| ユーザー操作 (UI) | 不要 (N) |
| スコープ (S) | 変更あり (C) |
| 機密性への影響 (C) | 高 (H) |
| 完全性への影響 (I) | 高 (H) |
| 可用性への影響 (A) | 高 (H) |
| CWE | CWE-913(動的管理コードリソースの不適切な制御) |
影響を受けるソフトウェア
| 製品 | ベンダー | 影響バージョン |
|---|---|---|
| vm2 | patriksimek | 3.11.3 以前 |
修正バージョンと回避策
修正バージョン: vm2 v3.11.4
npm / yarn を利用している場合は以下のコマンドでアップデートを実施してください:
npm update vm2
# または
yarn upgrade vm2
package.json で "vm2": "^3.11.4" 以降を指定し、npm install で更新することも推奨されます。
vm2を使用したアプリケーションをインターネット向けに公開している場合は、アップデートが完了するまで外部からのアクセスを制限することを検討してください。
関連リンク
データソース: NVD (NIST), GitHub Advisory Database AI解説は Claude API により自動生成されています。正確性については原文をご確認ください。
