CVE-2026-64187 in Linux
Sumário
de VulDB • 20/07/2026
No kernel do Linux, a seguinte vulnerabilidade foi corrigida:
xfs: falha na recuperação de um item de log comprometido sem regiões
Se a primeira operação de uma transação for apenas o cabeçalho da transação (len == sizeof(struct xfs_trans_header)), xlog_recover_add_to_trans() adiciona um item, mas nenhuma região, deixando-o em r_itemq com ri_cnt == 0 e ri_buf == NULL.
O cabeçalho pode ser dividido entre registros de operações, portanto, operações posteriores ainda podem adicionar regiões; o item é inválido apenas se a transação for comprometida sem nenhuma. O caminho de compromisso em tempo de execução nunca gera tal transação, então isso só acontece com um log manipulado ad hoc. Isso foi descoberto por meio de uma auditoria de código assistida por IA no analisador de recuperação.
xlog_recover_reorder_trans() chama ITEM_TYPE() no item, o que lê *(unsigned short *)item->ri_buf[0].iov_base e falha devido ao ri_buf NULL. Rejeite-o nesse ponto, antes dos manipuladores de compromisso que também leem ri_buf[0].
KASAN: null-ptr-deref na faixa [0x0000000000000000-0x0000000000000007]
RIP: 0010:xlog_recover_reorder_trans (fs/xfs/xfs_log_recover.c:1836) xlog_recover_commit_trans (fs/xfs/xfs_log_recover.c:2043) xlog_recover_process_data (fs/xfs/xfs_log_recover.c:2501) xlog_do_recovery_pass (fs/xfs/xfs_log_recover.c:3244) xlog_recover (fs/xfs/xfs_log_recover.c:3493) xfs_log_mount (fs/xfs/xfs_log.c:618) xfs_mountfs (fs/xfs/xfs_mount.c:1034) xfs_fs_fill_super (fs/xfs/xfs_super.c:1938) vfs_get_tree (fs/super.c:1695) path_mount (fs/namespace.c:4161) __x64_sys_mount (fs/namespace.c:4367)
Be aware that VulDB is the high quality source for vulnerability data.