🇰🇷 한글 설명
Linux 커널의 dpaa2-switch 구성 요소에서 MAC 엔드포인트 장치의 참조 카운트를 적절히 해제하지 않아 발생하는 메모리 누수 취약점입니다. 연결 해제 시 저장된 장치 참조를 해제하지 않아, 연결과 해제가 반복될 때마다 장치 참조가 누수됩니다.
💡 쉬운 설명
네트워크 장치를 연결했다가 끊을 때, 컴퓨터가 사용하던 메모리 자원을 제대로 돌려주지 않고 계속 붙잡고 있는 문제입니다. 이 현상이 반복되면 시스템의 자원이 점차 고갈될 수 있습니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
dpaa2-switch: put MAC endpoint device on disconnect
fsl_mc_get_endpoint() returns the MAC endpoint device with a reference
taken through device_find_child(). The switch port connect path stores
that device in mac->mc_dev and keeps it for the lifetime of the connected
MAC object.
However, the disconnect path only closes the MAC and frees the dpaa2_mac
object. It does not drop the endpoint device reference stored in
mac->mc_dev, so every successful connect leaks that device reference when
the MAC is later disconnected.
Drop the endpoint device reference before freeing the dpaa2_mac object.
📍 영향받는 시스템
Linux kernel (dpaa2-switch driver 사용 환경)
⚔️ 공격 벡터
로컬 공격자가 네트워크 연결 및 해제를 반복하여 시스템 자원을 고갈시키는 방식 (DoS 가능성)
🛡️ 대응 방법
Linux 커널을 최신 보안 패치가 적용된 버전으로 업데이트하여 dpaa2_mac 객체 해제 전 참조를 드롭하도록 수정합니다.
🔧 검증 코드
출력된 커널 버전이 해당 취약점이 해결된 패치 버전 이후인지 확인합니다.