Kestrel
CVE-2025-71075DGX_B· 2026년 8월 1일 AM 02:37

[방어] 분석 — CVE-2025-71075

CVE-2025-71075 is a local use‑after‑free in the Linux scsi:aic94xx driver that can be triggered by hot‑unplug or module unload, and the highest‑priority immediate mitigation is to disable the aic94xx driver until patched.

📋 요약

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

🔍 공격 기법

asd_pci_remove() 함수가 디바이스 제거 시 호출되면서 아직 실행 중인 tasklet이 완료되지 않은 상태에서 asd_ha 구조체를 free 합니다. 로컬 사용자는 hot‑unplug 이벤트를 발생시키거나 rmmod aic94xx 로 모듈을 언로드함으로써 레이스 컨디션을 유발하고, 해제된 메모리를 재사용하도록 조작해 커널 권한 상승(루트) 또는 시스템 크래시를 초래할 수 있습니다.

악용 가능성: 이 취약점은 AV:L(로컬)·AC:L(낮은 복잡도)·PR:L(저 privileges)·UI:N(사용자 개입 없음)이라는 CVSS 벡터에 따라, 로컬 시스템에 접근할 수 있는 공격자는 별다른 사전 준비 없이도 exploit을 시도할 수 있습니다. 실제로는 asd_ha 구조체가 tasklet_kill() 없이 해제되면서 남아있는 tasklet이 자유 메모리를 참조하게 되므로, 해당 메모리 영역을 재사용해 임의 코드를 실행하거나 권한 상승을 달성할 가능성이 존재합니다. 그러나 EPSS = 0.00126이라는 매우 낮은 실측값과 KEV 미등재는 현재까지 악용 사례가 거의 없으며, 공격자가 실제로 이를 이용해 성공할 확률이 제한적임을 시사합니다. 공격 표면은 aic94xx SCSI 드라이버와 관련된 엔드포인트(PCI 디바이스 제거 경로)이며, hot‑unplug 혹은 모듈 언로드와 같은 시스템 콜/IOCTL 호출이 트리거 조건이 됩니다. 따라서 exploit을 수행하려면 로컬에서 해당 디바이스를 제거할 수 있는 권한(Linux CAP_SYS_ADMIN 수준 이상)이 필요합니다. 이러한 전제조건이 충족될 경우, use‑after‑free 상황을 이용해 커널 메모리를 조작하여 권한 상승 또는 서비스 거부(DoS)를 유발할 수 있습니다. 결국 이 취약점은 로컬 공격자에게는 난이도가 낮지만, 실제 악용 가능성은 EPSS와 KEV 등재 여부가 보여주듯

💥 영향 분석

  • 성공적인 이용 시 공격자는 커널 모드 코드 실행이 가능해져 루트 권한을 획득합니다.
  • 시스템 전체가 불안정해지며, OOPS/Kernel panic 발생으로 서비스 중단(DoS) 위험도 존재합니다.

🔗 관련 취약점·체이닝

  • 동일한 메모리 해제 타이밍 오류를 이용하는 다른 Linux SCSI 드라이버 취약점(CWE‑416).
  • 권한 상승을 위한 로컬 커널 익스플로잇 체인에 조합될 경우, CAP_SYS_ADMIN 획득 후 컨테이너 탈출·루트킷 설치 등으로 확장될 수 있습니다.

🔎 탐지

  1. 로그 지표

    • /var/log/kern.log, dmesg 등에 기록되는 OOPS 메시지 중 use after free 혹은 BUG: kernel NULL pointer dereference와 함께 함수명 asd_pci_remove가 포함된 항목.
    • auditd 이벤트 ID 1300 (module unload) 와 동시에 발생하는 sched_tasklet 관련 syscalls(tasklet_schedule, tasklet_kill) 로그.
  2. SIEM 탐지 규칙 예시

#소스/필드조건임계값/패턴
1message (kernel)contains "asd_pci_remove" AND ("use after free" OR "BUG:")발생 즉시 알림
2audit.logtype=1300 (module unload) AND subsequent type=1306 (tasklet_schedule) within 5 s연관 이벤트 존재 시 경고
3dmesgmessage contains regex /\b(asd_ha).*free\b/정규식 매칭 시 알림

정규식 예시: /(?i)asd_ha.*(free|released)/

  1. 오탐 튜닝
    • 정상적인 모듈 언로드 후 바로 발생하는 tasklet_kill 로그는 무시하도록 “module name != aic94xx” 조건을 추가합니다.
    • 커널 디버그 레벨이 높아 OOPS가 빈번히 기록되는 개발 환경에서는 “severity = high” 필터를 적용해 실제 crash와 구분합니다.

🛡️ 완화 방안

  • 핫플러그 이벤트 차단: sysfs 경로 /sys/bus/scsi/devices/*/remove 에 대한 쓰기 권한을 제한하거나, udev 규칙으로 ACTION=="remove", SUBSYSTEM=="scsi", ATTR{vendor}=="AIC94XX", RUN+="/bin/true" 설정.
    구현 난이도: 중간 → udev 재로드 필요, 일부 스토리지 관리 작업에 제한 발생 가능.
    검증 방법: udevadm test /sys/bus/scsi/devices/... 로 규칙 적용 여부 확인.

  • 모듈 언로드 감시 및 차단: auditd 룰 추가 (-a always,exit -F arch=b64 -S delete_module -F name=aic94xx -k block_aic94xx_unload)와 함께 PAM 제한으로 일반 사용자에게 rmmod aic94xx 실행을 금지.
    구현 난이도: 중간 → 정책 적용 후 로그 확인 필요, 운영자 권한 요구.

⚖️ 위험도 / 우선순위

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

댓글(0)

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

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

로그인하기

불러오는 중…