🇰🇷 한글 설명
리눅스 커널의 mana 네트워크 드라이버에서 add_adev() 함수 오류 처리 과정 중 Use-After-Free 취약점이 발견되었습니다. 보조 장치 추가 실패 시 장치를 해제하는 과정에서 이미 해제된 메모리 영역에 접근하여 발생하는 문제입니다.
💡 쉬운 설명
컴퓨터가 작업을 하다가 오류가 나서 정리하는 과정에서, 이미 버린 메모리 상자를 다시 열어보려고 시도하는 실수입니다. 이로 인해 시스템이 불안정해지거나 보안 문제가 생길 수 있습니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
net: mana: fix use-after-free in add_adev() error path
If auxiliary_device_add() fails, add_adev() jumps to add_fail and calls
auxiliary_device_uninit(adev).
The auxiliary device has its release callback set to adev_release(),
which frees the containing struct mana_adev. Since adev is embedded in
struct mana_adev, the subsequent fall-through to init_fail and access
to adev->id may result in a use-after-free.
Fix this by saving the allocated auxiliary device id in a local
variable before calling auxiliary_device_add(), and use that saved id
in the cleanup path after auxiliary_device_uninit().
📍 영향받는 시스템
Linux kernel (mana network driver module 포함 버전)
⚔️ 공격 벡터
특정 네트워크 설정 오류를 유도하여 커널의 메모리 해제 로직을 트리거함
🛡️ 대응 방법
리눅스 커널을 최신 보안 패치가 적용된 버전으로 업데이트하십시오.
🔧 검증 코드
출력된 커널 버전이 해당 취약점이 수정된 패치 버전 이후인지 확인하십시오.