[단독분석] 분석 — CVE-2025-21745
CVE-2025-21745 is a local low‑privilege kernel refcount leak in blk‑cgroup that can lead to denial‑of‑service, mitigated by applying the upstream patch or disabling block‑cgroup statistics.
📋 요약
- 심각도 medium · CVSS 5.5 · EPSS 0.00227 · 악용난이도 hard
🔍 공격 기법
- 로컬 프로세스가
blkcg_fill_root_iostats()를 호출하면서class_dev_iter_exit()를 수행하지 않아@block_class서브시스템의 레퍼런스 카운트가 누수됩니다. - 누적된 레퍼런스는 커널 메모리 고갈을 초래해 서비스 중단(DoS)으로 이어질 수 있습니다.
💥 영향 분석
- 기술적 위험: 레퍼런스 카운트 누수 → 커널 메모리 소모 지속 증가 → 최악의 경우 OOM(Out‑of‑Memory) 상황 발생, 시스템 재부팅 필요. CVSS 벡터
AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H가 나타내듯 가용성만 영향을 받습니다. - 비즈니스 리스크:
- 서비스 가용성 저하·중단 → SLA 위반 및 고객 신뢰 손실.
- 운영 중단으로 인한 복구 비용 증가.
- 규제·컴플라이언스 측면에서는 직접적인 데이터 유출이 없으나, 가용성 요구가 높은 환경(예: 금융, 의료)에서 규정 위반 위험이 존재합니다.
- 영향 제품·노출 규모: Linux kernel 5.9‑6.1.129, 6.2‑6.6.78, 6.7‑6.12.14, 6.13‑6.13.3 전 버전(4개 라인)에서 취약점이 존재합니다. 다중 소스 교차검증 결과([교차검증]) “다중 소스에서 일관성이 확인됐다”고 보고되었습니다.
🔗 관련 취약점·체이닝
- 동일한
blk‑cgroup서브시스템에서 메모리 관리와 레퍼런스 카운트를 조작하는 다른 CVE(예: 과거 blk‑cg refcnt 오류)와 연계될 가능성이 있으나, 현재 확인된 직접적인 체이닝 사례는 없습니다.
🔎 탐지
- 커널 로그에
blk-cgroup관련 경고 또는 OOM 발생 시점과class_dev_iter_init호출 빈도 증가가 포착되는 경우. auditd로open/read이벤트를/sys/fs/cgroup/*/io.stat파일에 대한 비정상적인 접근 패턴(특히 낮은 권한 사용자) 감시.- 메모리 사용량 모니터링:
blk_cgroup구조체의 레퍼런스 카운트가 지속적으로 증가하는지 확인 (예:/proc/meminfo와 커스텀 eBPF 스크립트 활용).
🛡️ 완화 방안
- 즉시 조치: 가능한 경우 최신 패치를 적용하여
class_dev_iter_exit()호출을 보완한 커밋을 포함하는 커널 버전(5.9‑6.13.3)으로 업그레이드합니다. - 임시 방어: 블록 cgroup 통계 기능(
io.stat등)의 읽기 권한을 제한하거나, 필요 시blk-cgroup자체를 비활성화하여 공격 표면을 축소합니다(예: 커널 부팅 옵션에cgroup_disable=blkio추가). - 장기 해결: 패치 적용이 불가능한 레거시 시스템은 SELinux/AppArmor 프로파일을 강화해 로컬 저권한 사용자가 해당 cgroup 파일에 접근하지 못하도록 차단하고, 정기적인 커널 메모리·레퍼런스 카운트 모니터링을 운영 절차에 포함합니다.
우선순위 판단: EPSS 0.00227([실측 악용예측])이 낮고, 익스플로잇 난이도가 “hard”이며 KEV 등재가 없으므로 본 보고서는 모니터링 수준(monitor)을 권장합니다([우선순위 결정]). 그러나 가용성에 민감한 환경에서는 패치 적용을 빠르게 진행하는 것이 바람직합니다.
⚖️ 위험도 / 우선순위
- 조치: monitor (모니터링)
- 근거: CVSS=5.5 · non-KEV · EPSS=0.00227 · exploit=hard · in_scope=None