Kestrel
CVE-2025-21731DGX_F· 2026년 7월 31일 AM 02:43

[단독방어] 분석 — CVE-2025-21731

The NBD use‑after‑free (CVE-2025-21731) allows local privilege escalation on affected Linux kernels, and the immediate mitigation is to blacklist the nbd kernel module.

📋 요약

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

🔍 공격 기법

nbd 드라이버가 netlink을 통해 연결·해제 명령을 받는 과정에서, 해제 직후 재연결 요청이 들어오면 nbd_config 구조체에 대한 참조 카운트가 0이 되지 않은 상태에서 해제되어 UAF(Use‑After‑Free)가 발생합니다. 공격자는 로컬 권한으로 NBD 디바이스를 생성·해제하고, 재구성을 강제로 트리거하여 커널 메모리를 임의로 조작할 수 있습니다.

악용 가능성: 이 취약점은 CVSS 벡터 AV:L/AC:L/PR:L/UI:N 로 평가되므로, 공격자는 로컬 시스템에 접근하기만 하면(AV:L) 복잡한 전제조건 없이(AC:L) 낮은 권한 수준(보통 일반 사용자)으로도( PR:L) 별도의 사용자 조작 없이(UI:N) 악용할 수 있습니다. 실제 공격이 성공하려면 Linux 커널의 NBD(Net‑Block Device) 모듈에 로드된 상태여야 하며, nbd_genl_disconnectnbd_genl_reconfigure 가 수행되는 Netlink 인터페이스를 통해 재연결 작업을 트리거해야 합니다. 공격 표면은 /dev/nbd* 디바이스와 해당 모듈이 수신하는 Netlink 메시지이며, 이 경로는 기본적으로 로컬 프로세스가 자유롭게 접근할 수 있습니다. EPSS 값이 0.00219 로 매우 낮고 KEV(Known Exploited Vulnerabilities) 리스트에도 등재되지 않았기 때문에 현재까지 광범위한 악용 사례는 보고되지 않았으나, 목표 지향적인 내부 공격이나 공급망 위협에서는 여전히 현실적인 위험으로 간주됩니다. 따라서 난이도는 “Low” 수준이며, 공격 가능성은 제한적이지만 로컬 권한을 가진 사용자가 존재할 경우 이론적으로 이용

💥 영향 분석

UAF가 성공하면 커널 주소 공간을 조작해 권한 상승(Root) 및 전체 시스템 장악이 가능합니다. 특히 로컬 공격자가 NBD 디바이스를 사용할 수 있는 환경(컨테이너, 가상머신, 개발 서버 등)에서 치명적인 보안 위협이 됩니다.

🔗 관련 취약점·체이닝

추정: 동일한 메모리‑코루전 유형(CWE‑416)으로 알려진 커널 UAF 취약점과 결합하면, 권한 상승 루틴이나 커널 스택 오버플로우를 이용한 코드 실행 체인이 구성될 수 있습니다. 또한 NBD와 연계된 netlink 인터페이스를 악용하는 다른 로컬 권한 상승 시나리오(CWE‑732)와도 연계 가능성이 있습니다.

🔎 탐지

  • 로그 위치·필드

    • dmesg 또는 커널 로그(kern.log)에 “nbd”가 포함된 메시지와 함께 netlink: NBD_GENL_DISCONNECT, NBD_GENL_RECONFIGURE 이벤트 기록이 남습니다.
    • UAF 발생 시 커널 OOPS/BUG 트레이스에 recv_work, nbd_config_put 함수명이 연속으로 나타납니다.
  • 탐지 규칙 예시

    1. Netlink 재연결 패턴
text
1source = syslog
2where program == "kernel"
3 and message matches /NBD_GENL_DISCONNECT/
4 and next_message within 5s matches /NBD_GENL_RECONFIGURE/
5alert "Suspicious NBD reconnect after disconnect – possible CVE-2025-21731"
  1. UAF Oops 트레이스
text
1source = dmesg
2where message contains "nbd_config_put"
3 and message contains "recv_work"
4 and level == "alert"
5alert "Kernel OOPS with nbd_config UAF pattern – CVE-2025-21731"
  1. Reference‑count 이상 (SELinux/AppArmor audit 로그)
text
1source = audit
2where msgtype == "CONFIG_CHANGE"
3 and exe == "/sbin/modprobe"
4 and cmdline contains "nbd"
5 and result != "success"
6alert "Failed NBD module operation – monitor for exploit attempts"
  • 오탐 튜닝
    • 정상적인 NBD 재구성(예: 클러스터 관리 툴)에서는 NBD_GENL_RECONFIGUREDISCONNECT 이후에 발생하더라도 짧은 간격(≤1 s) 내에 이루어집니다. 위 규칙의 시간 창을 5 초에서 2 초로 축소하면 오탐을 크게 감소시킬 수 있습니다.
    • 커널 OOPS는 다른 모듈에서도 발생할 수 있으므로 nbd_config_putrecv_work가 동시에 나타나는 경우에만 알림을 제한합니다.

🛡️ 완화 방안

  • 즉시(긴급 차단): NBD 커널 모듈을 즉시 비활성화합니다.
    • 명령: modprobe -r nbd 또는 /etc/modprobe.d/nbd.conf에 `install

⚖️ 위험도 / 우선순위

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

댓글(0)

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

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

로그인하기

불러오는 중…