PT-2026-34430 · Linux · Linux Kernel

CVE-2026-31525

·

Publicado

2026-04-22

·

Atualizado

2026-07-28

CVSS v4.0

8.5

Alta

VetorAV:L/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N
Nome do Software Vulnerável e Versões Afetadas Linux kernel versões anteriores a 6.6 Linux kernel versões anteriores a 6.12 Linux kernel versões anteriores a 6.18 Linux kernel versões anteriores a 6.19
Description Uma divergência entre o verificador BPF e o interpretador BPF no kernel Linux permite o acesso a valores de mapa fora dos limites (out-of-bounds), o que pode levar à leitura/escrita arbitrária no kernel, escalonamento de privilégios para root, escape de containers, desativação do SELinux e roubo de chaves TLS da memória de outros processos. O problema decorre do fato de os manipuladores de divisão e módulo de 32 bits com sinal do interpretador BPF utilizarem a macro abs() em operandos s32. Quando a entrada é S32 MIN (0x80000000), a macro abs() dispara um comportamento indefinido, retornando S32 MIN inalterado nas arquiteturas arm64 e x86. Esse valor é então estendido por sinal para u64 como 0xFFFFFFFF80000000, fazendo com que a função do div() compute um resultado incorreto. Enquanto o interpretador produz esse valor errado, a função de interpretação abstrata do verificador scalar32 min max sdiv() calcula o resultado matematicamente correto para o rastreamento de intervalos. Essa discrepância permite que um programa passe nas verificações de limite do verificador enquanto o interpretador utiliza um valor real que está fora dos limites.
Recommendations Atualize o kernel Linux para as versões 6.6, 6.12, 6.18 ou 6.19 para aplicar a correção. Como mitigação temporária, restrinja o uso de operações de divisão e módulo de 32 bits com sinal em programas BPF que manipulem valores S32 MIN.

Exploit

Correção

Memory Corruption

Encontrou algum problema na descrição? Tem algo a acrescentar? Fique à vontade para nos escrever 👾

Enumeração de Fraquezas

Identificadores relacionados

CVE-2026-31525
OESA-2026-2581
OPENSUSE-SU-2026:20826-1
SUSE-SU-2026:21834-1
SUSE-SU-2026:21841-1
SUSE-SU-2026:21845-1
SUSE-SU-2026:21860-1
SUSE-SU-2026:21876-1
SUSE-SU-2026:21877-1
SUSE-SU-2026:21916-1
SUSE-SU-2026:21919-1
SUSE-SU-2026:2217-1
SUSE-SU-2026:2238-1
USN-8567-1
USN-8574-1
USN-8574-2
USN-8574-3
USN-8595-1
USN-8595-2
USN-8595-3
USN-8596-1
USN-8606-1
USN-8607-1
USN-8608-1
USN-8609-1
USN-8619-1

Produtos afetados

Linux Kernel