Skip to content
KitploitKITPLOIT
도구블로그
제출
도구블로그
제출

해킹, 침투 테스트 및 사이버 보안 도구를 당신의 보안 무기고에!

Kitploit은 해킹, 사이버 보안 및 침투 테스트 도구 디렉토리입니다. 최신 프로젝트 업데이트를 발견하여 취약점을 찾고, 시스템을 분석하고, 테스트를 자동화하고, 보안을 강화하세요.

··피드·문의·개인정보·© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
CVE-2026-81000 — CVE-2026-81000(TUNderflow) 연구 저장소로, 로컬 권한 상승을 가능하게 하는 Linux 커널 TUN/TAP 수신 헤드룸 정수 언더플로우에 대한 PoC, 근본 원인 분석, 실습 환경 구성을 제공합니다. | Kitploit
도구/GitHubGitHub/0xblackash/cve-2026-81000
Privilege EscalationVulnerability AnalysisExploitationReverse EngineeringPenetration TestingPapers & ResearchLearning & EducationBinary ExploitationLabs & Practice
GitHub0xblackash/cve-2026-81000

CVE-2026-81000

CVE-2026-81000(TUNderflow) 연구 저장소로, 로컬 권한 상승을 가능하게 하는 Linux 커널 TUN/TAP 수신 헤드룸 정수 언더플로우에 대한 PoC, 근본 원인 분석, 실습 환경 구성을 제공합니다.

7시간 53분 전아직 검토되지 않음

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유
저장소 보기

⚡ CVE-2026-81000 - TUNderflow

Linux 커널 TUN/TAP 수신 헤드룸 메모리 손상

TUN/TAP 네트워킹 서브시스템의 Linux 커널 메모리 손상 취약점으로, 수신 헤드룸에 대한 불충분한 경계 설정과 패킷 할당 경로의 정수 언더플로우로 인해 발생합니다.


⚠️ 면책 조항

이 저장소는 승인된 보안 연구, 취약점 분석, CTF 환경, 커널 디버깅 및 방어적 테스트를 위해 제공됩니다.

명시적인 승인 없이 시스템에 대해 개념 증명 코드를 사용하지 마십시오.


📌 취약점 개요

CVE 권고는 이 문제를 skb->data가 할당된 skb 헤드 외부에 위치하게 할 수 있는 정수 언더플로우로 설명합니다.


🧬 취약점 설명

이 취약점은 Linux 커널의 TUN/TAP 수신 경로에 존재합니다.

영향받는 코드는 TUN 장치에 구성된 수신 헤드룸을 패킷 헤드룸으로 사용하는 동시에 얼마나 많은 패킷 데이터가 선형으로 유지되어야 하는지 계산할 때도 사용합니다.

따라서 과도하게 큰 헤드룸 값은 다음에서 잘못된 계산을 초래할 수 있습니다:

root@kitploit:~
SKB_MAX_HEAD(align)

제공된 값이 사용 가능한 1페이지 skb 헤드를 초과하면 계산이 언더플로우될 수 있습니다.

개념적으로:

root@kitploit:~
Oversized receive headroom
          │
          ▼
     SKB_MAX_HEAD()
          │
          ▼
     Integer underflow
          │
          ▼
    Negative value
          │
          ▼
      size_t wrap
          │
          ▼
Invalid skb data placement
          │
          ▼
Kernel memory corruption

취약한 구현은 다음 위치에 있습니다:

root@kitploit:~
drivers/net/tun.c

tun_get_user()가 취약한 경로의 중심입니다.


🔬 근본 원인

근본적인 문제는 충분히 경계가 설정되지 않은 TUN 수신 헤드룸입니다.

커널은 값을 TUN/TAP으로 전파하는 네트워크 장치 경로를 통해 과도하게 큰 헤드룸 요청을 수신할 수 있습니다.

이 취약점은 복잡한 가상 네트워킹 구성이 큰 헤드룸 값을 TUN 장치에 도달하게 할 때 특히 흥미로워집니다.

공개된 내용은 다음을 포함하는 시나리오를 설명합니다:

root@kitploit:~
Netkit
   │
   ▼
VXLAN
   │
   ▼
Open vSwitch
   │
   ▼
TUN

예시 구성은 약 4160 바이트의 헤드룸을 raw TUN 포트로 전파하여 취약한 산술 연산이 언더플로우되도록 할 수 있습니다.


💥 보안 영향

손상은 커널 네트워킹 메모리 관리 로직에서 발생합니다.

잠재적 결과는 다음과 같습니다:

  • 커널 메모리 손상
  • 커널 충돌
  • 서비스 거부
  • 커널 구조체 손상
  • 잠재적 커널 코드 실행
  • 로컬 권한 상승

