🇰🇷 한글 설명
Linux 커널의 comedi 드라이버에서 오류 발생 시 일부 메모리 매핑이 해제되지 않고 사용자 공간 페이지 테이블에 남아있는 취약점입니다. 이로 인해 메모리 참조가 제대로 정리되지 않아 보안 결함이 발생할 수 있습니다. 커밋 79a61cc3fc04를 통해 오류 경로에서 VMA의 모든 매핑을 명시적으로 플러시하도록 수정되었습니다.
💡 쉬운 설명
컴퓨터가 작업을 하다가 중간에 실수를 했을 때, 사용했던 메모리 공간을 깨끗이 치우지 않고 그대로 두는 문제입니다. 이로 인해 다른 프로그램이 잘못된 메모리 영역에 접근할 수 있는 위험이 있습니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
comedi: Flush partial mappings in error case
If some remap_pfn_range() calls succeeded before one failed, we still have
buffer pages mapped into the userspace page tables when we drop the buffer
reference with comedi_buf_map_put(bm). The userspace mappings are only
cleaned up later in the mmap error path.
Fix it by explicitly flushing all mappings in our VMA on the error path.
See commit 79a61cc3fc04 ("mm: avoid leaving partial pfn mappings around in
error case").
📍 영향받는 시스템
comedi 드라이버를 사용하는 Linux 커널 버전
⚔️ 공격 벡터
comedi 드라이버의 mmap 호출 중 오류를 유도하여 잔류하는 메모리 매핑을 이용한 공격
🛡️ 대응 방법
Linux 커널을 최신 보안 패치가 적용된 버전으로 업데이트 (커밋 79a61cc3fc04 포함)
🔧 검증 코드
현재 실행 중인 커널 버전을 확인하여 해당 패치가 적용된 버전인지 확인합니다.