🔍 CVE-2025-38369

7.8
CVSS Score
HIGH
2025-07-25
2026-11-05 21:18
✅ 완료

🇰🇷 한글 설명

Linux 커널의 IDXD 드라이버에서, 컨테이너에 /dev 디렉터리가 마운트된 상태로 IDXD 작업을 실행하고 컨테이너의 부모 프로세스가 종료되면 콜 트레이스 또는 커널 패닉이 발생할 수 있습니다. 사용자 드라이버가 분리될 때 워크큐(WQ)가 이미 파괴되었는데도 destroy_workqueue()를 호출하는 것이 원인이며, 해당 드라이버는 wq->wq 존재 여부를 확인하고 없으면 drain을 건너뛰도록 수정되었습니다.

💡 쉬운 설명

컨테이너를 사용하는 환경에서 특정 조건에 놓이면 리눅스 시스템이 갑자기 멈추거나 오류 화면을 띄울 수 있습니다. 이는 이미 사라진 작업 공간을 다시 정리하려다 생기는 문제이며, 커널 업데이트로 해결됩니다.

🇺🇸 원문 (English)

In the Linux kernel, the following vulnerability has been resolved: dmaengine: idxd: Check availability of workqueue allocated by idxd wq driver before using Running IDXD workloads in a container with the /dev directory mounted can trigger a call trace or even a kernel panic when the parent process of the container is terminated. This issue occurs because, under certain configurations, Docker does not properly propagate the mount replica back to the original mount point. In this case, when the user driver detaches, the WQ is destroyed but it still calls destroy_workqueue() attempting to completes all pending work. It's necessary to check wq->wq and skip the drain if it no longer exists.

📍 영향받는 시스템

IDXD 드라이버를 포함하는 Linux 커널 (수정 커밋 적용 이전 버전, 주로 Intel DSA/IAA 가속기를 사용하는 서버)

⚔️ 공격 벡터

공격자가 직접 악용하기보다는 컨테이너 환경에서 IDXD 워크로드 실행 중 부모 프로세스가 종료되면서 발생하는 서비스 거부(커널 패닉) 형태로 나타남

🛡️ 대응 방법

배포판 제공 최신 Linux 커널 패키지로 업데이트하고 재부팅하여 수정 패치가 적용된 커널을 사용

🔧 검증 코드

출력된 커널 버전을 배포판의 보안 권고에서 확인된 패치 버전과 비교하고, IDXD 모듈이 로드되어 있거나 dsa 장치가 존재할 때만 해당 시스템이 영향을 받는 것으로 판단하며, 모듈이 없으면 취약 경로가 활성화되지 않은 것입니다.

Shell / Script
uname -r; grep -i idxd /proc/modules 2>/dev/null; ls /sys/bus/dsa/devices 2>/dev/null | head -n 5

📊 CVSS Vector String

CVSS Vector
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H

💻 영향받는 소프트웨어

Docker Linux Kernel