🇰🇷 한글 설명
Linux 커널의 ipw2200 무선 드라이버에서 ipw_wdev_init() 함수의 오류 처리 경로에 메모리 누수가 있습니다. 함수 내에서 할당한 메모리가 오류 반환 시 해제되지 않으며, ipw_pci_probe()에서도 마찬가지로 해제되지 않습니다. 이로 인해 메모리 누수가 발생하며 오류 경로에 메모리 해제 코드를 추가해야 합니다.
💡 쉬운 설명
오래된 인텔 무선랜 드라이버가 초기화에 실패할 때 사용하던 메모리를 반납하지 않습니다. 이 때문에 시스템 메모리가 조금씩 낭비될 수 있습니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
wifi: ipw2200: fix memory leak in ipw_wdev_init()
In the error path of ipw_wdev_init(), exception value is returned, and
the memory applied for in the function is not released. Also the memory
is not released in ipw_pci_probe(). As a result, memory leakage occurs.
So memory release needs to be added to the error path of ipw_wdev_init().
📍 영향받는 시스템
ipw2200 무선 드라이버를 포함한 Linux 커널 (수정 커밋 적용 이전 버전)
⚔️ 공격 벡터
원격 공격보다는 드라이버 초기화 실패 상황에서 발생하는 메모리 누수로, 반복적인 실패 유발 시 서비스 거부(자원 고갈) 가능성이 있음
🛡️ 대응 방법
Linux 커널을 해당 취약점이 수정된 최신 안정 버전으로 업데이트하거나 배포판의 보안 업데이트를 적용
🔧 검증 코드
커널 버전을 확인하고 ipw2200 모듈이 로드되어 있지 않으면 이 취약점의 영향을 받지 않으며, 로드되어 있다면 배포판의 보안 공지에서 해당 커널 버전의 패치 적용 여부를 확인해야 합니다.
uname -r && (lsmod | grep -i ipw2200 || echo 'ipw2200 module not loaded')