
Januscape
Januscape は、x86 Shadow MMU における Use-After-Free (UAF) 状態によって引き起こされる Linux カーネル KVM の脆弱性です。脆弱な設定では、悪意のあるゲストがホストメモリを破損させ、ホストのクラッシュや VM 分離の破綻につながる可能性があります。
この脆弱性は、KVM のレガシーシャドウページング実装に存在します。
以前のセキュリティ修正では Guest Frame Number (GFN) を検証していましたが、既存の kvm_mmu_page を再利用する前に シャドウページの役割 を確認していませんでした。
これにより、互換性のないシャドウページが再利用され、メモリが解放された後に古い逆マッピング (rmap) エントリが残ります。
その後の MMU 操作により解放されたメモリが逆参照され、ホストカーネルを破損させる Use-After-Free 状態が発生する可能性があります。
Guest modifies page mapping
│
▼
Shadow page reused
without validating role
│
▼
Stale rmap entry remains
│
▼
Shadow page freed
│
▼
Later MMU operation
dereferences freed memory
│
▼
Use-After-Free
[ 123.456789] BUG: unable to handle page fault for address: ffff8881xxxxxxxx
[ 123.456789] #PF: supervisor read access in kernel mode
[ 123.456789] #PF: error_code(0x0000) - not-present page
[ 123.456789] CPU: 3 PID: 1234 Comm: poc_3 Tainted: G OE
[ 123.456789] RIP: 0010:kvm_mmu_page_get_gfn+0xXX/0xXX [kvm]
...
[ 123.456789] Call Trace:
[ 123.456789] pte_list_remove+0xXX/0xXX [kvm]
[ 123.456789] kvm_mmu_zap_all_fast+0xXX/0xXX [kvm]
[ 123.456789] kvm_mmu_notifier_invalidate_range+0xXX/0xXX [kvm]
...
[ 123.456789] Kernel panic - not syncing: Fatal exception
[ 123.456789] ---[ end Kernel panic - not syncing: Fatal exception ]---
公式カーネル修正では、ページの役割が再利用前に検証されるようにすることで、シャドウページの再利用ロジックに対処しています。
潜在的に影響を受ける環境は以下の通りです:
脆弱な経路は主に シャドウページング に関連しており、ネステッド仮想化が使用されている場合に悪用される可能性があります。
現在の公開情報によると:
管理者は次のことを行うべきです:
dmesg、journalctl) を監視する。このリポジトリは サイバーセキュリティ教育、防御研究、インシデント対応、脆弱性認識のみ を目的としています。
攻撃的なツールやエクスプロイトコードは含まれていません。
| フィールド | 値 |
|---|
| CVE | CVE-2026-53359 |
| ニックネーム | Januscape |
| コンポーネント | Linux Kernel KVM (x86 Shadow MMU) |
| バグクラス | Use-After-Free |
| 攻撃ベクトル | Guest VM |
| 影響 | Host Kernel Memory Corruption |
| 影響を受けるプラットフォーム | Intel VT-x & AMD-V |
| 公開日 | 2026年7月 |