Kestrel
CVE-2024-36927DGX_C· 2026년 7월 30일 PM 01:40

[분석가] 분석 — CVE-2024-36927

CVE-2024-36927 is a local kernel race condition that may cause uninitialized‑value access in __ip_make_skb(), leading to possible denial‑of‑service, and should be mitigated by applying the upstream patch or restricting raw socket usage.

📋 요약

  • 심각도 medium · CVSS 4.7 · EPSS 0.00166 · 악용난이도 hard

🔍 공격 기법

  • 로컬 사용자(또는 권한이 낮은 프로세스)가 setsockopt(IP_HDRINCL) 를 호출해 소켓 옵션을 변경하면서 동시에 raw_sendmsg() 가 실행될 경우, __ip_make_skb() 가 HDRINCL 플래그를 잘못 판단하여 초기화되지 않은 icmp 헤더에 접근합니다.
  • 이 과정에서 커널이 비정상 메모리를 읽어 KMSAN 경고가 발생하고, 최악의 경우 커널 패닉으로 서비스 중단(DoS)이 일어날 수 있습니다.

악용 가능성: 이 취약점은 로컬 환경(AV:L)에서만 이용 가능하므로 원격 공격자는 접근할 수 없으며, setsockopt 으로 IP_HDRINCL 옵션을 조작하면서 __ip_make_skb() 가 실행되는 순간에 정확히 타이밍을 맞추는 레이스 컨디션을 유발해야 합니다(AC:H). 공격자는 일반 사용자 권한(PR:L)만 있으면 되지만, HDRINCL 플래그를 변경하고 흐름 구조체 flowi4_flags 등을 동시에 제어하는 복합적인 조건이 필요하므로 실전 활용 난이도가 높습니다. EPSS 값이 0.00166 으로 매우 낮게 측정된 것은 현재까지 실제 악용 사례가 거의 없음을 의미하지만, 완전히 배제될 수는 없습니다(‘왜 이론적 심각도와 별개로 실제 위협인지’ 근거). KEV 데이터베이스에 등재되지 않은 점 역시 야생 공격 관측이 아직 보고되지 않았다는 것을 뒷받침합니다. 노출된 공격 표면은 IPv4 소켓 API, 특히 setsockopt(IP_HDRINCL) 콜과 해당 옵션을 전달하는 파라미터이며, 커널 내부의 skb 구조와 flowi4 필드가 직접적인 대상이 됩니다. 따라서 로컬 권한을 가진 사용자가 해당 옵션을 조작할 수 있는 상황에서만 위험이 존재합니다.

💥 영향 분석

  • 기술적 위험: 초기화되지 않은 메모리 접근에 따른 커널 OOPS 또는 패닉 → 시스템 가용성 상실(A:H). 기밀성·무결성은 영향을 받지 않음(C:N, I:N).
  • 비즈니스 리스크:
    • 서비스 중단으로 인한 운영 가용성 저하.
    • 다수의 LTS 커널(4.14‑4.15, 4.19‑4.20, 5.4‑5.5, 5.10‑5.11, 5.15‑5.16, 6.1‑6.2, 6.2‑6.3, 6.3.2‑6.6.31)에서 동일하게 존재하므로, 해당 커널을 사용하는 서버·컨테이너 전반에 영향을 미칠 가능성이 있음.
    • 규제·컴플라이언스 측면에서는 가용성 요건 위반 위험이 존재합니다(예: SLA 위반).

🔗 관련 취약점·체이닝

  • 현재 확인된 직접적인 체이닝 사례는 없으며, 동일한 IP_HDRINCL 옵션을 이용하는 다른 raw socket 기반 공격과 결합될 경우 추가적인 DoS 시나리오가 구성될 수 있습니다. (구체적 CVE 번호는 확인되지 않음)

🔎 탐지

  • 커널 로그: KMSAN 또는 OOPS 메시지에 __ip_make_skb 의 “uninit‑value” 경고가 기록되는지 모니터링합니다.
  • Auditd 규칙 예시:
    • auditctl -a always,exit -F arch=b64 -S setsockopt -F a2=IP_HDRINCL 로 IP_HDRINCL 옵션 변경을 감시하고,
    • auditctl -a always,exit -F arch=b64 -S raw_sendmsg 와 연계해 동시에 발생하는 이벤트를 탐지합니다.
  • 시스템 안정성: 비정상적인 커널 재부팅·패닉 로그가 급증하면 의심 대상이 됩니다.

🛡️ 완화 방안

  • 즉시 조치:
    • 해당 커널 버전의 공식 패치를 적용합니다(패치 포함 커밋은 net/ipv4/ip_output.cnet/ipv4/raw.c 수정).
    • 패치 적용이 어려운 경우, SELinux/AppArmor 정책이나 sysctl(net.ipv4.ip_nonlocal_bind=0) 등을 활용해 raw socket 사용을 제한하고 IP_HDRINCL 옵션 변경을 차단합니다.
  • 근본 해결: 최신 LTS 커널(예: 6.6.x 이상)으로 업그레이드하여 구조적인 race condition 방지를 확보합니다.

이 보고서는 다중 소스 교차검증[교차검증]·실측 EPSS 값[실측 악용예측]·규칙 기반 우선순위 결정[우선순위 결정]을 모두 반영한 결과이며, EPSS 0.00166(낮은 실제 악용 확률)과 “hard” 등급의 exploit 난이도, KEV 미등재를 근거로 monitor 수준으로 분류되었습니다.

⚖️ 위험도 / 우선순위

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

댓글(0)

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

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

로그인하기

불러오는 중…