🇰🇷 한글 설명
Linux 커널의 RDMA/cxgb4 드라이버에서 RDMA 장치 등록 실패 시 debugfs 디렉토리가 제대로 해제되지 않는 메모리 누수 취약점이 발견되었습니다. c4iw_dealloc() 함수가 debugfs를 제거하지 않고 호출되어, 장치 등록 실패 시 debugfs 엔트리가 해제된 메모리 위에 남게 됩니다.
💡 쉬운 설명
장치를 연결하려다 실패했을 때, 사용하던 임시 폴더를 지우지 않고 그대로 남겨두는 버그입니다. 이로 인해 시스템 메모리가 조금씩 낭비되는 현상이 발생할 수 있습니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
RDMA/cxgb4: Free debugfs on registration failure
c4iw_alloc() creates the per-device debugfs tree (dev->debugfs_root via
setup_debugfs()), but it is removed only in c4iw_remove(), not in
c4iw_dealloc(). When RDMA device registration fails, the registration
worker's err_dealloc_ctx path calls c4iw_dealloc() directly, bypassing
c4iw_remove(), so the debugfs dentries leak and outlive the freed
c4iw_dev.
Move debugfs_remove_recursive() into c4iw_dealloc() so every path that
frees ctx->dev also removes its debugfs tree.
📍 영향받는 시스템
Linux kernel (RDMA/cxgb4 driver component)
⚔️ 공격 벡터
로컬 공격자가 RDMA 장치 등록 실패를 반복 유도하여 메모리 누수를 일으킬 수 있음
🛡️ 대응 방법
Linux 커널을 최신 보안 패치가 적용된 버전으로 업데이트하십시오.
🔧 검증 코드
출력된 커널 버전이 해당 취약점이 수정된 패치 버전 이후인지 확인하십시오.