공개된 내용은 이 취약점을 Linux 로컬 루트 취약점 그룹 중 하나로 보고하며, 공개된 PoC가 지원되는 대상에서 비권한 로컬 사용자에서 루트로의 실행을 달성할 수 있다고 명시합니다.

악용 가능성은 환경에 따라 다르며 관련 TUN/네트워크 장치 구성과 지원 기능이 필요합니다.


🧠 기술적 흐름

root@kitploit:~
             ATTACKER
                 │
                 ▼
       Oversized network headroom
                 │
                 ▼
        Virtual network device
                 │
                 ▼
             Open vSwitch
                 │
                 ▼
              TUN/TAP
                 │
                 ▼
          tun_get_user()
                 │
                 ▼
       SKB_MAX_HEAD(align)
                 │
                 ▼
          Integer underflow
                 │
                 ▼
          size_t wraparound
                 │
                 ▼
       Invalid skb->data offset
                 │
                 ▼
       Kernel memory corruption

🔎 취약한 코드 경로

중요한 구성 요소는 다음과 같습니다:

root@kitploit:~
drivers/net/tun.c
        │
        ├── tun_set_headroom()
        │
        ├── tun_get_user()
        │
        └── tun_alloc_skb()

취약한 관계는 다음과 같이 단순화할 수 있습니다:

root@kitploit:~
tun->align
    │
    ├── skb headroom
    │
    └── linear-data calculation

두 계산 모두에서 동일한 과도하게 큰 값을 사용하면 요청된 헤드룸과 실제 skb 헤드 예산 사이에 안전하지 않은 관계가 생성됩니다.


🧮 정수 언더플로우

핵심 보안 속성은 개념적으로 다음과 같이 표현할 수 있습니다:

root@kitploit:~
usable_head < requested_headroom

이는 다음을 초래할 수 있습니다:

root@kitploit:~
SKB_MAX_HEAD(align) < 0

이어서 부호 없는 변환이 발생합니다:

root@kitploit:~
negative value
      ↓
size_t
      ↓
very large unsigned value

이는 궁극적으로 skb 할당/데이터 배치에 영향을 미칠 수 있습니다.

공식 설명은 특히 결과 값이 size_t linear 변수에 할당될 때 랩어라운드된다고 명시합니다.


🩹 업스트림 수정

업스트림 수정은 다음과 같습니다:

root@kitploit:~
447c9303942c439a117d9b76ce6d6e2116c38ee7

커밋:

root@kitploit:~
net: tun: bound receive headroom

이 수정은 TUN이 저장하는 헤드룸을 사용 가능한 1페이지 skb 헤드 예산과 유효한 최대 16비트 skb 헤더 오프셋에 대해 경계 설정합니다. 또한 raw TUN 및 TAP 처리에 충분한 선형 데이터가 사용 가능하도록 보장합니다.


🛡️ 패치 개념

이전

root@kitploit:~
User / network device
        │
        ▼
Large headroom
        │
        ▼
tun->align
        │
        ▼
Unsafe arithmetic
        │
        ▼
Potential OOB access

이후

root@kitploit:~
User / network device
        │
        ▼
Large headroom
        │
        ▼
Bounded headroom
        │
        ▼
Safe skb calculation
        │
        ▼
Normal packet processing

📊 취약 vs 패치됨


🧪 연구 환경

권장 실험실 토폴로지:

root@kitploit:~
┌─────────────────────────────────────────┐
│             Linux VM / Host             │
│                                         │
│   ┌─────────┐     ┌──────────────┐     │
│   │ Netkit  │────▶│    VXLAN     │     │
│   └─────────┘     └──────┬───────┘     │
│                          │             │
│                   ┌──────▼───────┐     │
│                   │ Open vSwitch │     │
│                   └──────┬───────┘     │
│                          │             │
│                   ┌──────▼───────┐     │
│                   │    TUN/TAP   │     │
│                   └──────────────┘     │
│                                         │
└─────────────────────────────────────────┘

유용한 도구:

root@kitploit:~
uname -a
ip link
ip tuntap
bridge link
ovs-vsctl show
dmesg -w

커널 디버깅용:

root@kitploit:~
GDB
GDB + GEF
GDB + pwndbg
crash
objdump
readelf
pahole

🔎 커널 검증

실행 중인 커널 확인:

root@kitploit:~
uname -r

커널 구성 확인:

root@kitploit:~
grep CONFIG_TUN /boot/config-$(uname -r)

예상 구성:

root@kitploit:~
CONFIG_TUN=y

또는:

root@kitploit:~
CONFIG_TUN=m

모듈이 로드되었는지 확인:

root@kitploit:~
lsmod | grep tun

🧪 PoC 연구

공개된 내용은 통제된 검증을 위한 전용 TUNderflow PoC 저장소를 제공합니다.

안전한 연구 워크플로우:

