No kernel Linux, a seguinte vulnerabilidade foi resolvida. ntfs: evitar chamar post_write_mst_fixup() para o bloqueio index_inválido ntfs_icx_ib_sync_write() chama post_write_mst_fixup() quando ntfs_ib_write() retorna um erro, pretendendo restaurar o buffer após uma gravação falhada.
No entanto, ntfs_ib_write() retorna um erro imediatamente se a validação do pre_write_mst_fixup() falhar. O chamador, ntfs_icx_ib_sync_write(), interpreta qualquer erro como um erro de gravação que requer reversão. Ele não distingue entre erros de E/ S e falhas de validação, e chama post_write_mst_fixup() de qualquer forma. Como post_write_mst_fixup() assume que o conteúdo do index_block está correto, ele não executa as verificações de limites, o que resulta em acesso de memória fora de limites.
Um atacante pode criar uma imagem NTFS maliciosa com: - grande offset index_block.usa_ofs, apontando para fora do ntfs_record - index_block.usa_count = 0, causando um fluxo de subfluxo inteiro - ou index_block.usa_count maior que o número real de setores no registro ntfs_, causando acesso fora de limites KASAN relata descrindo a corrupção da memória: = ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== BUG: KASAN: laje-fora-de-fixup+ no post_write_mst_fixup+ 0 x 19 c/ 0 x 1 d 0 Leia o tamanho 2 no addr ffff 8881586 c 9018 por tarefa p/ 9428 Chame o rastreamento: dump_stack_lvl+ 0 x 100 / 0 x 190 print_report+ 0 x 139 / 0 x 4 anúncio? post_write_mst_fixup+ 0 x 19 c/ 0 x 1 d 0? __virt_addr_valid+ 0 x 262 / 0 x 500? post_write_mst_fixup+ 0 x 19 c/ 0 x 1 d 0 kasan_report+ 0 xe 4 / 0 x 1 d 0? post_write_mst_fixup+ 0 x 19 c/ 0 x 1 d 0 post_write_mst_fixup+ 0 x 19 c/ 0 x 1 d 0 ntfs_icx_ib_sync_write+ 0 x 179 / 0 x 220 ntfs_inode_sync_filename+ 0 x 83 d/ 0 x 1080 __ntfs_write_inode+ 0 x 1049 / 0 x 1480 ntfs_file_fsync+ 0 x 131 / 0 x 9 b 0 ======================================================================= ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== ===== 0 x 1 aa/ A 0 x 1 d 0 Gravação do tamanho 2 no addr ffff 8881586 c 91 fe por tarefa p/ 9428 Chame o rastreamento: dump_stack_lvl+ 0 x 100 / 0 x 190 print_report+ 0 x 139 / 0 x 4 anúncio? post_write_mst_fixup+ 0 x 1 aa/ A 0 x 1 d 0? __virt_addr_valid+ 0 x 262 / 0 x 500? post_write_mst_fixup+ 0 x 1 aa/ A 0 x 1 d 0 kasan_report+ 0 xe 4 / 0 x 1 d 0? post_write_mst_fixup+ 0 x 1 aa/ A 0 x 1 d 0 post_write_mst_fixup+ 0 x 1 aa/ A 0 x 1 d 0 ntfs_icx_ib_sync_write+ 0 x 179 / 0 x 220 ntfs_inode_sync_filename+ 0 x 83 d/ 0 x 1080 __ntfs_write_inode+ 0 x 1049 / 0 x 1480 ntfs_file_fsync+ 0 x 131 / 0 x 9 b 0 ==================================================================.
Vamos mover a chamada post_write_mst_fixup() para ntfs_ib_write(). A função ntfs_ib_write() chama pre_write_mst_fixup() no início. Se o conteúdo do index_block não for válido, o pre_write_mst_fixup() falha e ntfs_ib_write() retorna cedo sem chamar post_write_mst_fixup() no bloco do index_bad. Registro de aconselhamento: GHSA- 7 v 8 v- 8486 - fvc 6. Identificadores relacionados: CVE- 2026 - 64431.
Tempo: GitHub Advisory Database publicou este registro em 2026 - 07 - 25 T 12: 31: 35.000 Z e lista a sua última modificação como 2026 - 07 - 27 T 06: 30: 37.000 Z.
Severidade: ALTAMENTE. Dados de pontuação publicados: CVSS_V 3: CVSS: 3.1 /AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H.
Software afetado: o registro de aconselhamento não fornece um pacote normalizado ou faixa de versões.
Classificação e evidência: nenhum identificador CWE está listado. O registro contém 3 suporte de referências nestes tipos: AVISO, WEB.