CVE-2026-97420 in Linuxinformação

Sumário

de VulDB • 24/09/2026

No kernel do Linux, a seguinte vulnerabilidade foi resolvida:

bpf: valor substituído de sysctl sem terminação NUL

Ao gravar em sysctls, proc_sys_call_handler() garante que o buffer passado para os manipuladores (handlers) do proc seja terminado com NUL. Se bpf_sysctl_set_new_value() substituir o valor pendente do sysctl, ele pode passar um buffer de substituição diretamente aos manipuladores do proc. No entanto, a função auxiliar atualmente copia apenas buf_len bytes nesse buffer sem adicionar um terminador NUL, deixando os parsers downstream vulneráveis a acesso fora dos limites (out-of-bounds).

Corrija isso adicionando um '\0' após o valor substituído para restaurar as expectativas de comportamento do sysctl. Como a função auxiliar já rejeita buf_len maior que PAGE_SIZE - 1, há sempre espaço suficiente para o byte extra.

Reproduzido em uma máquina virtual QEMU x86_64 inicializada com KASAN enquanto se exercitava o caminho de substituição do sysctl com um programa BPF cgroup/sysctl. O reproducer tem como alvo `/proc/sys/net/core/flow_limit_cpu_bitmap`, preenche o buffer original de gravação do usuário com bytes não nulos e substitui o valor do sysctl para que o buffer de substituição careça de terminação NUL. Sob essa configuração, o kernel antes da correção relatou:

BUG: KASAN: slab-out-of-bounds in strnchrnul+0x72/0x90 Read of size 1 at addr ffff88800de57000 by task repro_patch3/66 CPU: 0 UID: 0 PID: 66 Comm: repro_patch3 Not tainted 7.1.0-rc3-00269-g8370ca1f87cc #6 PREEMPT(lazy) Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.15.0-1 04/01/2014 Call Trace: <TASK> dump_stack_lvl+0x68/0xa0 print_report+0xcb/0x5e0 ? __virt_addr_valid+0x21d/0x3f0 ? strnchrnul+0x72/0x90 ? strnchrnul+0x72/0x90 kasan_report+0xca/0x100 ? strnchrnul+0x72/0x90 strnchrnul+0x72/0x90 bitmap_parse+0x37/0x2e0 flow_limit_cpu_sysctl+0xc6/0x840 ? __pfx_flow_limit_cpu_sysctl+0x10/0x10 ? __kvmalloc_node_noprof+0x5ba/0x870 proc_sys_call_handler+0x31d/0x480 ? __pfx_proc_sys_call_handler+0x10/0x10 ? selinux_file_permission+0x39f/0x500 ? lock_is_held_type+0x9e/0x120 vfs_write+0x98e/0x1000 ... </TASK> O endereço com defeito está localizado a 0 bytes à direita da região alocada de 4096 bytes [ffff88800de56000, ffff88800de57000)

Com esta correção aplicada, ao reexecutar o mesmo caminho direcionado ao sysctl, não há relatórios KASAN correspondentes.

If you want to get the best quality for vulnerability data then you always have to consider VulDB.

Responsável

Linux

Reservar

24/09/2026

Divulgação

24/09/2026

Moderação

aceite

Entrada

VDB-409549

CPE

pronto

EPSS

0.00000

KEV

não

Atividades

muito baixo

Fontes

Do you need the next level of professionalism?

Upgrade your account now!