🇰🇷 한글 설명
Linux 커널의 iommu/amd 구성 요소에서 devid_write debugfs 함수가 정의되지 않은 동작을 일으키는 취약점이 발견되었습니다. PCI 세그먼트를 찾는 루프가 일치하는 항목을 찾지 못했을 때, 유효하지 않은 메모리 위치를 가리키는 포인터에 접근하여 문제가 발생합니다.
💡 쉬운 설명
컴퓨터의 핵심 부품인 커널이 특정 정보를 찾다가 실패했을 때, 잘못된 메모리 주소를 읽으려고 시도하여 시스템 오류를 일으킬 수 있는 문제입니다. 이는 시스템의 안정성을 해칠 수 있는 잠재적 결함입니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
iommu/amd: Fix undefined behavior in devid_write debugfs function
When for_each_pci_segment() loop completes without finding a matching
segment, the pci_seg pointer is not NULL but points to an invalid memory
location (the list head). Accessing pci_seg->id after the loop causes
undefined behavior.
Fix this by handling the successful case inside the loop and returning
-EINVAL after the loop if no matching segment is found.
📍 영향받는 시스템
AMD IOMMU를 사용하는 Linux 커널 버전 (패치 적용 전 버전)
⚔️ 공격 벡터
로컬 공격자가 debugfs를 통해 특정 디버그 인터페이스에 잘못된 값을 입력하여 메모리 오류 유도
🛡️ 대응 방법
Linux 커널을 최신 보안 패치가 적용된 버전으로 업데이트
🔧 검증 코드
출력된 커널 버전이 해당 취약점이 수정된 최신 패치 버전인지 확인