Webエンジニア向けプログラミング解説動画をYouTubeで配信中!
▶ チャンネル登録はこちら

【ITニュース解説】Docker Sandboxes CVE-2026-77179 and CVE-2026-79994: when the agent VM can still reach the host

2026年10月07日に「Dev.to」が公開したITニュース「Docker Sandboxes CVE-2026-77179 and CVE-2026-79994: when the agent VM can still reach the host」について初心者にもわかりやすく解説しています。

作成日: 更新日:

ITニュース概要

AIコーディングエージェント用のDocker Sandboxesに重大な脆弱性が見つかった。仮想マシンがホスト環境に隔離されず、virtio-fs経由やソケットリレー経由でホストのファイルを読み書き・改変できる危険がある。速やかにバージョン0.42.0以降へアップデートが必要。

ITニュース解説

Docker Sandboxesのセキュリティに関する重要なニュースが入ってきた。これは、Dockerの便利な機能である「Docker Sandboxes」に、仮想マシン内のプログラムがホスト側の環境に不正にアクセスできてしまうという、深刻な脆弱性が発見されたという内容だ。システムエンジニアを目指す上で、このようなセキュリティ問題とその対策は非常に重要な知識となるため、詳しく見ていこう。

まず、「Docker Sandboxes」とは何かを理解する必要がある。AIコーディングエージェントのようなプログラムを安全に実行するために設計された特別な機能で、開発者のパソコン(ホスト環境)とは完全に隔離された「仮想マシン」の中にエージェントを閉じ込めて実行する。これにより、エージェントがどんな操作をしても、開発者の大切な環境には影響を与えない、という安全な状態を作り出すことが目的だ。仮想マシンは、プログラムをホスト環境から完全に分離して実行するための技術であり、Docker Sandboxesはこの仮想マシンを利用して、エージェントの動作を開発環境から隔離する。

しかし、2026年9月にDockerから発表された情報によると、この仮想マシンの中にいるエージェントが、想定外の方法で仮想マシンの外側(開発者のパソコン本体)にアクセスできてしまう脆弱性が二つ見つかった。本来であれば完全に隔離されているはずが、その隔離が完全ではなかったということだ。

一つ目の脆弱性は「CVE-2026-77179」と名付けられている。これは、「virtio-fsホストサーバー」という部分に問題があった。virtio-fsは、仮想マシンとホストの間でファイルを共有するための仕組みだが、特にmacOS環境で使われているバージョン0.28.0から0.41.0までの範囲にこの脆弱性が存在した。この脆弱性は、深刻度が非常に高く、CVSSスコア(脆弱性の深刻度を示す共通指標)は9.4という危険水準だ。この問題が引き起こす結果は直接的で、サンドボックス内のコードが、本来共有されるはずのない、ホスト上の任意のファイルを読み書きできてしまうというものだった。しかも、その操作はホストのユーザーアカウントと同じ権限で行われるため、非常に広範囲な影響を及ぼす可能性がある。開発者が意図的に共有を許可した「プロジェクトディレクトリ」という境界を、この欠陥は完全に踏み越えてしまったことになる。この発見はOren Yomtov氏によるものだ。

二つ目の脆弱性は「CVE-2026-79994」で、深刻度は8.7とこちらも高い。この問題は、仮想マシン(ゲスト)とホストの間で通信を行う「Unixソケットリレー」という部分に関係していた。対象となるバージョンは0.37.0から0.41.0までだ。Dockerの公開情報では、この脆弱性がどのプラットフォームに影響するかは具体的に明記されていないが、問題のメカニズムが詳細に説明されている。注目すべきは、これら二つの脆弱性が、どちらも同じバージョン範囲内で見つかったことだ。サンドボックスがホストと通信するための主要な経路である「共有ファイルシステム」と「ソケットリレー」の両方に、同じ時期に欠陥があったというのは、セキュリティ上見過ごせない点である。このCVEに関する一つ興味深い情報として、当初修正バージョンが0.41.0と発表された後、約1時間で0.42.0に訂正されたという経緯がある。もし、脆弱性情報を自動で収集するツールが古い情報をキャッシュしている場合、誤った修正バージョンを表示している可能性もあるので注意が必要だ。この脆弱性の発見はJurre van Bergen氏によるものだ。

これらの脆弱性の背景には、Docker Sandboxesが考える「隔離」の概念がある。Dockerの公式ドキュメントによると、サンドボックスの隔離は「ハイパーバイザー(仮想マシンを管理するソフトウェア)による障壁」として説明されており、仮想マシン内のプロセスごとの権限分離を目的としているわけではない。つまり、仮想マシンの中では、実行されるプロセスは互いに分離されておらず、重要なのはハイパーバイザーがホスト環境との間で強制する分離なのだ。今回見つかった二つの欠陥は、まさにこの「ホスト側との分離」を実装するコンポーネント、つまりホストと仮想マシンが連携する部分に問題があったため、このセキュリティ層が弱められてしまった形だ。

幸いなことに、Dockerはこれらの脆弱性に対する修正を迅速に提供した。両方の問題はバージョン0.42.0で修正されており、このバージョンは2026年9月7日にリリースされた。その後、脆弱性に関する詳細なアドバイザリとCVE記録が9月15日に公開され、同日にはさらに新しいバージョン0.43.0もリリースされている。

もしすぐにホスト環境を更新できない場合の暫定的な対策も用意されている。Dockerの公式ドキュメントには、サンドボックスを--cloneモードで実行する方法が示されている。このモードはGitリポジトリに対してのみ機能し、ソースコードを読み取り専用で仮想マシン内の/run/sandbox/sourceにマウントする。これにより、エージェントがアクセスできる範囲を限定できるが、重要な注意点がある。.envファイルや、Gitのバージョン管理対象ではないファイルなど、リポジトリ内に含まれるファイルは、読み取り可能であるため、これらの情報が漏洩するリスクは残る。

現状、Dockerはこれらの脆弱性が実際に悪用されたという報告はしておらず、2026年9月16日時点では、CISA(米国土安全保障省サイバーセキュリティ・インフラセキュリティ庁)の既知の悪用された脆弱性カタログにも掲載されていない。

システムエンジニアを目指す皆さんにとって、このようなセキュリティ問題に対する最も重要な対応は「更新」だ。具体的には、Docker Sandboxesを利用している場合は、できるだけ早くバージョン0.42.0以降、特に最新の0.43.0に更新することが強く推奨される。更新後は、脆弱性が存在した期間中にサンドボックスがアクセスしていた可能性のある情報、特にプロジェクトディレクトリ外のファイルや、開発者のホームディレクトリに保存されていた認証情報などを確認する必要がある。CVE-2026-77179の脆弱性はファイルの読み取りだけでなく変更も可能だったため、シェル起動ファイルやGitの設定ファイルなど、システムに影響を与えうるファイルの整合性(内容が書き換えられていないか)を確認することも、有効な対策となるだろう。

セキュリティは常に進化する脅威との戦いだ。このように新しい機能が提供される際にも、その根幹にある「隔離」の仕組みが本当に意図通りに機能しているか、そして問題が見つかった際にはどのように対処すべきかを理解しておくことが、システムエンジニアとして非常に重要となる。最新の情報を常に追いかけ、適切な対策を講じることが、安全なシステム運用の基盤となることを覚えておこう。

関連コンテンツ

関連IT用語