🇰🇷 한글 설명
Linux 커널의 ALSA ctxfi 드라이버에서, DAO 입력 매퍼를 정리할 때 할당된 메모리 배열을 해제하지 않아 dao_clear_input() 호출마다 메모리가 누수되는 취약점입니다. 커밋 e576e7843c0d 이후 kfree() 호출이 누락되었으며, 수정은 목록에서 항목을 제거한 뒤 기본 포인터를 저장해 두었다가 배열을 해제하는 방식입니다.
💡 쉬운 설명
사운드 카드 드라이버가 사용을 마친 메모리를 반환하지 않아, 오디오 기능을 쓸 때마다 시스템 메모리가 조금씩 낭비됩니다. 장기간 가동되는 시스템에서는 메모리 부족이나 성능 저하를 일으킬 수 있습니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
ALSA: ctxfi: Fix memory leakage when clearing DAO input mappers
Commit e576e7843c0d ("ALSA: ctxfi: Simplify dao_clear_{left,right}_input() functions")
centralized the DAO input mapper clearing logic in
dao_clear_input(), but omitted the kfree() calls.
It removes the mapper entries from the list and sets their pointers
to NULL without freeing the allocated array. This leaks memory each
time dao_clear_input() is called.
Store the base pointer of the allocation before clearing the mapper
entries and free the array after removing entries from the list.
📍 영향받는 시스템
ALSA ctxfi(Creative X-Fi) 사운드 드라이버를 사용하는 수정 이전의 Linux 커널 버전
⚔️ 공격 벡터
원격 공격보다는 드라이버 기능이 반복 호출되는 상황에서 메모리가 누적되는 결함이며, 지속적인 리소스 소모(서비스 거부 유사 영향)를 유발할 수 있음
🛡️ 대응 방법
커널을 해당 취약점 수정이 포함된 최신 안정 버전으로 업데이트하거나 배포판 보안 패치를 적용
🔧 검증 코드
커널 버전을 확인해 수정 패치가 포함된 최신 버전인지 비교하고, ctxfi 모듈이 로드되어 있으면 해당 드라이버가 활성 상태이므로 패치 적용이 필요합니다. 출력이 없으면 모듈이 로드되지 않은 것입니다.
uname -r && grep -i ctxfi /proc/modules 2>/dev/null