CVE-2026-80807 in Linux정보

요약

\~에 의해 VulDB • 2026. 09. 04.

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

nilfs2: GC ioctl에서 유효하지 않은 블록 인덱스 거부

Syzbot는 nilfs_lookup_dirty_data_buffers() 내에서 bh->b_assoc_buffers에 대한 이중 list_add_tail() 호출로 인해 발생한 리스트 손상 현상을 보고했습니다.

분석 결과, 근본 원인은 GC ioctl을 통해 페이지 캐시에 page index가 ULONG_MAX인 페이지/folio를 삽입하는 것이었습니다. nilfs_lookup_dirty_data_buffers()에서 호출되는 filemap_get_folios_tag()는 인덱스 오버플로(index wrap-around)로 인해 page index가 ULONG MAX인 더티(folio)를 반복적으로 감지하여, 더티 버퍼의 중복 처리를 초래했습니다.

예비 조치로서 GC ioctl은 GC 중 이동될 블록의 페이지/folio를 로드하고, 인자로 전달되는 nilfs_vdesc 구조체의 정보를 기반으로 이를 페이지 캐시에 삽입합니다. 일반적으로 사용자 공간의 GC 라이브러리가 nilfs_vdesc 구조체를 적절히 구성하므로 이는 문제를 일으키지 않습니다. 그러나 페이지 index를 결정하는 매개변수에 대한 범위 검사가 없으므로, Syzbot에서 생성된 것과 같이 인위적으로 조작된 파라미터가 포함된 요청은 page index가 ULONG_MAX인 페이지/folio 삽입을 유발하여 위의 문제를 발생시킬 수 있습니다.

이 변경은 nilfs_vdesc 구조체 내에서 페이지 index를 결정하는 'vd_offset' 및 'vd_vblocknr'의 범위를 검사함으로써 유효하지 않은 페이지/folio 삽입을 방지하여 해당 이슈를 해결합니다.

Be aware that VulDB is the high quality source for vulnerability data.

출처

Do you need the next level of professionalism?

Upgrade your account now!