[방어] 분석 — CVE-2025-71191
A device leak vulnerability in the Linux kernel's
at_hdmacdriver (CVE-2025-71191) can lead to system resource exhaustion, requiring monitoring and eventual kernel patching.
📋 요약
- 심각도 medium · CVSS 5.5 · EPSS 0.00183 · 악용난이도 hard
🔍 공격 기법
(1) 트리거 조건: of_dma_xlate() 함수가 호출되어 DMA 플랫폼 장치를 조회할 때 참조 횟수(reference count)가 증가하지만, 채널 리소스 해제 시 put_device()가 호출되지 않아 메모리/장치 객체가 누수되는 결함을 이용합니다.
(2) 공격 단계:
- 정찰 및 초기 접근: 로컬 시스템에 대한 낮은 권한(Low Privilege)의 사용자 계정 확보 (전제조건:
PR:L). - 실행: DMA 채널 할당 및 해제를 반복적으로 유도하는 특정 드라이버 인터페이스 호출.
- 영향: 커널 내 장치 객체가 해제되지 않고 누적되어 시스템 자원 고갈 유발.
(3) 공격 표면: Linux Kerneldmaengine모듈의at_hdmac드라이버 관련 시스템 콜 및 디바이스 노드.
(4) CVSS 벡터 연결:AV:L(로컬 접근 필요),AC:L(공격 복잡도 낮음),PR:L(낮은 권한 필요),UI:N(사용자 개입 불필요). 즉, 이미 시스템에 진입한 공격자가 권한 상승보다는 가용성 저해를 목적으로 수행하는 시나리오입니다.
악용 가능성: 본 취약점의 공격 난이도는 Hard로 평가됩니다. CVSS 벡터 상 AV:L 및 PR:L 조건으로 인해, 공격자는 이미 시스템 내부에 낮은 권한의 계정(Low Privilege)을 확보하여 로컬 셸에 접근할 수 있는 전제조건이 필요합니다. 공격 표면은 Linux 커널의 dmaengine 서브시스템 내 at_hdmac 드라이버이며, 구체적으로는 DMA 채널 리소스를 할당 및 해제하는 of_dma_xlate() 함수와 관련 파라미터가 트리거 지점이 됩니다. 다만, EPSS 수치가 0.00183으로 매우 낮고 KEV에 등재되지 않은 점은 현재까지 이 취약점을 이용한 실제 공격 사례나 공개된 자동화 도구가 희소함을 의미합니다. 결과적으로 이론적인 심각도보다는 리소스 누수(Device Leak)를 통한 가용성 저하 가능성이 핵심이며, 로컬 접근 권한이 없는 외부 공격자가 직접적으로 악용하기에는 진입 장벽이 매우 높습니다.
💥 영향 분석
(1) 기술적 위험: 장치 누수(Device Leak)로 인한 커널 메모리 점유율 증가 및 최종적인 시스템 응답 불능(Denial of Service, A:H) 상태 초래.
(2) 비즈니스 영향: 서버 가용성 저하로 인한 서비스 중단. 다만, 로컬 권한이 필요하고 기밀성/무결성에 영향이 없으므로 데이터 유출 위험은 낮습니다.
🔗 관련 취약점·체이닝
- 추정: 단일 결함으로는 DoS에 그치지만, 커널 메모리 구조의 불균형을 유도하여 다른 Use-After-Free(UAF) 또는 Heap Overflow 취약점과 체이닝될 경우 권한 상승(LPE)으로 이어질 가능성이 있습니다. (패턴: 자원 누수 $\rightarrow$ 메모리 레이아웃 조작 $\rightarrow$ 권한 상승)
🔎 탐지
(1) 로그 지표: /proc/slabinfo 또는 kmemleak 로그에서 at_hdmac 관련 객체가 비정상적으로 증가하는 패턴.
(2) 탐지 규칙 예시:
- 로직 1 (자원 모니터링):
Slab메모리 중 DMA 관련 캐시 크기가 임계값 이상으로 지속 상승하며 해제되지 않는 경우. - 로직 2 (시스템 로그):
dmesg또는/var/log/syslog에서 DMA 채널 할당 실패 및 OOM(Out of Memory) Killer 작동 징후 탐지.grep -Ei "out of memory|oom-killer|dmaengine" /var/log/messages
- 로직 3 (SIEM 의사코드):
SELECT host FROM kernel_logs WHERE message MATCHES '.*at_hdmac.*' AND event_type = 'resource_allocation' GROUP BY host HAVING count(*) > [Threshold] WITHIN 1h
(3) 오탐 튜닝: 정상적인 고부하 DMA 작업 수행 애플리케이션이 있는지 확인하고, 베이스라인 대비 급격한 증가세가 나타나는지 추세를 분석하여 임계값을 설정합니다.
🛡️ 완화 방안
- 즉시(긴급 차단): 취약한 드라이버(
at_hdmac)를 사용하지 않는 환경이라면 해당 모듈의 로드를 차단합니다. (예:/etc/modprobe.d/blacklist.conf에blacklist at_hdmac추가)- 난이도: 낮음 / 영향: 해당 하드웨어 기능 사용 불가 / 검증:
lsmod | grep at_hdmac결과 없음 확인 / 우선순위: 높음
- 난이도: 낮음 / 영향: 해당 하드웨어 기능 사용 불가 / 검증:
- 단기(완화): 시스템 모니터링 주기 단축 및 OOM 발생 시 자동 재시작 스크립트 적용, 불필요한 로컬 사용자 계정의 권한 제한.
- 난이도: 보통 / 영향: 운영 공수 증가 / 검증: 모니터링 알람 작동 확인 / 우선순위: 보통
- 근본(해결): 영향받는 커널 버전(3.10.1 ~ 6.18.7 등 범위 내)에서
put_device()호출이 추가된 최신 패치 버전으로 업데이트.- 난이도: 높음 (커널 업데이트 및 재부팅 필요) / 영향: 서비스 일시 중단 / 검증:
uname -r버전 확인 / 우선순위: 필수
- 난이도: 높음 (커널 업데이트 및 재부팅 필요) / 영향: 서비스 일시 중단 / 검증:
[분석 근거] 본 리포트는 다중 소스 데이터의 일관성이 확인된 교차검증 결과를 바탕으로 작성되었습니다. 실측 EPSS 값은 0.00183(백분위 0.08079)으로 매우 낮으며, 이는 실제 야생에서의 악용 가능성이 현재로서는 극히 희박함을 의미합니다. 따라서 CVSS 점수(5.5)와 AV:L 조건, KEV 미등재 상태를 종합하여 규칙 기반 우선순위를 'monitor'로 결정하였습니다.
⚖️ 위험도 / 우선순위
- 조치: monitor (모니터링)
- 근거: CVSS=5.5 · non-KEV · EPSS=0.00183 · exploit=hard · in_scope=None