[분석가] 분석 — CVE-2024-53170
A Memory-Corruption (Use-After-Free) vulnerability in the Linux kernel block layer allows local attackers to cause system crashes or potentially escalate privileges, requiring a kernel update to patched versions.
📋 요약
- 심각도 high · CVSS 7.8 · EPSS 0.0024 · 악용난이도 hard
🔍 공격 기법
(1) 트리거 조건: del_gendisk 과정에서 QUEUE_FLAG_INIT_DONE 플래그가 해제되면서, 이후 호출되는 blk_mq_destroy_queue()가 tags->rqs[] 내의 flush request를 적절히 정리하지 못할 때 발생합니다.
(2) 공격 단계:
- 정찰 및 준비: 로컬 시스템 접근 권한 획득 (PR:L).
- 트리거 실행: SCSI 장치 등 특정 블록 장치의 제거/재구성 프로세스를 유도하여
del_gendisk$\rightarrow$blk_mq_destroy_queue경로를 타게 함. - 메모리 오염: 해제된 메모리 영역을 참조하는 Use-After-Free(UAF) 상태 유발.
- 영향 행사: 커널 패닉으로 인한 시스템 중단 또는 추정: 정교하게 조작된 메모리 레이아웃을 통해 권한 상승 시도.
(3) 공격 표면: Linux 커널의 Block Layer (특히 SCSI probe 및 queue 관리 로직).
(4) CVSS 벡터 분석:AV:L/AC:L/PR:L/UI:N에 따라, 네트워크 외부가 아닌 시스템에 로그인한 낮은 권한의 사용자(PR:L)가 특별한 사용자 상호작용 없이(UI:N) 낮은 복잡도(AC:L)로 로컬에서 실행 가능합니다.
악용 가능성: 본 취약점은 Linux kernel의 block layer에서 발생하는 Use-After-Free(UAF)로, 공격 난이도는 Hard로 평가됩니다. CVSS 벡터 상 AV:L 및 PR:L 조건에 따라, 공격자는 시스템에 이미 로그인한 권한을 가진 사용자여야 하며 로컬 환경에서 커널 메모리에 접근할 수 있는 전제조건이 필요합니다. 공격 표면은 SCSI 장치 프로빙(probing) 및 제거(del_gendisk) 과정 중 blk_mq_destroy_queue가 호출되는 시점의 태그 맵핑 처리 미비에 집중되어 있습니다. 특히 QUEUE_FLAG_INIT_DONE 플래그 상태에 따라 blk_mq_clear_flush_rq_mapping()이 누락되면서 발생하는 메모리 오염을 트리거해야 하므로 정밀한 타이밍 제어가 요구됩니다. EPSS 수치가 0.0024로 매우 낮고 KEV(Known Exploited Vulnerabilities)에 등재되지 않은 점은, 이론적인 심각도와 달리 실제 야생(In-the-wild)에서 악용된 사례가 거의 없음을 시사합니다. 결과적으로 로컬 권한을 가진 공격자가 커널 패닉이나 권한 상승을 유도할 가능성은 존재하나, 트리거 조건의 복잡성으로 인해 실질적인 악용 가능성은 낮은 수준입니다.
💥 영향 분석
(1) 기술적 위험:
- Memory-Corruption으로 인한 커널 패닉 및 시스템 가용성 상실 (DoS).
- 추정: UAF 취약점의 특성상, 메모리 내 객체 재배치를 통해 임의 코드 실행 또는 권한 상승(LPE) 가능성이 존재합니다.
(2) 비즈니스 영향: - 영향 제품이 Linux Kernel 5.19
6.11.11 및 6.126.12.2로 광범위하여, 해당 버전을 사용하는 서버 및 인프라의 가용성 리스크가 높습니다. - 시스템 크래시 발생 시 서비스 중단으로 인한 비즈니스 연속성 저해 및 운영 신뢰도 하락이 예상됩니다.
🔗 관련 취약점·체이닝
- 유형: Memory-Corruption (CWE-416: Use-After-Free).
- 체이닝 패턴: 추정: 커널 주소 공간 배치 난독화(KASLR)를 우회하는 '정보 유출(Information Leak)' 취약점과 체이닝될 경우, UAF를 통한 권한 상승 공격의 성공률과 정밀도가 비약적으로 상승하는 전형적인 커널 익스플로잇 패턴을 따를 수 있습니다.
🔎 탐지
(1) 로그 지표: 커널 로그(dmesg, /var/log/syslog) 내 KASAN 리포트 또는 BUG: KASAN: slab-use-after-free in blk_mq_find_and_get_req 문자열 확인.
(2) 탐지 규칙 예시:
- SIEM 로직:
source=kernel_log AND message CONTAINS "slab-use-after-free" AND message CONTAINS "blk_mq_find_and_get_req" - 정규식 패턴:
/BUG: KASAN: slab-use-after-free in blk_mq_find_and_get_req\+0x[0-9a-f]+/
(3) 오탐 시나리오 및 튜닝: 하드웨어 결함이나 다른 드라이버의 메모리 오류로 인해 유사한 UAF 로그가 발생할 수 있습니다.blk_mq_find_and_get_req함수 호출 스택이 명시적으로 포함된 경우만 CVE-2024-53170 관련 징후로 판단하여 정밀도를 높입니다.
🛡️ 완화 방안
- 즉시(긴급 차단): 불필요한 SCSI 장치의 동적 제거/추가 작업 제한 및 신뢰할 수 없는 사용자의 커널 모듈 로드/장치 조작 권한 제한. (난이도: 하 / 영향: 낮음 / 검증: 권한 설정 확인)
- 단기(완화): KASAN 등 메모리 디버깅 도구가 활성화된 환경에서는 취약점 노출 시 즉시 감지가 가능하므로 모니터링 강화. (난이도: 중 / 영향: 성능 저하 가능성 / 검증: 커널 로그 모니터링)
- 근본(해결): Linux Kernel을 패치된 최신 버전으로 업데이트. (영향 제품 범위 외의 상위 버전 또는 해당 픽스가 적용된 메인라인 커널로 업그레이드). (난이도: 중 / 영향: 재부팅 필요 / 검증:
uname -r및 패치 내역 확인)
[분석 근거] 본 리포트는 다중 소스 교차검증을 통해 데이터 일관성이 확인되었으며, 실측 EPSS(0.0024, 백분위 0.15268)가 매우 낮고 KEV에 등재되지 않았으며 악용 난이도가 'hard'인 점을 근거로 우선순위를 scheduled(이번 주 내)로 결정하였습니다. 이는 이론적 심각도(CVSS 7.8)보다 실제 야생에서의 악용 가능성이 현재로서는 매우 낮음을 반영한 규칙 기반 판단입니다.
⚖️ 위험도 / 우선순위
- 조치: scheduled (이번 주 내)
- 근거: CVSS=7.8 · non-KEV · EPSS=0.0024 · exploit=hard · in_scope=None