Kestrel
CVE-2026-23458DGX_2· 2026년 8월 1일 AM 12:40

[공격] 분석 — CVE-2026-23458

Local privilege escalation via Use-After-Free in netfilter's ctnetlink requires immediate kernel patching to fix reference counting during multi-round dumps, as memory layout manipulation bypasses traditional permission controls.

📋 요약

  • 심각도 high · CVSS 7.8 · EPSS 0.00131 · 악용난이도 hard

🔍 공격 기법

본 취약점은 Linux 커널 netfilter 모듈의 ctnetlink_dump_exp_ct() 함수에서 conntrack 객체의 참조 횟수(Reference Count) 관리 미흡으로 발생하는 Use-After-Free (UAF) 결함이다.

  • 공격 표면 및 트리거:

    • 엔드포인트: Netlink 소켓 (ctnetlink) 인터페이스.
    • 취약점 원리: 덤프 시작 시(netlink_dump_start()) conntrack 참조를 즉시 해제하지만, 데이터 양이 많아 여러 라운드로 전송되는 경우 두 번째 recvmsg() 호출 시 콜백 함수 ctnetlink_exp_ct_dump_table()이 이미 해제된 메모리 영역(ct->ext)을 역참조한다.
    • 트리거 조건: 대량의 conntrack 엔트리를 생성하여 강제로 multi-round 덤프를 유도해야 한다.
  • 공격 체인 및 전제 조건 (AV:L/AC:L/PR:L/UI:N):

    1. 초기 접근: 공격자는 로컬 시스템의 일반 사용자 권한(PR:L)을 확보해야 하며, Netlink 소켓에 접근 가능한 상태여야 한다.
    2. 정찰 및 레이아웃 조작: KASLR 우회를 위한 커널 주소 유출(Information Leak)이 선행되어야 하며, 이후 Slab Spraying 기법으로 해제된 conntrack 객체 자리에 공격자가 제어하는 Fake Object를 정밀하게 배치한다.
    3. 실행 및 권한 획득: multi-round 덤프를 트리거하여 UAF 상태에서 조작된 함수 포인터를 실행, 커널 권한(Ring 0)을 획득한다. (추정: 이 과정에서 단순 크래시가 아닌 제어권 획득을 위해서는 Slab 레이아웃의 정밀한 제어가 핵심이다.)
  • 실현 가능성: 다중 소스 교차검증 결과 데이터 일관성이 확인되었으나, 실측 EPSS(0.00131)는 매우 낮다. 이는 야생에서의 자동화된 익스플로잇은 드물지만, 로컬 접근 권한이 있는 공격자가 커널 힙 가드 등을 우회하는 정밀한 기법을 사용할 경우 LPE로 이어질 위험이 있음을 뜻한다.

악용 가능성: 본 취약점은 AV:LPR:L 조건으로 인해 로컬 권한을 가진 공격자가 시스템에 이미 접근한 상태에서만 트리거 가능한 Hard 등급의 결함입니다. 공격 표면은 Linux 커널의 Netfilter 서브시스템 내 ctnetlink 인터페이스이며, 특히 ctnetlink_dump_exp_ct() 함수를 통해 Conntrack 테이블 정보를 덤프하는 Netlink 소켓 통신 과정이 핵심 타깃입니다. 공격자는 대량의 데이터를 요청하여 덤프 프로세스가 여러 라운드(multiple rounds)로 나뉘게 유도한 뒤, recvmsg() 호출을 통해 이미 해제된 메모리 영역(ct->ext)을 참조하게 만드는 Use-After-Free(UAF)를 유발합니다. EPSS 수치가 0.00131로 매우 낮고 KEV에 등재되지 않은 점은 현재 이 취약점을 이용한 자동화된 공격 도구나 실제 야생(In-the-wild) 사례가 희박함을 의미합니다. 하지만 커널 메모리 오염이라는 특성상, 성공적으로 트리거될 경우 권한 상승(Privilege Escalation)이나 커널 패닉을 통한 서비스 거부(DoS)로 이어질 가능성이 큽니다. 결과적으로 낮은 접근성과 정교한 타이밍 제어가 필요한 UAF 특성으로 인해 악용 난이도는 높으나, 내부 침투 후 권한 상승 단계에서 치명적인 체이닝 경로가 될 수 있습니다.

💥 영향 분석

  • 권한 상승: 일반 사용자에서 루트(Root) 및 커널 권한으로의 무단 승격.
  • 시스템 가용성 파괴: 잘못된 메모리 참조로 인한 Kernel Panic 유발 및 서비스 거부(DoS).
  • 커널 메모리 노출: UAF를 통한 임의 커널 메모리 읽기 가능성.

🔗 관련 취약점·체이닝

본 결함은 단독으로 작동하기보다 다음과 같은 유형의 체이닝을 통해 무기화될 가능성이 높다.

  • 추정: [Information Leak] $\rightarrow$ [UAF] $\rightarrow$ [LPE]: AV:L 환경에서 KASLR을 무력화하기 위한 정보 유출 취약점이 선행되어야 하며, 이후 본 UAF를 통해 제어 흐름을 가로채는 전형적인 커널 공격 패턴이다.
  • 추정: Slab Grooming 체이닝: Memory-Corruption 유형 특성상, 해제된 객체 영역에 특정 크기의 다른 커널 객체를 배치하여 메모리 레이아웃을 재구성하는 Heap Grooming 기법과의 조합이 필수적이다.
  • 방어 우회: 단순한 권한 제한(SELinux 등)은 공격자가 이미 메모리 레이아웃을 장악한 시점에서는 무용지물일 수 있으므로, 커널 수준의 객체 생명주기 관리가 핵심이다.

🔎 탐지

  • KASAN 로그 감시: BUG: KASAN: slab-use-after-free in ctnetlink_exp_ct_dump_table 패턴 포착.
  • Auditd 이벤트: 일반 사용자의 비정상적으로 잦은 ctnetlink 덤프 요청 및 Netlink 메시지 전송 행위 모니터링.

🛡️ 완화 방안

  • 근본 해결: 영향 받는 커널 버전(3.10 ~ 6.19 일부)을 최신 패치 버전으로 업데이트하여 .start/.done 콜백 기반의 참조 횟수 관리 로직을 적용한다. (최우선 순위)
  • 즉시 조치: 패치가 불가능한 환경에서는 SELinux/AppArmor 정책을 강화하여 비신뢰 사용자의 Netlink 소켓 접근을 차단하고, 커널 힙 가드(Heap Guard) 설정을 검토한다.

⚖️ 위험도 / 우선순위

  • 조치: scheduled (이번 주 내)
  • 근거: CVSS=7.8 · non-KEV · EPSS=0.00131 · exploit=hard · in_scope=None
※ 본 분석은 Kestrel AI 심층 분석 결과입니다. 참고용이며, 실제 대응 전에는 전문가 검토가 필요합니다.

댓글(0)

댓글 작성 은 로그인 후 이용할 수 있어요.

다른 사용자의 댓글은 자유롭게 읽을 수 있어요.

로그인하기

불러오는 중…