[공격] 분석 — CVE-2026-23011
A local kernel panic vulnerability in IPv4 GRE header handling requires restricting GRE device creation for non-privileged users and applying kernel updates to prevent DoS.
📋 요약
- 심각도 medium · CVSS 5.5 · EPSS 0.00187 · 악용난이도 hard
🔍 공격 기법
- 취약점 원리:
ipgre_header()함수가skb(socket buffer)의 headroom(여유 공간)을 확인하지 않고skb_push()를 호출하여 발생하는 Kernel Panic(Oops). 특히team또는bonding드라이버가dev->needed_headroom이나dev->hard_header_len을 동적으로 변경할 때, 이미 할당된skb의 공간이 부족한 상태에서 GRE 장치가 연결되면 메모리 경계를 넘어가는 Underflow가 발생함. - 공격 표면 (Attack Surface):
- 프로토콜/인터페이스: IPv4 GRE (
ip_gre), Team/Bonding 네트워크 드라이버, MLD (mld_newpack). - 핵심 함수:
net/core/skbuff.c내의skb_push(),net/ipv4/gre.c내의ipgre_header().
- 프로토콜/인터페이스: IPv4 GRE (
- 공격 체인 및 전제 조건:
- 초기 접근 (Initial Access): 로컬 사용자 권한 필요 (
PR:L). - 정찰 및 트리거 준비: 시스템에 GRE 터널링 인터페이스 생성 권한이 있거나, 네트워크 설정 변경이 가능한 상태여야 함.
- 상태 조작 (Race/Condition):
mld_newpack()등이 headroom이 작은skb를 할당한 시점과ipgre_header()가 호출되는 시점 사이에 GRE 장치를 동적으로 연결하여 불일치를 유도함. - 실행: 부족한 공간에 헤더를 강제로 push 하여
skb_under_panic을 트리거, 커널 패닉 유발.
- 초기 접근 (Initial Access): 로컬 사용자 권한 필요 (
- CVSS 벡터 분석:
AV:L/AC:L/PR:L/UI:N은 공격자가 이미 시스템 내부에 계정 권한을 가지고 있으며, 복잡한 상호작용 없이 로컬 명령만으로 즉시 DoS를 일으킬 수 있음을 의미함.
악용 가능성: 본 취약점은 공격 난이도가 매우 높은 hard 등급으로, 네트워크 스택 내부의 정교한 타이밍과 조건이 맞물려야 하는 Kernel Panic 유발 결함입니다. CVSS 벡터 상 AV:L(Local) 및 PR:L(Low Privilege) 조건은 공격자가 이미 시스템에 접근하여 일반 사용자 권한을 획득한 상태에서 커널 인터페이스에 접근해야 함을 의미합니다. 실제 공격 표면은 Linux Kernel의 ipv4 스택 내 ipgre_header() 함수이며, 특히 team 또는 bonding 드라이버가 dev->needed_headroom 값을 동적으로 변경하는 시점과 skb 할당 시점이 어긋나는 Race Condition 형태의 트리거 구조를 가집니다. EPSS 수치가 0.00187로 매우 낮고 KEV에 등재되지 않은 점은, 이론적인 심각도와 별개로 외부에서 원격으로 즉시 악용할 수 있는 공개된 공격 경로가 희박함을 시사합니다. 결과적으로 본 취약점은 단순한 패킷 전송만으로는 불가능하며, 로컬 권한을 가진 공격자가 특정 네트워크 인터페이스 설정(GRE/Bonding)을 조작하여 skb_under_panic을 유도하는 정교한 체이닝 과정이 필수적입니다. 따라서 실전에서의 악용 가능성은 낮으나, 커널 권한 획득을 위한 DoS 단계의 체인으로 활용될 잠재적 위험이 존재합니다.
💥 영향 분석
- 가용성 파괴 (DoS): 커널 패닉으로 인한 시스템 전체의 즉각적인 크래시 및 재부팅 유발.
- 영향 범위: 다중 소스 교차검증 결과 Linux Kernel 3.10.1부터 6.18.7까지 광범위한 버전이 영향권에 있어 공급망 관점의 위험도가 높음.
🔗 관련 취약점·체이닝
- 취약점 유형:
CWE-125 (Out-of-bounds Read)또는CWE-787 (Out-of-bounds Write)계열의 메모리 관리 결함. - 추정 체이닝 경로:
- 단순 DoS를 넘어, 특정 조건에서
skb구조체의 메타데이터를 조작할 수 있다면 **정보 유출(Information Leak)**로 이어질 가능성이 있음. - 권한 상승 (LPE) 체이닝: 본 취약점 단독으로는 패닉(Crash)만 발생하지만, 다른 메모리 오염 취약점과 결합하여 커널 힙 레이아웃을 조작(Heap Spraying/Grooming)하는 용도로 활용될 수 있음.
- 흐름:
로컬 접근$\rightarrow$GRE 헤더 조작을 통한 메모리 상태 변경$\rightarrow$타 취약점 결합$\rightarrow$권한 상승.
- 단순 DoS를 넘어, 특정 조건에서
🔎 탐지
- 커널 로그 모니터링:
dmesg또는/var/log/syslog에서skb_under_panic,kernel BUG at net/core/skbuff.c,ipgre_header키워드가 포함된 Oops 메시지 탐지. - 행위 기반 탐지: 일반 사용자 권한으로 짧은 시간 내에 다수의 GRE 터널 인터페이스를 생성/삭제하는 비정상적인 네트워크 설정 행위 모니터링.
🛡️ 완화 방안
- 근본 해결: 영향받는 Linux 커널 버전의 최신 보안 패치 적용 (
ipgre_header()함수 내 headroom 검증 로직 추가). - 즉시 조치:
- 비특권 사용자의 네트워크 인터페이스 생성 권한 제한 (CAP_NET_ADMIN 권한 관리).
- 불필요한 GRE 모듈 로드 제한 (
modprobe -r ip_gre).
⚖️ 위험도 / 우선순위
- 조치: monitor (모니터링)
- 근거: CVSS=5.5 · non-KEV · EPSS=0.00187 · exploit=hard · in_scope=None