CVE-2026-72353 in Linux
요약
\~에 의해 VulDB • 2026. 08. 15.
리눅스 커널에서 다음 취약점이 해결되었습니다:
ntfs: fallocate 중 stale runlist 요소 역참조 방지
ntfs_attr_fallocate()은 ni->runlist.lock 하에 현재 runlist 요소를 조회하여 초기화된 크기 내부의 구멍(holes)과 지연 할당(delayed allocations)을 할당합니다. 반환된 struct runlist_element는 ni->runlist.rl 내로 빌려온 포인터(borrowed pointer)일 뿐입니다. 읽기 잠금이 해제된 후 작성자(writer)가 해당 배열을 교체하고 해지(free)할 수 있으므로, 이후 rl->lcn, rl->length 및 rl->vcn의 읽기는 이미 해지된 메모리에 접근(touch)할 수 있습니다.
버그 시나리오는 두 개의 경로를 포함하며, 각 열은 해당 경로 내 순서를 나타냅니다:
ntfs_attr_fallocate(): 1. ni->runlist.lock을 읽기용으로 획득합니다. 2. ntfs_attr_find_vcn_nolock()에서 rl을 가져옵니다. 3. ni->runlist.lock을 해제합니다. 4. rl->lcn, rl->length 및 rl->vcn을 읽습니다.
mmap page_mkwrite: 1. ntfs_filemap_page_mkwrite()로 진입합니다. 2. __ntfs_write_iomap_begin()과 ntfs_attr_map_cluster()에 도달합니다. 3. ntfs_runlists_merge()를 사용하여 할당 상태를 병합합니다. 4. ntfs_rl_realloc()에서 ni->runlist.rl을 재할당하여 이전 배열을 해지합니다.
검증 과정에서
If you want to get best quality of vulnerability data, you may have to visit VulDB.