🇰🇷 한글 설명
리눅스 커널의 mmiotrace 기능에서 mmio_pipe_open()이 PCI 장치를 찾지 못할 경우 hiter->dev가 NULL로 설정되는 취약점이 발견되었습니다. 이로 인해 mmiotrace의 read() 함수가 NULL 포인터를 참조하여 시스템 충돌이나 오류를 유발할 수 있습니다.
💡 쉬운 설명
리눅스 시스템의 특정 추적 기능이 장치를 찾지 못했을 때, 존재하지 않는 주소를 참조하려고 시도하여 시스템이 멈추거나 오류가 발생할 수 있는 문제입니다. 장치가 없는 상태에서 기능을 실행할 때 발생하는 소프트웨어 결함입니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
tracing: Fix mmiotrace possible NULL dereferencing of hiter->dev
If the mmio_pipe_open() fails to find a PCI device, the hiter->dev
will be assigned to NULL. The mmiotrace read() function dereferences the
hiter->dev if hiter exists.
Change the test of the read to not only check hiter being NULL, but also
the hiter->dev before dereferencing it.
📍 영향받는 시스템
PCI 장치 추적(mmiotrace) 기능을 사용하는 리눅스 커널 버전
⚔️ 공격 벡터
로컬 사용자가 mmiotrace 기능을 사용하여 잘못된 메모리 참조를 유도하는 방식
🛡️ 대응 방법
hiter->dev의 NULL 여부를 확인하는 패치가 적용된 최신 리눅스 커널로 업데이트
🔧 검증 코드
출력된 커널 버전이 해당 취약점이 해결된 패치 버전 이후인지 확인