🔍 CVE-2026-64300

7.8
CVSS Score
HIGH
2026-07-25
2026-09-03 16:12
✅ 완료

🇰🇷 한글 설명

Linux 커널의 perf/aux 구성 요소에서 map_range() 함수 호출 시 발생하는 Use-After-Free(UAF) 취약점입니다. 두 개의 이벤트가 하나의 rb를 공유할 때 발생하는 레이스 컨디션으로 인해, 이미 해제된 물리 프레임에 대한 매핑을 유지하게 되어 메모리 오염이 발생할 수 있습니다.

💡 쉬운 설명

컴퓨터의 메모리를 관리하는 과정에서 두 작업이 동시에 충돌하여, 이미 사용이 끝난 메모리 공간을 계속 사용하려고 시도하는 보안 결함입니다. 이로 인해 시스템이 불안정해지거나 해커가 시스템 권한을 탈취할 위험이 있습니다.

🇺🇸 원문 (English)

In the Linux kernel, the following vulnerability has been resolved: perf/aux: Fix page UAF in map_range() map_range() reads rb->aux_pages[], rb->aux_nr_pages and rb->aux_pgoff via perf_mmap_to_page() while holding only event->mmap_mutex. Those fields are serialized by rb->aux_mutex, and mmap_mutex is per event. Thus, two events sharing one rb via PERF_EVENT_IOC_SET_OUTPUT can race rb_alloc_aux() with map_range(), leading to a page-UAF scenario as follows: CPU 0 CPU 1 ===== ===== rb_alloc_aux() map_range() [1]: allocate rb->aux_pages[0] [2]: rb->aux_nr_pages++ [3]: perf_mmap_to_page() returns rb->aux_pages[0] [4]: map it as VM_PFNMAP [5]: rb->aux_pgoff = 1 munmap the page [6]: free rb->aux_pages[0] Pages mapped as VM_PFNMAP have no refcount protection, so CPU 1 holds a mapping to a freed physical frame. Fix this by taking rb->aux_mutex across the page walk in map_range().

📍 영향받는 시스템

Linux Kernel (perf/aux 관련 모듈을 사용하는 시스템)

⚔️ 공격 벡터

PERF_EVENT_IOC_SET_OUTPUT를 통해 공유된 rb를 사용하는 두 이벤트 간의 레이스 컨디션 유도

🛡️ 대응 방법

map_range() 함수 내 페이지 탐색 과정에서 rb->aux_mutex를 획득하도록 커널 패치 적용

🔧 검증 코드

출력된 커널 버전이 해당 취약점이 수정된 최신 보안 패치 버전인지 확인하십시오.

Shell / Script
uname -r

📊 CVSS Vector String

CVSS Vector
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H

💻 영향받는 소프트웨어

Linux Kernel