CVE-2026-72196 in Linux정보

요약

\~에 의해 VulDB • 2026. 08. 15.

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

fs/ntfs3: 분석 단계에서 copy_lcns의 dp->page_lcns[] 인덱스에 경계 설정

log_replay()의 분석 단계에서는 find_dp()이 (target_attr, target_vcn) 튜플에 대해 유효한 DIR_PAGE_ENTRY를 반환한 후, copy_lcns 블록이 lrh->lcns_follow만큼 추가 엔트리를 순회합니다:

t16 = le16_to_cpu(lrh->lcns_follow); for (i = 0; i < t16; i++) {
size_t j = (size_t)(le64_to_cpu(lrh->target_vcn) - le64_to_cpu(dp->vcn)); dp->page_lcns[j + i] = lrh->page_lcns[i];
}

find_dp()은 target_vcn이 [dp->vcn, dp->vcn + dp->lcns_follow) 범위 내에 있는지, 즉 첫 번째 클러스터가 커버되는지 여부만 검증합니다. 추가 엔트리를 순회하는 과정은 dp->lcns_follow에 대해 경계가 설정되지 않았습니다. malformed LRH의 경우로 target_vcn = dp->vcn + dp->lcns_follow - 1이고 lrh->lcns_follow > 1일 때, i > 0인 쓰기 작업이 dp가 할당한 page_lcns[] 배열을 오버플로우시킵니다.

누락된 j + lrh->lcns_follow <= dp->lcns_follow 가드를 추가합니다.

주라인 커널 8d90b09e6741에서 UML+KASAN 환경으로 재현되었으며, 마운트 경로에서 log_replay+0x68d4를 통해 크기가 8인 slab-out-of-bounds 쓰기 오류로 확인되었습니다.

이것은 Pavitra Jha의 2026-05-02 패치("fs/ntfs3: validate lcns_follow in log_replay conversion", <[email protected]>)와는 구별됩니다. 해당 패치는 별도의 버전 0 더티 페이지 테이블 변환 경로에서 memmove(&dp->vcn, ...) 호출을 처리합니다. 두 수정 사항은 상호 보완적이며 둘 다 적용되어야 합니다.

[[email protected]: clang 형식으로 변경 사항을 포맷하고 충돌 해결]

Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.

출처

Do you know our Splunk app?

Download it now for free!