🇰🇷 한글 설명
리눅스 커널의 firewire 코어 모듈 내 build_tree() 함수 오류 경로에서 메모리 누수 취약점이 발견되었습니다. self ID 시퀀스에서 잘못된 값이 감지될 경우, 할당된 노드 인스턴스들이 로컬 연결 리스트에 남아 해제되지 않는 문제입니다. 이를 해결하기 위해 오류 발생 시 for_each_fw_node()를 사용하여 남은 노드 인스턴스를 안전하게 해제하도록 수정되었습니다.
💡 쉬운 설명
컴퓨터가 특정 장치를 연결하는 과정에서 오류가 발생했을 때, 사용했던 메모리를 제대로 돌려주지 않고 계속 붙잡고 있는 버그입니다. 이 문제가 반복되면 시스템의 메모리가 점차 부족해질 수 있습니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
firewire: core: fix memory leak in error path of build_tree()
In the error path of build_tree(), node instances can remain in the local
linked list when the function returns.
Whenever an invalid value is detected in the self ID sequence, each
allocated node instance is either an entry in the linked list or an
entry in the ports array of its parent node. Therefore, the allocate
node instances can be safely released by traversing the linked list from
its head.
Release the remaining node instances with for_each_fw_node() before
returning to the caller.
📍 영향받는 시스템
Linux Kernel (firewire core module 포함 버전)
⚔️ 공격 벡터
FireWire 장치를 통한 잘못된 self ID 시퀀스 전송으로 메모리 누수 유도
🛡️ 대응 방법
리눅스 커널을 최신 보안 패치가 적용된 버전으로 업데이트
🔧 검증 코드
출력된 커널 버전이 해당 취약점이 수정된 패치 버전 이후인지 확인