root@kitploit:~
1. Build vulnerable kernel
2. Boot isolated VM
3. Configure TUN/TAP
4. Reproduce oversized headroom
5. Monitor kernel messages
6. Capture crash/corruption behavior
7. Apply upstream patch
8. Repeat test
9. Compare results

커널 모니터링:

root@kitploit:~
sudo dmesg -w

실험실의 목표는 프로덕션 시스템을 공격하는 것이 아니라 취약한 동작과 패치된 동작의 차이를 입증하는 것입니다.


📂 저장소 구조

root@kitploit:~
CVE-2026-81000-TUNderflow/
│
├── README.md
│
├── exploit/
│   ├── poc.c
│   └── Makefile
│
├── analysis/
│   ├── root-cause.md
│   ├── kernel-path.md
│   ├── integer-underflow.md
│   └── patch-analysis.md
│
├── kernel/
│   ├── vulnerable/
│   └── patched/
│
├── lab/
│   ├── setup.sh
│   ├── cleanup.sh
│   └── topology.md
│
├── screenshots/
│
├── docs/
│   └── research-notes.md
│
└── LICENSE

🔐 완화

권장 완화 방법은 업스트림 보안 수정 또는 적절한 배포판 백포트가 포함된 커널을 설치하는 것입니다.

Debian/Kali의 경우:

root@kitploit:~
sudo apt update
sudo apt full-upgrade

그런 다음 재부팅:

root@kitploit:~
sudo reboot

확인:

root@kitploit:~
uname -r

프로덕션 환경의 경우 업스트림 버전 번호에만 의존하지 말고 설치된 배포판 커널을 벤더의 보안 권고와 대조하여 확인하십시오.

예를 들어 Oracle Linux는 net: tun: bound receive headroom 수정이 포함된 보안 업데이트를 게시했습니다.


📦 안정 커널 수정

공개된 내용은 다음 안정 커널 릴리스를 TUNderflow를 포함한 네 가지 공개된 로컬 루트 취약점에 대한 수정이 포함된 최초 릴리스로 식별합니다:


🧩 보안 교훈

TUNderflow는 몇 가지 중요한 커널 보안 원칙을 보여줍니다:

01 — 외부에서 영향을 받는 값의 경계 설정

네트워크 구성 값을 맹목적으로 신뢰해서는 안 됩니다.

02 — 할당 전 산술 연산 검증

정수 언더플로우는 겉보기에 무해한 계산을 메모리 안전성 원시 요소로 바꿀 수 있습니다.

03 — 메타데이터와 메모리 가정의 분리

네트워크 장치 헤드룸 값은 실제 skb 메모리 예산과 일관성을 유지해야 합니다.

04 — 복잡한 네트워킹 스택은 공격 표면을 증가시킴

가상 네트워킹 계층은 예상치 못한 패킷 메타데이터를 여러 서브시스템에 걸쳐 전파할 수 있습니다.

05 — 패치 분석이 중요함

업스트림 수정을 연구하면 충돌만 살펴보는 것보다 원래 취약점을 더 명확하게 이해할 수 있는 경우가 많습니다.


📚 참고 자료

  • CVE: CVE-2026-81000
  • 구성 요소: Linux Kernel TUN/TAP
  • 영향받는 파일: drivers/net/tun.c
  • 주요 함수: tun_get_user()
  • 업스트림 수정: 447c9303942c439a117d9b76ce6d6e2116c38ee7
  • 수정: net: tun: bound receive headroom
  • 공개: Linux kernel security advisory / oss-security

👤 연구

0xBlackash

Cybersecurity Research · Linux Kernel Security · Vulnerability Research · CTF


CVE-2026-81000 · TUNderflow · TUN/TAP · Linux Kernel · LPE


Research • Analyze • Exploit • Harden

도구 다운로드
필드세부 정보
CVECVE-2026-81000
코드명TUNderflow
구성 요소Linux Kernel
서브시스템TUN/TAP
영향받는 코드drivers/net/tun.c
주요 함수tun_get_user()
버그 분류정수 언더플로우 / 범위를 벗어난 메모리 접근
영향커널 메모리 손상
잠재적 영향로컬 권한 상승
CVSS v3.17.8 — 높음
공격 벡터로컬
필요 권한낮음
사용자 상호작용없음
상태패치됨
보안 속성취약패치됨
헤드룸 경계 설정됨❌✅
큰 헤드룸이 안전하게 처리됨❌✅
언더플로우 조건 방지됨❌✅
skb 데이터 배치 보호됨❌✅
잘못된 네트워크 구성이 안전하게 거부됨❌✅
브랜치수정된 릴리스
5.105.10.270
5.155.15.221
6.16.1.188
6.66.6.157
6.126.12.109
6.186.18.50
7.27.2.4