🇰🇷 한글 설명
Linux 커널의 devlink 구성 요소에서 중첩된 관계(nested relation)가 적절히 해제되지 않는 메모리 누수 취약점이 발견되었습니다. 장치가 등록되기 전에 프로브(probe) 단계에서 오류가 발생할 경우, devlink_free()가 호출되더라도 관계 정보가 해제되지 않아 리소스가 누수될 수 있습니다.
💡 쉬운 설명
컴퓨터의 하드웨어 연결 정보를 관리하는 과정에서, 장치가 제대로 작동하기 전에 오류가 나면 사용하던 메모리를 돌려주지 않고 계속 붙잡고 있는 문제입니다. 이로 인해 시스템의 메모리가 조금씩 낭비될 수 있습니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
devlink: Release nested relation on devlink free
devlink relation state is normally released from devl_unregister(), which
calls devlink_rel_put(). This misses devlink instances that get a nested
relation before registration and then fail probe before devl_register() is
reached.
That flow can happen for SFs. The child devlink gets linked to its
parent before registration, then a later probe error calls devlink_free()
directly. Since the instance was never registered, devl_unregister() is not
called and devlink->rel is leaked.
Release any pending relation from devlink_free() as well. The registered
path is unchanged because devl_unregister() already clears devlink->rel
before devlink_free() runs.
📍 영향받는 시스템
Linux Kernel (devlink 구성 요소를 사용하는 시스템)
⚔️ 공격 벡터
장치 드라이버의 프로브 단계에서 의도적으로 오류를 유발하여 메모리 누수를 일으키는 방식
🛡️ 대응 방법
Linux 커널을 최신 보안 패치가 적용된 버전으로 업데이트하십시오.
🔧 검증 코드
출력된 커널 버전이 해당 취약점이 해결된 패치 버전 이후인지 확인하십시오.