# Zapscape、KVM隔離を破る脆弱性

> Linuxは5.9以降に影響するシャドウMMUの欠陥を修正し、研究者は別途、特定のAMDネスト仮想化環境でゲストからホストrootまでの完全な連鎖を実証したと報告しています。

_Source: Linux CVE record, upstream kernel fix, and Zapscape researcher disclosure · 2026-08-07 · 8 min read · Verified against primary sources_

Canonical: https://iyu.app/ja/e/zapscape-kvm-escape-cve-2026-64561

## 60秒でわかる

Linuxは回収中に使用中のルートが無効化され得るKVM/x86シャドウMMUの欠陥を修正し、研究者は別途、特定のAMDネスト環境で完全なゲスト・ホストroot連鎖を報告しました。

**要点**

- 公式な影響範囲はLinux 5.9以降で、安定版の修正点は6.6.148、6.12.101、6.18.42、7.1.6です。
- メインライン修正2abd5287f083は、シャドウページ回収後に古いルートを検査し、無効化されたフォールトを再試行させます。
- 露出にはx86 KVMシャドウMMUとネスト仮想化が関係し、研究者はゲストrootが必要だとしています。
- IntelではEPTページウォーク長4と5の両方をL1へ公開する追加条件があり、研究者によればAMDには同等条件がありません。
- Linux 7.1.3のAMD環境での完全なroot連鎖は研究者のPoC結果で、引用した資料には独立再現がありません。

**結論.** ホストカーネルを更新し、信頼できないゲストへの不要なネスト仮想化を停止してください。特定PoCを普遍的な悪用可能性と誤認せず、同時に修正を遅らせる理由にもしないことが重要です。

## 本文

**LinuxはCVE-2026-64561を確認し、修正しました。** これはKVM/x86のシャドウMMUにあるメモリ安全性の欠陥です。公式記録はLinux 5.9以降を影響範囲とし、複数の安定版修正点を示しています。研究者は別途Zapscapeの名称で、特定のAMDネスト仮想化試験環境においてゲストからホストrootまでの完全な連鎖を実証したと報告しています。

> **⚑ Caveat:** 証拠の境界：Linuxは欠陥と修正を公式に確認しています。Linux 7.1.3とAMDネストSVM/NPTでの完全なゲスト・ホストroot連鎖は研究者のPoC報告であり、ここで引用する一次資料には独立再現の記録がありません。


### 確認済み範囲 — Linuxが公式に確認した内容

