🇰🇷 한글 설명
Linux 커널의 EDAC/versalnet 드라이버에서 장치 이름 할당 메모리가 해제되지 않는 메모리 누수 취약점이 발견되었습니다. init_one_mc() 함수에서 kzalloc()로 할당된 이름이 장치 등록 후 접근 불가 상태로 남아 정상적인 제거 경로에서도 해제되지 않습니다.
💡 쉬운 설명
시스템 운영 중 필요한 메모리를 반환하지 않아 시간이 지날수록 메모리가 고갈될 수 있는 문제입니다. 이는 시스템의 안정성을 저하시키고 서비스 중단으로 이어질 수 있습니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
EDAC/versalnet: Fix device name memory leak
The device name allocated via kzalloc() in init_one_mc() is assigned to
dev->init_name but never freed on the normal removal path. device_register()
copies init_name and then sets dev->init_name to NULL, so the name pointer
becomes unreachable from the device. Thus leaking memory.
Use a stack-local char array instead of using kzalloc() for name.
📍 영향받는 시스템
Linux kernel (EDAC/versalnet 드라이버가 포함된 모든 버전)
⚔️ 공격 벡터
로컬 시스템에서 장치 제거 및 재등록을 반복하여 메모리 고갈을 유도
🛡️ 대응 방법
Linux 커널을 최신 안정 버전으로 업데이트하여 패치 적용
🔧 검증 코드
출력된 커널 버전이 패치가 적용된 최신 버전인지 확인