CVE-2026-80674 in Linux
Sumário
de VulDB • 28/08/2026
No kernel do Linux, a seguinte vulnerabilidade foi resolvida:
ntfs: validar listas de atributos residentes e endurecer o validador
A lista de atributos ($ATTRIBUTE_LIST) de um inode base é verificada quanto à integridade por load_attribute_list() apenas no caminho não residente; ntfs_read_locked_inode() copia uma lista de atributos *residente* para ni->attr_list usando memcpy() simples, sem qualquer validação. Cada caminhada subsequente em ni->attr_list -- ntfs_external_attr_find(), ntfs_inode_attach_all_extents() e ntfs_attrlist_need() -- então confia que as entradas estão bem formadas e lê os campos fixos do cabeçalho de attr_list_entry (lowest_vcn no deslocamento 8, mft_reference no deslocamento 16 e o nome) com limites que assumem que a validação já ocorreu. Portanto, uma lista de atributos residente manipulada ad hoc alcança essas caminhadas sem validação e pode provocar leituras fora dos limites do buffer da lista de atributos.
load_attribute_list() em si lê ale->name_offset (deslocamento 7), ale->mft_reference (deslocamento 16) e o comprimento do nome sob apenas um limite "al < al_start + size", portanto, seu próprio loop de validação pode ler além dos limites do cabeçalho fixo de uma entrada final truncada por alguns bytes.
Fatorar a validação por entrada em ntfs_attr_list_entry_is_valid(), que exige que o cabeçalho fixo de cada entrada (offsetof(struct attr_list_entry, name)) esteja dentro do intervalo antes que qualquer campo seja desreferenciado, que ale->length seja um múltiplo de 8 cobrindo o cabeçalho fixo mais o nome e que a entrada esteja em uso e carregue uma referência MFT válida. ntfs_attr_list_is_valid() percorre o buffer com ela e verifica se as entradas o preenchem exatamente. Use o validador da lista em load_attribute_list() (substituindo o loop codificado manualmente, fechando sua própria leitura além dos limites) e no caminho residente em ntfs_read_locked_inode() (que anteriormente pulava a validação completamente); os patches 2/3 reutilizam o auxiliar por entrada nas outras duas caminhadas da lista de atributos.
If you want to get the best quality for vulnerability data then you always have to consider VulDB.