🔍 CVE-2025-38706

5.5
CVSS Score
MEDIUM
2025-09-04
2026-11-05 22:17
✅ 완료

🇰🇷 한글 설명

Linux 커널의 ASoC(ALSA System on Chip) 코어에서 snd_soc_remove_pcm_runtime() 함수가 NULL 포인터 확인 없이 호출되어 시스템 패닉을 유발할 수 있는 취약점입니다. 토폴로지 로딩 중 하드웨어 컴포넌트 누락으로 인해 링크가 무시되고 runtime이 생성되지 않은 상태에서 모듈 제거 시 NULL 포인터 역참조가 발생합니다.

💡 쉬운 설명

Linux 시스템이 특정 오디오 하드웨어를 인식하지 못할 때, 드라이버 제거 중 프로그램이 존재하지 않는 메모리를 접근하려고 하면서 시스템이 먹통이 될 수 있습니다. 로컬 사용자가 의도적으로 트리거할 수 있는 문제입니다.

🇺🇸 원문 (English)

In the Linux kernel, the following vulnerability has been resolved: ASoC: core: Check for rtd == NULL in snd_soc_remove_pcm_runtime() snd_soc_remove_pcm_runtime() might be called with rtd == NULL which will leads to null pointer dereference. This was reproduced with topology loading and marking a link as ignore due to missing hardware component on the system. On module removal the soc_tplg_remove_link() would call snd_soc_remove_pcm_runtime() with rtd == NULL since the link was ignored, no runtime was created.

📍 영향받는 시스템

Linux kernel ASoC 코어 (모듈 언로드 기능이 있는 모든 버전)

⚔️ 공격 벡터

로컬 공격자가 토폴로지 설정으로 오디오 링크를 무시하도록 설정한 후 커널 모듈을 언로드할 때 NULL 포인터 역참조 트리거

🛡️ 대응 방법

snd_soc_remove_pcm_runtime()에서 rtd == NULL 체크 추가 (커널 패치 적용)

🔧 검증 코드

ASoC 모듈이 로드되어 있으면 커널 버전을 확인하고, CVE 패치 여부는 kernel source 확인 또는 'uname -r' 출력과 배포판 보안 공지를 비교하여 확인합니다.

Shell / Script
grep -r 'snd_soc_remove_pcm_runtime' /lib/modules/$(uname -r)/kernel/sound/ 2>/dev/null && echo 'ASoC module present' || echo 'Not vulnerable or module not loaded'

📊 CVSS Vector String

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

💻 영향받는 소프트웨어

Linux Kernel