🇰🇷 한글 설명
Linux 커널의 ALSA 코어에서 비동기식 사운드 카드 해제 시 발생할 수 있는 Use-After-Free(UAF) 취약점이 해결되었습니다. USB 오디오 드라이버와 같이 snd_card_free_when_closed()를 사용하는 경우, 연결 해제 후에도 진행 중인 작업이 장치 객체에 접근하여 메모리 오류를 유발할 수 있었습니다.
💡 쉬운 설명
사운드 카드가 연결 해제된 후에도 컴퓨터가 해당 장치를 사용하려고 시도하여 시스템 오류나 보안 문제가 발생할 수 있는 결함입니다. 이를 해결하기 위해 장치가 완전히 꺼질 때까지 메모리를 안전하게 유지하도록 수정되었습니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
ALSA: core: Fix potential UAF after asynchronous card release
Usually a sound driver releases the resources assigned to the card via
snd_card_free(), and it synchronizes with the whole release procedure.
However, when the card is released asynchronously via
snd_card_free_when_closed() like USB-audio driver, the situation is
slightly different; although the snd_card_disconnect() call at the
disconnection guarantees that any newer accesses will be gated, the
in-flight tasks might be still accessing to the underlying card->dev
device even after the disconnection, which would cause a
use-after-free in the end, as reported by fuzzers.
For addressing the bug above, this patch takes the refcount of
card->dev at initialization of the card object, and releases at its
destructor. This assures the availability of the card->dev in its
whole lifecycle.
📍 영향받는 시스템
Linux Kernel (ALSA subsystem 사용 시스템)
⚔️ 공격 벡터
USB 오디오 장치의 비정상적인 연결/해제 반복을 통한 메모리 오염 유도
🛡️ 대응 방법
최신 보안 패치가 적용된 Linux 커널로 업데이트
🔧 검증 코드
출력된 커널 버전이 해당 취약점이 수정된 패치 버전 이후인지 확인
💻 영향받는 소프트웨어
NVIDIA Cloud Gaming Guest Driver for Linux