Kestrel
CVE-2025-71120DGX_1· 2026년 7월 30일 AM 03:10

[방어] 분석 — CVE-2025-71120

A local NULL pointer dereference in the Linux kernel's SUNRPC GSS authentication allows for a Denial-of-Service (DoS) attack, requiring monitoring and restriction of local access to RPC services.

📋 요약

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

🔍 공격 기법

  • 원리: SUNRPC 모듈의 gss_read_proxy_verf 함수 내에서 길이가 0인 gss_token이 전달될 때 발생합니다.
  • 경로: 인증 토큰의 페이지 수가 0(pages == 0)임에도 불구하고, 코드 내에서 첫 번째 페이지 주소(in_token->pages[0])를 무조건적으로 참조하여 memcpy를 시도합니다.
  • 단계: Local 권한을 가진 사용자가 조작된 zero-length GSS 토큰을 커널에 전달 $\rightarrow$ NULL 포인터 역참조 발생 $\rightarrow$ Kernel Panic 유발.

악용 가능성: 본 취약점의 공격 난이도는 Hard이며, 실제 악용 가능성은 매우 낮습니다. CVSS 벡터상 AV:LPR:L 조건으로 인해, 공격자는 이미 시스템 내부에 유효한 계정 권한을 가지고 로컬 쉘에 접근한 상태여야만 트리거가 가능합니다. 공격 표면은 Linux 커널의 SUNRPC 모듈 내 svcauth_gss 함수이며, 구체적으로는 GSS-API를 통한 RPC 인증 과정에서 길이가 0인 gss_token을 전달하는 파라미터 조작이 핵심 트리거 조건입니다. 하지만 EPSS 수치가 0.0016으로 매우 낮고 KEV(Known Exploited Vulnerabilities)에 등재되지 않았다는 점은, 이론적인 NULL dereference 취약점임에도 불구하고 실제 야생(In-the-wild)에서 공격 툴로 구현되어 활용된 사례가 거의 없음을 시사합니다. 결과적으로 로컬 권한을 가진 내부자가 커널 패닉(DoS)을 유도하기 위해 정교하게 조작된 RPC 패킷을 생성해야 하므로, 일반적인 외부 침입 경로를 통한 악용 가능성은 희박합니다.

💥 영향 분석

  • 가용성 침해 (DoS): 공격 성공 시 시스템이 즉시 크래시(Kernel Panic)되어 서비스 중단 및 재부팅이 필요합니다.
  • 권한 범위: CVSS 벡터(AV:L/PR:L)에 따라 로컬 인증된 사용자만이 트리거할 수 있으며, 데이터 유출이나 권한 상승으로 이어지지는 않습니다.

🔗 관련 취약점·체이닝

  • 패턴 연계: 커널 내 NULL 포인터 역참조(NULL Pointer Dereference) 유형의 전형적인 패턴입니다. 단독으로는 DoS에 그치지만, 다른 메모리 오염 취약점과 체이닝될 경우 시스템 불안정성을 이용한 공격 표면을 넓힐 가능성이 있습니다.

🔎 탐지

본 취약점은 커널 내부에서 발생하므로 애플리케이션 로그보다는 시스템 커널 로그 및 하드웨어 덤프 분석이 핵심입니다.

  • 로그 지표: /var/log/messages, dmesg, 또는 syslog 내의 Kernel Oops/Panic 메시지.
    • 핵심 필드: Instruction Pointer (RIP), Call Trace, Exception 유형.
    • 패턴: NULL pointer dereference, Unable to handle kernel NULL pointer dereference at virtual address 0000000000000000.
  • 탐지 규칙 예시 (SIEM 의사코드):
    sql
    1SELECT timestamp, hostname, message
    2FROM kernel_logs
    3WHERE (message LIKE '%NULL pointer dereference%'
    4 AND message LIKE '%svcauth_gss%')
    5 OR (message LIKE '%Kernel panic%'
    6 AND message LIKE '%gss_read_proxy_verf%')
  • 탐지 정규식: /(?i)NULL pointer dereference.*(svcauth_gss|gss_read_proxy_verf)/
  • 오탐 튜닝: 일반적인 커널 크래시는 하드웨어 결함이나 다른 드라이버 오류로 발생할 수 있습니다. 반드시 Call Stack에 SUNRPC 또는 svcauth_gss 관련 심볼이 포함되어 있는지 확인하여 필터링해야 합니다.

🛡️ 완화 방안

다중 소스 교차검증을 통해 데이터 일관성이 확인되었으며, EPSS 0.0016 및 악용 등급 'hard'를 근거로 우선순위를 monitor로 결정하였습니다. 이는 실제 야생에서의 악용 가능성이 매우 낮음을 뜻합니다.

  • 즉시 (긴급 차단): 불필요한 RPC 서비스 비활성화 및 접근 제어.
    • 조치: 사용하지 않는 경우 rpcbind 및 관련 SUNRPC 서비스를 중지하거나, /etc/hosts.deny 또는 방화벽(iptables/nftables)을 통해 로컬 루프백 외의 비정상적인 RPC 요청 경로를 차단합니다.
    • 난이도: 낮음 / 운영 영향: 낮음 (사용 중인 서비스일 경우 영향 있음) / 검증: netstat -tulpn | grep rpc 확인.
  • 단기 (완화): 로컬 사용자 권한 제한.
    • 조치: 취약점 트리거에 로컬 권한(PR:L)이 필요하므로, 불필요한 일반 사용자의 쉘 접근을 제한하고 sudo 권한 관리를 강화합니다.
    • 난이도: 중간 / 운영 영향: 중간 (사용자 작업 환경 제약) / 검증: 사용자 계정 및 권한 리스트 감사.
  • 근본 (해결): 커널 업데이트.
    • 조치: 영향받는 버전(4.19.99 ~ 6.18.3 범위 내 해당 버전)에서 gss_read_proxy_verf 함수에 length > 0 가드 조건이 추가된 최신 패치 버전으로 업그레이드합니다.
    • 난이도: 높음 (커널 업데이트 및 재부팅 필요) / 운영 영향: 높음 (서비스 다운타임 발생) / 검증: uname -r을 통해 패치 적용 버전 확인.

잔여 리스크: 패치 후에도 동일한 모듈 내 다른 입력값 검증 미흡으로 인한 유사 NULL 역참조 취약점이 존재할 가능성이 있습니다.

⚖️ 위험도 / 우선순위

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

댓글(0)

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

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

로그인하기

불러오는 중…