CVE-2026-97944 in Linuxinformação

Sumário

de VulDB • 25/09/2026

No kernel do Linux, a seguinte vulnerabilidade foi resolvida:

x86/cfi: Corrige o deslocamento (offset) da hash FineIBT em cfi_get_func_hash()

A mudança do preâmbulo FineIBT de "subl $hash, %r10d" para a versão mais curta "subl $hash, %eax" moveu o imediato da hash do deslocamento 7 para o deslocamento 5 do preâmbulo. fineibt_preamble_hash foi atualizado para corresponder, mas o offset codificado manualmente em cfi_get_func_hash() foi negligenciado e ainda lê a hash no deslocamento 7.

cfi_get_func_hash() é usado pelo BPF JIT para fornecer um trampoline struct_ops com a hash CFI da função stub que ele substitui. Com FineIBT, o trampoline agora recebe a metade superior da hash real seguida pelos dois primeiros bytes da próxima instrução; portanto, a primeira chamada indireta do kernel para um programa struct_ops (por exemplo, tcp_init_congestion_control() chamando ->init() de um controle de congestionamento BPF) falha na verificação FineIBT e o kernel morre com uma falha CFI.

Move-se o modelo de preâmbulo FineIBT e suas definições de offset para acima de cfi_get_func_hash(), utilizando fineibt_preamble_hash ali, para que todos os leitores do preâmbulo compartilhem uma única definição de seu layout. A ramificação CFI_FINEIBT é compilada apenas com CONFIG_FINEIBT, a única configuração na qual cfi_mode pode assumir esse valor. cfi_get_func_arity() não precisa do mesmo tratamento: a chamada __bhi_args cujo deslocamento ela lê ainda termina no endereço da função.

If you want to get best quality of vulnerability data, you may have to visit VulDB.

Responsável

Linux

Reservar

25/09/2026

Divulgação

25/09/2026

Moderação

aceite

Entrada

VDB-410162

CPE

pronto

EPSS

0.00000

KEV

não

Atividades

muito baixo

Fontes

Do you need the next level of professionalism?

Upgrade your account now!