[公式CVE記録](https://cveawg.mitre.org/api/cve/CVE-2026-64561)は、KVMのシャドウMMUページフォールト処理にある順序の欠陥を説明しています。KVMはルートが古いかを確認した後、シャドウページ回収で使用中のルートを無効化し、それでも配下のメモリマッピングを続ける可能性がありました。

子シャドウページは親の役割を継承します。無効なルートの下で処理が続くと、無効な子がアクティブMMUページ一覧へ入り、KVMの内部不変条件を破って、ホストカーネルのメモリ安全性に関わる状態を作ります。

- **5.9** — 公式な影響範囲の開始Linux版
- **4系統** — 公式記録にある安定版修正点
- **2abd5287f083** — メインライン修正コミット

> **i** Linuxの記録では、古いルートに関する基礎的な挙動は以前から存在しましたが、セキュリティ上の境界は2020年のLinux 5.9からです。この版で無効なシャドウページをアクティブ一覧へ置けないという不変条件が導入されました。


### 仕組み — 無効なルートが隔離を損なう理由

ネスト仮想化では、L1ゲストがL2ゲストを実行します。L0ホストはL1が作るアドレス変換構造を追跡する必要があるため、通常のゲストメモリをハードウェアEPTやNPTで処理していても、x86 KVMはネストしたページテーブルにソフトウェアのシャドウページを使います。

KVMは仮想マシンごとのシャドウページ数を制限し、空きが不足すると古いページを回収します。修正前は回収が古いルートの確認後に行われました。回収で現在のルートが無効化されても、同じフォールトがその配下に子ページを作り続ける可能性がありました。

> 問題は古いルートの検査がないことではなく、検査を通過した後の回収がルートを古くできたことです。

> **→** 上流修正は順序を変更しました。先にMMUページを確保し、その後でルートが古いかを検査します。回収中に無効化されていれば、KVMはマッピングを続けずフォールトを再試行します。


### 露出条件 — 必要条件には明確な境界がある

すべてのLinux仮想マシンが逃げられるという主張ではありません。対象経路はx86 KVMのシャドウMMUとネスト仮想化に関係します。研究者は、公開した攻撃モデルにはL1ゲスト内のroot権限も必要だとしています。

- **共通条件:** 影響を受けるx86 KVMホスト、ネスト仮想化に伴うシャドウMMU処理、攻撃者によるL1ゲストのカーネル権限での制御。
- **Intel:** 研究者によれば、ネストVMX/EPTに加え、EPTページウォーク長4と5の両方をL1へ公開する必要があり、片方だけでは報告された別名化を作れません。
- **AMD:** 研究者によれば、ネストSVM/NPTにはIntelの二つのEPTウォーク長に相当する追加条件がありません。
- **実用上の悪用可能性:** 条件一致は露出を示しますが、悪用成功を保証しません。カーネル設定、メモリバックエンド、ハードニング、移植が影響します。


### 公開デモ — Zapscape PoCが報告する範囲

[Zapscapeリポジトリ](https://github.com/V4bel/Zapscape)は、公開デモがLinux 7.1.3とAMDネストSVM/NPTを対象とし、QEMU TCGを制御された試験基盤として使うと説明しています。研究者は、無効ページの状態を解放後使用へ発展させ、ホストにroot所有の効果を生じさせる完全な連鎖を構成したと報告しています。

同リポジトリは、これが実際のクラウドで直ちに動く完成品ではなく、提供者のホストカーネル設定、メモリバックエンド、仮想化スタックへの適合が必要だとも述べています。本稿は操作可能な攻撃手順を示さず、防御評価に限定します。


### 修正対応 — 修正版と運用者の対応

- **Linux 6.6安定版:** 6.6.148以降の6.6系で修正済みです。
- **Linux 6.12安定版:** 6.12.101以降の6.12系で修正済みです。
- **Linux 6.18安定版:** 6.18.42以降の6.18系で修正済みです。
- **Linux 7.1安定版:** 7.1.6以降の7.1系で修正済みです。
- **メインライン:** コミット2abd5287f083で修正され、CVE記録は7.2-rc5に元の修正が含まれるとしています。

> **i** ディストリビューションカーネルは修正を古い版へバックポートすることがあります。版番号だけでなく、ベンダーのパッケージ情報または対応パッチの有無を確認してください。

- **1.** x86 KVMホストを棚卸しし、信頼できないゲストへネスト仮想化を公開しているシステムを特定します。
- **2.** 利用中の安定版またはディストリビューションに対応する修正済みカーネルを適用し、実際の稼働カーネルも更新済みか確認します。
- **3.** 業務上不要なら信頼できないワークロードのネスト仮想化を無効化し、IntelではL1へ公開するEPT機能も確認します。
- **4.** ホストのカーネルログと基盤監視で不審なKVM警告、クラッシュ、不安定性を確認しますが、監視をパッチの代用にはしません。
- **5.** ローカルのKVMデバイスへのアクセス制限を多層防御として使い、カーネル修正の代替とは見なしません。

対応は明確です。**影響を受けるKVMホストを先に更新し、不要なネスト仮想化の露出を減らしてください。** リスク評価では、公式な脆弱性境界と、特定構成における研究者の完全連鎖報告を常に分ける必要があります。


## Primary sources

- [Zapscape researcher disclosure and PoC repository](https://github.com/V4bel/Zapscape)
- [Official CVE record for CVE-2026-64561](https://cveawg.mitre.org/api/cve/CVE-2026-64561)
- [Linux mainline fix 2abd5287f083](https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=2abd5287f08319fa35764566b15c6e22cb1068db)

---
_Published by iyu (https://iyu.app) — the day's AI news, checked against primary sources and rewritten in plain language. Free to quote with attribution and a link to the canonical URL._
