🇰🇷 한글 설명
Linux 커널의 ENA(Elastic Network Adapter) 드라이버 초기화 함수 ena_init()에서, pci_register_driver()가 실패했을 때 create_singlethread_workqueue()로 만든 워크큐를 해제하지 않아 리소스 누수가 발생하는 문제입니다. 실패 시 destroy_workqueue()를 호출하도록 수정되었습니다.
💡 쉬운 설명
드라이버를 등록하는 과정이 실패했을 때 미리 만들어 둔 작업 공간을 정리하지 않아 메모리 같은 자원이 조금씩 새어 나가는 문제입니다. 공격자가 직접 악용하기보다는 시스템 안정성에 영향을 주는 결함입니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
net: ena: Fix error handling in ena_init()
The ena_init() won't destroy workqueue created by
create_singlethread_workqueue() when pci_register_driver() failed.
Call destroy_workqueue() when pci_register_driver() failed to prevent the
resource leak.
📍 영향받는 시스템
ENA 네트워크 드라이버를 포함한 수정 이전의 Linux 커널 버전 (AWS EC2 등 ENA 장치 사용 환경)
⚔️ 공격 벡터
로컬 공격자가 직접 악용하는 경로는 명확하지 않으며, 드라이버 초기화 실패 상황에서 리소스 누수가 누적되는 형태입니다.
🛡️ 대응 방법
커널을 해당 취약점이 수정된 최신 안정 버전으로 업데이트하거나, 배포판 보안 업데이트를 적용하세요.
🔧 검증 코드
출력된 커널 버전이 배포판의 수정 버전 이상인지 확인하고, ena 모듈 정보로 드라이버 존재 여부와 버전을 대조하세요. 모듈이 없으면 해당 드라이버 영향이 없습니다.
uname -r && (modinfo ena 2>/dev/null | grep -E '^(version|filename|vermagic)')