🇰🇷 한글 설명
Linux 커널의 accel/qaic 드라이버에서 mmap 호출 시 remap_pfn_range 함수에 오버플로우 체크가 누락되어 발생합니다. 버퍼 객체(BO)가 너무 클 경우 VMA 범위를 벗어나 매핑될 수 있으며, 이는 munmap() 호출 시 추가 매핑 영역이 해제되지 않아 Use-After-Free 취약점을 유발할 수 있습니다.
💡 쉬운 설명
메모리를 할당할 때 정해진 크기보다 더 많은 영역을 잘못 연결하여 발생하는 보안 문제입니다. 이로 인해 시스템이 이미 사용이 끝난 메모리에 다시 접근하게 되어 시스템 오류나 해킹의 위험이 생길 수 있습니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
accel/qaic: Add overflow check to remap_pfn_range during mmap
The call to remap_pfn_range in qaic_gem_object_mmap is susceptible to
(re)mapping beyond the VMA if the BO is too large. This can cause use
after free issues when munmap() unmaps only the VMA region and not the
additional mappings. To prevent this, check the remaining size of the
VMA before remapping and truncate the remapped length if sg->length is
too large.
[jhugo: fix braces from checkpatch --strict]
📍 영향받는 시스템
Linux kernel (accel/qaic 드라이버를 사용하는 시스템)
⚔️ 공격 벡터
조작된 크기의 버퍼 객체를 생성하여 mmap을 통해 메모리 범위를 초과 매핑 유도
🛡️ 대응 방법
Linux 커널을 최신 보안 패치가 적용된 버전으로 업데이트
🔧 검증 코드
현재 실행 중인 커널 버전을 확인하여 취약점이 해결된 패치 버전인지 확인합니다.