🇰🇷 한글 설명
리눅스 커널의 mmc: atmel-mci 드라이버에서 mmc_add_host() 함수의 반환값을 확인하지 않는 문제가 해결되었습니다. 이 함수가 실패해도 무시하면 할당된 메모리가 누수되고, remove() 경로에서 아직 등록되지 않은 장치를 삭제하려다 커널 null 포인터 역참조로 크래시가 발생할 수 있습니다. 반환값을 검사하고 오류 시 mmc_free_host()를 호출하도록 수정되었습니다.
💡 쉬운 설명
메모리 카드 장치를 등록하는 과정에서 실패를 제대로 확인하지 않아 메모리 낭비와 시스템 다운이 생길 수 있었습니다. 이제 실패를 감지하고 할당된 자원을 정리하도록 고쳐졌습니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
mmc: atmel-mci: fix return value check of mmc_add_host()
mmc_add_host() may return error, if we ignore its return value,
it will lead two issues:
1. The memory that allocated in mmc_alloc_host() is leaked.
2. In the remove() path, mmc_remove_host() will be called to
delete device, but it's not added yet, it will lead a kernel
crash because of null-ptr-deref in device_del().
So fix this by checking the return value and calling mmc_free_host()
in the error path.
📍 영향받는 시스템
Atmel MCI(MMC/SD 호스트 컨트롤러)를 사용하는 임베디드 리눅스 시스템의 수정 이전 커널 버전
⚔️ 공격 벡터
원격 공격 경로는 명확하지 않으며, 장치 등록 실패 상황에서 발생하는 로컬 안정성(메모리 누수, 커널 크래시) 문제입니다.
🛡️ 대응 방법
리눅스 커널을 해당 수정이 포함된 안정 버전으로 업데이트하십시오.
🔧 검증 코드
출력된 커널 버전을 배포판의 보안 공지나 커널 changelog와 비교해 수정 포함 여부를 확인하고, atmel_mci 모듈이 로드되어 있지 않다면 이 취약점의 영향을 받지 않습니다.
uname -r && grep -i atmel_mci /proc/modules 2>/dev/null