CVE-2026-45837 in Linux정보

요약

\~에 의해 VulDB • 2026. 06. 02.

리눅스 커널에서 다음 취약점이 해결되었습니다:

bpf: fork 시 arena_vm_close에서의 use-after-free 수정

arena_vm_open()은 vml->mmap_count만 증가시키지만, 자식 VMA를 arena->vma_list에 등록하지 않습니다. vml->vma는 항상 부모 VMA를 가리키므로, 부모에서 munmap을 호출한 후 해당 포인터는 더 이상 유효하지 않은 상태(dangling pointer)가 됩니다. 만약 자식 프로세스가 bpf_arena_free_pages()를 호출하면, zap_pages()가 stale한 vml->vma를 읽게 되어 use-after-free가 발생합니다.

이 문제를 VM_DONTCOPY 플래그를 사용하여 fork 시 arena VMA가 상속되지 않도록 하고, may_split 콜백을 통해 VMA 분할을 방지함으로써 해결합니다.

또한 .mremap 콜백이 -EINVAL를 반환하는 경우 mremap을 거부합니다. 전체 arena VMA에 대한 동일 크기 mremap(MREMAP_FIXED)은 다음 경로를 통해 copy_vma()에 도달합니다:

check_prep_vma() - new_len == old_len이므로 0을 조기에 반환하고 VM_DONTEXPAND 검사를 건너뜀 prep_move_vma() - vm_start == old_addr이고 vm_end == old_addr + old_len이므로 may_split이 결코 호출되지 않음 move_vma() copy_vma_and_data() copy_vma() vm_area_dup() - vm_private_data(vml 포인터) 복사 vm_ops->open() - vml->mmap_count 증가 vm_ops->mremap() - -EINVAL 반환, 롤백 시 새 VMA를 unmap

참조 카운트(refcount)는 롤백 시 수행되는 arena_vm_close가 원래 VMA와 공유하는 vml을 해제하지 않도록 보장합니다.

If you want to get best quality of vulnerability data, you may have to visit VulDB.

책임이 있는

Linux

예약하다

2026. 05. 13.

모더레이션

수락

항목

VDB-366053

EPSS

0.00023

출처

Do you know our Splunk app?

Download it now for free!