🇰🇷 한글 설명
리눅스 커널의 ALSA PCM OSS 레이어에서 버퍼 초기화 시 발생하는 레이스 컨디션 취약점입니다. 스트림 초기화 과정에서 dma_area에 접근할 때, 해당 메모리가 동시에 해제될 수 있어 Use-After-Free(UAF)가 발생할 수 있습니다.
💡 쉬운 설명
소리 데이터를 처리하는 과정에서 메모리를 사용하는 도중, 다른 작업이 해당 메모리를 먼저 지워버려 시스템 오류나 보안 문제가 생길 수 있는 결함입니다. 이를 방지하기 위해 메모리 접근 시 잠금 장치를 강화하여 수정되었습니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
ALSA: pcm: Fix race of buffer access at PCM OSS layer
The PCM OSS layer tries to clear the buffer with the silence data at
initialization (or reconfiguration) of a stream with the explicit call
of snd_pcm_format_set_silence() with runtime->dma_area. But this may
lead to a UAF because the accessed runtime->dma_area might be freed
concurrently, as it's performed outside the PCM ops.
For avoiding it, move the code into the PCM core and perform it inside
the buffer access lock, so that it won't be changed during the
operation.
📍 영향받는 시스템
ALSA(Advanced Linux Sound Architecture)를 사용하는 리눅스 커널 버전
⚔️ 공격 벡터
특정 조건에서 사운드 스트림을 초기화하거나 재설정할 때 발생하는 레이스 컨디션을 이용한 메모리 접근
🛡️ 대응 방법
ALSA PCM 코어 내부로 버퍼 초기화 로직을 이동시키고 버퍼 접근 잠금(lock)을 적용한 최신 커널로 업데이트
🔧 검증 코드
출력된 커널 버전이 해당 취약점이 패치된 최신 보안 업데이트 버전인지 확인