[공격] 분석 — CVE-2024-54458
A Use-After-Free vulnerability in the Linux kernel's UFS SCSI subsystem allows local users to potentially achieve privilege escalation; immediate mitigation involves restricting access to SCSI generic devices.
📋 요약
- 심각도 high · CVSS 7.8 · EPSS 0.00229 · 악용난이도 hard
🔍 공격 기법
(1) 트리거 조건: scsi: ufs: bsg 모듈에서 장치 제거 후 bsg_queue 포인터를 NULL로 초기화하지 않아, 이미 해제된 메모리 영역을 참조하는 Use-After-Free (UAF) 상태가 발생함. 공격자가 적절한 타이밍에 해당 댕글링 포인터를 통해 메모리에 접근할 때 트리거됨.
(2) 공격 단계:
- 정찰: 로컬 시스템의 커널 버전 및 UFS/SCSI 장치 활성화 여부 확인.
- 초기 접근:
PR:L조건에 따라 일반 사용자 권한으로 셸 획득 필요. - 실행 및 권한 획득: 추정: SCSI generic (
sg) 인터페이스를 통해 장치 제거 및 재생성 과정을 반복하며 Heap Spraying을 수행, 해제된bsg_queue영역에 공격자가 제어하는 데이터를 배치하여 커널 함수 포인터를 조작. - 영향: 커널 모드에서 임의 코드 실행(AACE)을 통한 Root 권한 획득.
(3) 공격 표면:/dev/sg*(SCSI generic devices), UFS 관련 커널 드라이버 인터페이스.
(4) CVSS 벡터 연결:AV:L(로컬 접근 필수),AC:L(복잡도 낮음),PR:L(낮은 권한 필요),UI:N(사용자 상호작용 불필요). 즉, 로컬 계정을 가진 공격자가 특수 장치 파일에 접근 가능한 환경이라면 기술적으로 실행 가능함.
악용 가능성: 본 취약점은 Linux kernel의 UFS SCSI 드라이버 내 bsg_queue 객체 제거 후 포인터가 NULL로 초기화되지 않아 발생하는 잠재적 Use-After-Free(UAF) 결함입니다. 공격 벡터(AV:L/PR:L)에 따라 로컬 권한을 가진 사용자가 커널 메모리에 접근해야 하므로 진입 장벽이 높으며, EPSS(0.00229) 및 KEV 미등재 상태는 현재 이 결함을 이용한 실전 무기화 사례가 희박함을 시사합니다. 공격 표면은 /dev/bsg와 같은 SCSI Generic 장치 인터페이스이며, 특정 조건에서 큐 제거 프로세스와 동시성 접근이 맞물려야 트리거됩니다. 다만 AC:L인 만큼 일단 유효한 메모리 주소를 점유할 수 있는 환경이 조성된다면 공격 난이도는 급격히 낮아집니다. 결과적으로 이론적 심각도에 비해 실질적인 악용 가능성은 낮으나, 커널 권한 획득을 위한 메모리 오염 체인의 일환으로 활용될 위험이 존재합니다.
💥 영향 분석
(1) 기술적 위험: Memory-Corruption 유형의 취약점으로, 성공적인 익스플로잇 시 커널 패닉으로 인한 시스템 가용성 상실(DoS) 또는 커널 권한 획득을 통한 완전한 시스템 장악이 가능함.
(2) 비즈니스 영향: 서버 인프라의 Root 권한 탈취 시 데이터 유출 및 변조가 가능하며, 특히 UFS 저장장치를 사용하는 임베디드/클라우드 환경에서 치명적임. 다만, EPSS 0.00229(백분위 0.13905) 수치는 실제 야생에서의 악용 빈도가 매우 낮음을 뜻하며, 이론적 심각도(CVSS 7.8) 대비 실질적 위험도는 낮은 상태임.
🔗 관련 취약점·체이닝
- 체이닝 경로: 추정: [정보 노출] $\rightarrow$ [UAF 트리거] $\rightarrow$ [권한 상승].
- 상세 패턴: 커널 주소 공간 배치 무작위화(KASLR)를 우회하기 위해 다른 정보 유출(Information Leak) 취약점과 체이닝하여 정확한 메모리 주소를 알아낸 뒤, 본 UAF 결함을 이용해 제어 흐름을 가로채는 전형적인 커널 익스플로잇 패턴을 따를 것으로 추정됨.
🔎 탐지
(1) 로그 지표: dmesg 또는 /var/log/kern.log 내의 SCSI 관련 Segmentation fault, General Protection Fault (GPF), 혹은 UFS 드라이버 관련 Panic 로그.
(2) 탐지 규칙 예시:
- Logic 1:
grep -Ei "scsi|ufs|bsg.*use-after-free|null pointer dereference" /var/log/syslog - Logic 2 (SIEM):
event_id=kernel_panic AND message CONTAINS "bsg_queue" - Logic 3:
/dev/sg*장치 파일에 대해 일반 사용자의 비정상적으로 빈번한 open/close 및 ioctl 호출 패턴 모니터링.
(3) 오탐 시나리오: 정상적인 스토리지 유지보수 작업이나 드라이버 업데이트 중 발생하는 일시적 오류. 특정 프로세스(예: 관리 도구)를 화이트리스트에 추가하여 튜닝 필요.
🛡️ 완화 방안
- 즉시 (긴급 차단): 일반 사용자의
/dev/sg*접근 권한 제한 (chmod/udev rule 적용). [난이도: 하 / 영향: 일부 스토리지 진단 도구 작동 불가 / 검증:ls -l /dev/sg*] - 단기 (완화): 불필요한 UFS/SCSI 관련 커널 모듈 언로드. [난이도: 중 / 영향: 해당 저장장치 사용 불가 / 검증:
lsmod | grep ufs] - 근본 (해결): Linux Kernel 업데이트 (6.1.129+, 6.6.79+, 6.12.16+, 6.13.4+ 버전으로 업그레이드). [난이도: 중 / 영향: 시스템 재부팅 필요 / 검증:
uname -r]
※ 본 리포트는 다중 소스 교차검증을 통해 데이터 일관성이 확인되었으며, 실측 EPSS(0.00229)와 규칙 기반 우선순위 결정 논리에 따라 'scheduled' 등급으로 분류됨.
⚖️ 위험도 / 우선순위
- 조치: scheduled (이번 주 내)
- 근거: CVSS=7.8 · non-KEV · EPSS=0.00229 · exploit=hard · in_scope=None