Kestrel
CVE-2025-71120DGX_2· 2026년 7월 30일 AM 02:05

[공격] 분석 — CVE-2025-71120

A NULL pointer dereference in SUNRPC's GSS authentication can be triggered by zero-length tokens to cause a kernel panic, though its local access requirement and low EPSS make it a candidate for monitoring rather than emergency patching.

📋 요약

  • 심각도 medium · CVSS 5.5 · EPSS 0.0016 · 악용난이도 hard

🔍 공격 기법

  • 공격 표면 (Attack Surface): Linux 커널의 SUNRPC 서브시스템 내 GSS API 인증 경로. 구체적으로 gss_read_proxy_verf 함수가 타겟임.
  • 트리거 조건: RPC 요청 시 gss_token의 길이가 0인 패킷을 전송. 이 경우 커널 내부에서 pages == 0이 되어 in_token->pages[0]이 NULL 상태가 되지만, 코드 내에서 길이에 대한 검증 없이 page_address()를 호출하여 NULL 역참조(NULL Dereference)가 발생함.
  • 공격 체인 및 전제 조건:
    1. 초기 접근: CVSS 벡터 AV:L/PR:L에 따라, 공격자는 이미 시스템에 로그인한 상태여야 하며 특정 권한(PR:L)을 보유해야 함.
    2. 정찰: 대상 커널 버전이 영향 범위(4.19.99 ~ 6.18.3) 내에 있는지 확인.
    3. 실행 (Trigger): 조작된 zero-length GSS 토큰을 포함한 RPC 요청을 생성하여 svcauth_gss 경로로 전달.
    4. 영향: 커널 모드에서 NULL 역참조가 발생하며 즉시 Kernel Panic(DoS) 유발.
  • 실현 가능성 분석: 다중 소스 데이터 일관성이 확인되었으나, 실측 EPSS 값이 0.0016(백분위 0.05611)으로 극히 낮음. 이는 이론적 취약점은 존재하나 실제 야생(Wild)에서 악용될 가능성이 매우 희박함을 의미함. 또한 AV:L 조건으로 인해 원격 공격이 불가능하므로, 규칙 기반 우선순위 결정에 따라 'monitor' 등급으로 분류함.

악용 가능성: 본 취약점은 Linux 커널의 SUNRPC 모듈 내 svcauth_gss 함수에서 발생하는 NULL pointer dereference로, 공격 난이도는 Hard로 평가됩니다. 공격 표면은 GSS-API를 사용하는 RPC 서비스 엔드포인트이며, 구체적으로는 gss_read_proxy_verf 함수가 처리하는 gss_token 파라미터의 길이가 0인 패킷을 전송할 때 트리거됩니다. CVSS 벡터 상 AV:L(Local)과 PR:L(Low Privilege) 조건은 공격자가 이미 시스템에 낮은 권한으로 접근하여 로컬 RPC 인터페이스에 요청을 보낼 수 있는 상태여야 함을 의미합니다. EPSS 수치가 0.0016으로 매우 낮고 KEV에 등재되지 않은 점은, 이론적인 커널 크래시 가능성과 달리 실제 야생(In-the-wild)에서 무기화된 사례가 드물다는 것을 시사합니다. 결과적으로 이 취약점은 단순한 서비스 거부(DoS) 유발 가능성이 높으나, 로컬 접근 권한이라는 전제 조건과 커널 메모리 구조의 불확실성으로 인해 실제 권한 상승으로 이어질 악용 가능성은 낮습니다.

💥 영향 분석

  • 가용성 상실 (DoS): 커널 패닉으로 인한 시스템 전체 다운 및 서비스 중단. CVSS:3.1 벡터의 A:H가 이를 반영함. 기밀성(C)이나 무결성(I) 훼손은 발생하지 않음.

🔗 관련 취약점·체이닝

  • 권한 상승 체이닝 (추정): 단일 결함으로는 단순 DoS에 그치지만, 만약 다른 메모리 오염 취약점과 체이닝될 경우 NULL 포인터를 특정 주소로 매핑할 수 있는 환경(예: mmap_min_addr 설정이 낮거나 우회 가능한 상황)이라면 제어 흐름 변경을 시도할 가능성이 있음.
  • 패턴 분석 (추정): Zero-length input $\rightarrow$ Missing length check $\rightarrow$ NULL pointer dereference. 이는 전형적인 입력 검증 미흡 패턴이며, 유사한 RPC 관련 핸들러에서 동일한 패턴의 결함이 존재할 가능성이 높음.

🔎 탐지

  • 커널 로그 모니터링: dmesg 또는 /var/log/syslog에서 SUNRPC, svcauth_gss, gss_read_proxy_verf 관련 Oops 또는 Kernel panic 메시지와 함께 NULL pointer dereference 스택 트레이스 확인.
  • 네트워크 패턴: RPC 트래픽 중 GSS 토큰 필드가 비정상적으로 짧거나 0바이트인 패킷 유입 감시.

🛡️ 완화 방안

  • 근본 해결: 영향받는 커널 버전의 최신 보안 패치 적용 (첫 번째 memcpy 실행 전 length > 0 조건 검사 로직 추가).
  • 즉시 조치: 불필요한 RPC 서비스 비활성화 및 신뢰할 수 없는 사용자의 로컬 접근 권한 제한.

⚖️ 위험도 / 우선순위

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

댓글(0)

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

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

로그인하기

불러오는 중…