← 戻る
概要
vm2-project に 脆弱性 (CVE-2026-26956) が存在。悪用されるとシステム全体を乗っ取られる可能性があります。``catch`` 経由で攻撃可能。
AI要約 openai / gpt-4o
Node.jsで利用されるオープンソースサンドボックスであるvm2に深刻なセキュリティ問題が見つかりました。この問題を利用することで、攻撃者はサンドボックスを脱出し、システム上で任意のコードを実行することが可能です。これにより、システムの制御を奪われる可能性があります。同様の問題は過去にも発生しており、特にシステムの防護メカニズムが意図せず無効化される事例(CWE-693)が関連します。この問題は、バージョン3.10.5で修正されていますので、企業や団体は即時のソフトウェアアップデートを推奨します。
この脆弱性は、vm2のバージョン3.10.4において、`VM.run()`内で実行される攻撃者コードがホストプロセスオブジェクトを取得し、ホスト側のコマンドを実行できる問題です。影響を受けるバージョンは3.10.4以前で、3.10.5で修正されています。PoCではWASMの`try_table`命令を使用してJavaScriptの例外をC++レベルでキャッチし、ホストエラーオブジェクトを通じてコード実行を達成します。暫定回避策は提供されておらず、即座にバージョンを更新することが推奨されます。
❓ 何が問題か
vm2-project に **脆弱性** (CWE-693) があります。攻撃者は ``catch`` を経由して脆弱な処理に到達し、認証なしで悪用できます。
📍 影響範囲
vm2-project のうち 影響範囲: `<= 3.10.4`。攻撃箇所: `catch` / `try_table` / `JSTag` / `externref`。
🔥 重要度
重要度: 最重要 (CVSS 9.8/10)。悪用されるとシステム全体を乗っ取られる可能性があります
🔧 修正方法
ベンダー公式アドバイザリの修正版に更新してください。(修正前: `<= 3.10.4` 該当バージョンが本番稼働中なら直ちに更新計画を立案)
🛡️ 暫定回避
修正版が未提供時は、影響機能の無効化・WAFルール・ネットワークACLでの遮断を検討。
🔍 検知方法
Webサーバ・プロキシ・WAFログで該当CVEのIOCに合致する不審リクエストを検索。SBOM/依存ファイルで影響バージョンを横断確認。
類似する過去の事例 過去のCVE/インシデントから類似事例を抽出
Node.jsのsandbox escapeに関連するCVE。
TypeScriptコンパイラによるsandbox escapeの事例。
もし自社で起きたら 業務シナリオごとの想定影響
📌 ECサイトのバックエンドでvm2を利用している場合
攻撃者がサンドボックスを脱出してバックエンドの完全な制御を取得する可能性がある。
📌 社内開発環境で利用している場合
攻撃者が社内の開発サーバで任意のコードを実行できるリスクがある。
📌 マルチテナントサービスの一部としてvm2を使用している場合
一つのテナントが他のテナントやホストシステムを攻撃する可能性がある。
推奨アクション
即座にvm2のバージョンを3.10.5にアップデートすること。
対応アクション (7段階)
SOC/SREチームが順番に実行すべき具体的なステップとコマンド例
-
1影響範囲の特定 identify
grep -r 'vm2-project' . | grep -v node_modulesリポジトリと本番環境の依存ファイル (package-lock.json / requirements.txt / go.sum / Gemfile.lock 等) で `vm2-project` を grep し、稼働しているサービス・バージョンを把握する。
-
2バージョン照合 verify
Confirm if version satisfies `<= 3.10.4`Step 1 で見つかったバージョンが影響範囲 `<= 3.10.4` に該当するか照合。本番で稼働中ならインシデント扱い。
-
7事後検証 verify
Confirm patched version is live in productionパッチ適用後、ステージングで PoC または同等の悪用パターンを再現して脆弱性が閉じたことを確認。本番では Step 3 と同じログクエリでアラート再発が無いか継続監視。