
CVE-2026-99999(PwnEscape) VM-to-host 커널 이스케이프에 Linux 호스트가 노출되어 있는지 확인하기 위한 스페인어 가이드 및 Bash 스크립트로, 패치 검증과 완화 조치 단계를 포함합니다.
Linux 서버가 CVE-2026-99999("PwnEscape") 에 노출되어 있는지 확인하고 이를 완화하는 방법을 다루는 실용 가이드입니다. 시스템을 점검하고 근거와 함께 판정을 내리는 스크립트를 포함합니다.
| 항목 | 값 |
|---|---|
| CVE | CVE-2026-99999 |
| 이름 | PwnEscape |
| 구성 요소 | Linux 커널, IPv4 체크섬 처리 (skb_checksum_help()) |
| 심각도 | CVSS 3.1 9.3 (치명적) — AV:L/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H |
| 영향 | 악성 VM이 호스트 메모리를 읽고, 호스트를 다운시키며, 실험실 환경에서는 root 권한으로 제어권을 탈취할 수 있음 |
| 벡터 | 로컬: 공격자가 VM 내부에서 코드를 실행할 수 있어야 함 |
| 발견자 | Paulos Yibelo (pwn.ai), Vercel Sandbox Challenge 중 발견 |
| 공개일 | 2026년 10월 15일 |
| 업스트림 수정 | 커밋 6785011f8b16 (Michael S. Tsirkin, Red Hat) |
| 활성 익스플로잇 | 보고되지 않음 · CISA KEV 카탈로그에 미등재 |
아파트 건물을 떠올려 보세요:
┌──────────────────────────────────────┐
│ HOST (servidor físico + hipervisor) │ ← aquí está la falla
│ Linux con KVM / QEMU / Firecracker │
│ │
│ ┌─────────┐ ┌─────────┐ ┌────────┐ │
│ │ VM A │ │ VM B │ │ VM C │ │
│ │ │ │(atacante)│ │ │ │
│ └─────────┘ └─────────┘ └────────┘ │
└──────────────────────────────────────┘
취약점은 VM이 아니라 호스트에 있습니다. 따라서:
Linux는 네트워크 패킷이 체크섬이 어디서 시작되고 그 결과가 어디에 기록되는지를 나타내는 메타데이터를 운반하도록 허용합니다. 이는 checksum offloading을 위한 정당한 최적화입니다.
문제는 연산 순서에 있습니다:
수정 사항은 체크섬 시작 지점이 이미 처리된 IPv4 헤더 내부를 가리킬 수 없도록 검증합니다. 영향을 받는 다섯 개의 네트워크 경로에 적용됩니다.
취약한 코드는 커널 2.6.27(2008년)부터 존재합니다.
| 브랜치 | 최초 수정 버전 |
|---|---|
| 5.10 | 5.10.272 |
| 5.15 | 5.15.223 |
| 6.1 | 6.1.190 |
| 6.6 | 6.6.159 |
| 6.12 | 6.12.113 |
| 6.18 | 6.18.57 |
| 7.2 | 7.2.11 |
| Mainline | 7.3-rc7 |
⚠️ Ubuntu, RHEL/Rocky/Alma, SUSE 및 Proxmox는 자체적인 번호 체계를 사용합니다(예:
5.15.0-125-generic또는5.14.0-503.el9). 이러한 배포판에서는 버전만으로는 아무것도 알 수 없으므로, 배포판의 보안 공지나 커널 changelog를 확인해야 합니다.이 목록에 없는 브랜치(6.8, 6.19, 7.0, 7.1…)는 더 이상 업스트림 지원이 없으며 수정 사항을 받지 못했습니다.
curl -O https://raw.githubusercontent.com/alvaroguzmancode/CVE-2026-99999/refs/heads/main/check-pwnescape.sh
sudo bash check-pwnescape.sh
스크립트는 세 가지를 확인합니다:
VPS에서의 출력 예시:
== VEREDICTO ==
Rol: Este equipo ES una máquina virtual; no hospeda otras VMs.
Kernel: VULNERABLE — la versión del kernel es anterior a la corregida.
NO EXPUESTO DIRECTAMENTE.
La falla solo se explota desde una VM hacia el servidor que la hospeda.
Este equipo no hospeda VMs, así que no hay a quién atacar desde aquí.
Ojo: el que SÍ debe estar parchado es el host que aloja esta VM
(tu proveedor de nube o tu servidor Proxmox/KVM). Confírmalo con ellos.
| 종료 코드 | 의미 |
|---|---|
0 | 취약하지 않음 또는 노출되지 않음 |
1 | 취약함 |
2 | 확인할 수 없음, 수동으로 검토해야 함 |
1. 나는 VM인가, 호스트인가?
systemd-detect-virt # "kvm", "xen", etc. = eres una VM; "none" = físico
pgrep -a qemu-ga # si aparece, eres una VM (QEMU Guest Agent)
lsmod | grep -E 'kvm|vhost' # módulos de virtualización cargados
cat /sys/module/kvm_intel/refcnt 2>/dev/null || cat /sys/module/kvm_amd/refcnt # >0 = hay VMs usando KVM
virsh list --all 2>/dev/null # VMs de libvirt
pgrep -a '^(qemu-system|firecracker)' # VMs / microVMs corriendo
2. 내 커널에 패치가 적용되어 있나요?
uname -r
# Debian / Ubuntu
zgrep -i "CVE-2026-99999" /usr/share/doc/linux-image-$(uname -r)/changelog.Debian.gz
# RHEL / Rocky / Alma / Fedora
rpm -q --changelog kernel-core-$(uname -r) | grep -i "CVE-2026-99999"
3. 재시작이 필요한가요?
[ -f /var/run/reboot-required ] && echo "Falta reiniciar" # Debian / Ubuntu
needs-restarting -r # RHEL
# Debian / Ubuntu / Proxmox
sudo apt update && sudo apt full-upgrade
# RHEL / Rocky / Alma / Fedora
sudo dnf update kernel
커널 유지 관리자는 단일 커밋을 적용하는 것이 아니라 배포판의 전체 안정 버전을 설치할 것을 권장합니다.
sudo reboot
# después:
uname -r
sudo bash check-pwnescape.sh
패키지를 설치하는 것만으로는 충분하지 않습니다: 새 커널은 재부팅한 후에만 사용됩니다. 클러스터에서는 각 하이퍼바이저를 확인하세요.
VM 내부의 커널을 업데이트해도 위험이 제거되지 않습니다. 결함은 호스트에 있기 때문입니다. VPS 고객이라면 제공업체에 호스트가 이미 패치되었는지 확인하세요.
장비에 KVM이 로드되어 있지만 VM을 호스팅하지 않는다면 공격 표면을 줄일 수 있습니다:
sudo modprobe -r kvm_intel kvm_amd kvm 2>/dev/null
echo -e "blacklist kvm_intel\nblacklist kvm_amd\nblacklist kvm" | sudo tee /etc/modprobe.d/no-kvm.conf
이러한 조치는 결함을 수정하지는 않지만, VM에서 탈출한 공격자가 달성할 수 있는 것을 제한합니다:
알려진 활성 캠페인이 없기 때문에 공개된 IOC(해시, 도메인, IP)는 없습니다. 탐지는 호스트에서의 행위 기반으로 이루어집니다:
# Caídas u "oops" del kernel en los últimos 30 días
journalctl -k --since "-30d" | grep -iE "panic|oops|BUG:|general protection|skb"
경고 신호:
탈출이 의심된다면 VM만이 아니라 호스트 전체를 침해된 것으로 취급하십시오. 메모리와 로그를 보존하고, 동일 호스트의 다른 VM들을 점검하며, 자격 증명을 교체하십시오.
귀사의 서버를 CVE-2026-99999("PwnEscape") 취약점에 대해 점검했습니다. 이 결함은 가상 머신을 호스팅하는 물리 서버에 영향을 미치며, 악의적인 가상 머신이 자신을 호스팅하는 서버를 공격할 수 있게 합니다.
귀사의 서버는 공급자가 호스팅하는 가상 머신이며 다른 가상 머신을 호스팅하지 않으므로 직접적으로 취약하지 않습니다. 수정은 물리 서버를 업데이트해야 하는 인프라 공급자의 책임입니다.
예방 조치로 공급자가 이미 패치를 적용했는지 확인하고, 다음 유지보수 기간에 서버 커널을 업데이트하겠습니다. 현재까지 이 결함이 활발히 악용되고 있다는 보고는 없습니다.
| 파일 | 설명 |
|---|---|
README.md | 이 가이드 |
check-pwnescape.sh | 탐지 스크립트 (Bash, 의존성 없음) |
작성자: Álvaro Guzmán · 2026년 10월 19일 기준 정보.