🇰🇷 한글 설명
Linux 커널의 x86/amd_node 구성 요소에서 amd_smn_init() 함수 호출 시 PCI 장치의 참조 횟수(reference counting)를 적절히 관리하지 못하는 취약점이 발견되었습니다. 이로 인해 장치 검색 과정에서 사용된 임시 포인터의 참조 횟수가 제대로 감소되지 않아 메모리 누수나 시스템 불안정을 초래할 수 있습니다.
💡 쉬운 설명
컴퓨터 부품을 찾는 과정에서 사용한 메모리 기록을 제대로 지우지 않아 발생하는 문제입니다. 이 문제가 방치되면 시스템의 메모리가 낭비되거나 예기치 않게 작동이 멈출 수 있습니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
x86/amd_node: Fix PCI device reference counting in amd_smn_init()
The local "root" pointer is a temporary variable used during the device
search. Therefore, refcount related to the search iterators should be cleaned
up after the search is complete.
Use the __free() cleanup macro to ensure the refcount is decremented when the
temporary pointer goes out of scope.
Additionally, increment the refcount when caching a root pointer. This ensures
the in-use refcount is separate from the temporary search refcounting.
Finally, drop the redundant "root = NULL" before the second search loop. The
pci_get_class() iterator always decrements the refcount of its "from"
argument, so the first loop can only fall through with "root" already NULL.
📍 영향받는 시스템
PCI 장치 참조 횟수 관리 로직이 포함된 Linux 커널 (x86/amd_node 관련 모듈)
⚔️ 공격 벡터
로컬 시스템에서 특정 커널 모듈을 호출하여 참조 횟수 불일치를 유도하는 방식
🛡️ 대응 방법
해당 취약점이 수정된 최신 버전의 Linux 커널로 업데이트하십시오.
🔧 검증 코드
출력된 커널 버전이 해당 패치가 적용된 보안 업데이트 버전인지 확인하십시오.