【ITニュース解説】A virtual machine escape is a workstation problem until CI shares the hypervisor
2026年10月24日に「Dev.to」が公開したITニュース「A virtual machine escape is a workstation problem until CI shares the hypervisor」について初心者にもわかりやすく解説しています。
ITニュース概要
VMware WorkstationとFusionに、仮想マシン内からホストPCのシステムを乗っ取れる重大な脆弱性が見つかった。開発環境やCI/CD環境では、仮想マシンに侵入されるとホストPC全体が危険に晒される可能性がある。対象ユーザーは速やかに最新版26H1u1へアップデートする必要がある。
ITニュース解説
このニュースは、仮想マシンと呼ばれる技術の根幹を揺るがすセキュリティ上の問題、特に「仮想マシンエスケープ」と呼ばれる攻撃とその企業環境における影響について報じている。仮想マシンエスケープとは、コンピューター上に作られた仮想的な実行環境(仮想マシン、またはゲストOS)から、その仮想マシンを動かしている実際のコンピューター(ホストOS)へと不正に侵入する攻撃である。通常、仮想マシンはホストOSから隔離されているため、この隔離が破られることは極めて深刻な事態だ。
今回発表されたのは、Broadcom(旧VMware)が提供する仮想化ソフトウェアである「VMware Workstation」と「VMware Fusion」における二つのセキュリティ欠陥である。一つは「CVE-2026-59346」という、整数オーバーフローと呼ばれる種類の欠陥で、共通脆弱性評価システム(CVSS)で9.3という高い深刻度がつけられている。これは、VMXNET3という仮想ネットワークアダプターに関連する問題である。もう一つは「CVE-2026-59347」で、HGFS(Host Guest File System)という共有フォルダ機能におけるスタックベースのバッファオーバーフローである。こちらの深刻度は8.1と評価されている。これらの脆弱性は、Workstation 25H2および26H1、Fusion 25H2および26H1の各バージョンに影響を与え、いずれも26H1u1というバージョンで修正されている。
これらの攻撃が成功するためには、「AV:L」と評価されているように、攻撃者が仮想マシン内部でローカル管理者権限を持っていることが前提となる。CVE-2026-59346の場合、VMXNET3仮想ネットワークアダプターを使用している仮想マシン上で悪意のある攻撃者がローカル管理者権限を持つ必要がある。CVE-2026-59347の場合は、同様に仮想マシン上でローカル管理者権限を持つことで、ホスト上で実行されているVMXプロセスとして任意のコードを実行できる結果となる。VMXプロセスとは、ホストOS上で仮想マシンの実行を管理する主要なコンポーネントである。
通常、「Workstation」や「Fusion」といった製品は開発者のノートパソコンなどで個人利用されるイメージが強く、その脆弱性は個人のデバイスの問題と捉えられがちである。しかし、今回の脆弱性が企業にとってなぜ重要であるかには、いくつかの理由がある。一つは、Workstationが企業のビルドサーバーやテストホストとして利用される実態があるためである。これらの環境では、一つの物理ホスト上で複数の仮想マシンが稼働し、ビルドエージェントなどが管理者権限で動作しているのが一般的である。もう一つは、Apple製ハードウェア上で動作するFusionが、プラットフォームチームによって本番環境のコンポーネントのローカルミラーを構築するために使われる場合があることだ。しばしば、これらの仮想マシンは実際のシステムにアクセスするための認証情報を持っている。
これらの企業利用のシナリオでは、「仮想マシン内部で攻撃者が管理者権限を持つ」という攻撃の前提条件が、実は「通常の運用状態」に該当してしまう。ビルドエージェントは管理者として実行され、開発者のテスト用仮想マシンには開発者が使用する管理者権限が付与されているためである。この状況こそが重要であり、今回の脆弱性は仮想マシンの「ゲスト」とホストOSの「ホスト」との間の境界がどれほど強固であるかを試すものとなる。
具体的な技術的欠陥の仕組みとしては、HGFSの欠陥は、ホストとゲスト間でファイルを交換する共有フォルダのメカニズムに関わる。ゲスト内で実行される悪意のあるコードがHGFSの通信チャネルに到達し、ホスト側のファイルを解析するコード(パーサー)にスタックオーバーフローを引き起こすことで、ホスト全体が侵害される。一方、整数オーバーフローの欠陥は、Windowsゲストでデフォルトで利用される高性能な仮想ネットワークアダプターであるVMXNET3に関するものである。管理者権限を持つゲストは自身のネットワークドライバーを制御できるため、その立場から整数オーバーフローをトリガーできる。どちらのケースも、特権を持つゲストが制御する入力をデバイスエミュレーション層のパーサーが処理する際に、メモリ安全性に関する欠陥があり、それがゲストとホストの境界を越える、という典型的な仮想マシンエスケープの形をとる。VMXプロセスはホスト側の主要なコンポーネントであり、このプロセス内でコードが実行されることは、ホストOS上で直接コードが実行されることを意味する。
複数の仮想マシンが異なるチームで共有される「共有ホスト」環境では、さらにリスクが増大する。例えば、HGFS(共有フォルダ)が有効になっているが実際には使われていない場合、運用上のメリットがないにも関わらずゲストからホストへの攻撃チャネルを開いていることになる。どのネットワークアダプターが設定されているか(VMXNET3の利用状況)も重要である。さらに、各ゲスト内部で誰が管理者アクセス権を持っているか、例えばチームメンバー間で仮想マシンのアカウントが共有されている場合、そのチームの誰でも攻撃の前提条件を満たすことになってしまう。ホストが企業ネットワークに接続されているか、あるいは本番環境へのSSHキー(安全なリモート接続のための鍵)を持っているかなども、そのホストが侵害された際の被害範囲を大きく左右する。
これらの脆弱性に対する修正は、WorkstationおよびFusionのバージョン26H1u1で提供されている。パッチが適用されたかどうかを確認するには、製品の「バージョン情報」ダイアログでビルド番号を確認するのが最も直接的な方法である。企業内で管理されているホスト群に対しては、インストールされているアプリケーションバージョンをインベントリツールで一括照会することで、パッチ適用状況を効率的に把握できる。しかし、管理下にない開発者のラップトップなどの場合、パッチが適用されているかどうかの確認が難しく、これが企業全体のセキュリティリスクとなる可能性がある。
万が一、仮想マシンエスケープが発生した場合、インシデント対応においても特有の課題がある。ゲストからホストへのエスケープ攻撃では、ホストが被害者であり、ゲストが攻撃者となるため、ホスト側に残される証拠の解釈が非常に難しい。VMXプロセス自身のログファイル「vmware.log」は、各仮想マシンのデバイス活動を記録しており、仮想マシンのファイルと共にホスト上に保存される。エスケープがデバイスチャネルを介して行われた場合、このログが主要な記録となるが、これは侵害されたホスト上にあるため、改ざんのリスクも伴う。このため、インシデント発生前に、これらのログがゲストのオペレーターの手が届かない、独立した場所に収集される体制を構築しておくことが極めて重要である。そのような体制がなければ、ホストの侵害が単なる原因不明の異常な挙動として見過ごされ、効果的な記録や追跡ができないままになる可能性が高い。