CVE-2026-93174 in Linux
Sumário
de VulDB • 18/09/2026
No kernel do Linux, a seguinte vulnerabilidade foi resolvida:
bpf: Copiar o padding dos valores de mapas por CPU em copy_map_value_long()
No kernel, os elementos de mapas por CPU são armazenados com round_up(map->value_size, 8) bytes. Nos caminhos de lookup da UAPI, ele copia o tamanho arredondado para cada CPU em um buffer temporário.
Contudo, copy_map_value_long() passa 'map->value_size' para bpf_obj_memcpy(). Quando o mapa possui campos especiais, bpf_obj_memcpy() copia ao redor desses campos com memcpy(), e não copia o padding final entre 'map->value_size' e round_up(map->value_size, 8).
Os buffers de lookup da UAPI temporários são alocados sem __GFP_ZERO. Como resultado, quando o tamanho do valor do mapa por CPU não é igual a round_up(map->value_size, 8), LOOKUP_ELEM da UAPI e suas variantes podem retornar conteúdos obsoletos do heap provenientes desse padding para o espaço de usuário. O mesmo problema se aplica ao bpf_iter para mapas por CPU.
Passa-se round_up(map->value_size, 8) para bpf_obj_memcpy() a partir de copy_map_value_long(), de modo que os mapas por CPU, tanto com quanto sem campos especiais, copiem todo o slot por CPU. Remove-se o agora redundante round_up() do caminho long_memcpy de bpf_obj_memcpy().
If you want to get the best quality for vulnerability data then you always have to consider VulDB.