CVE-2024-50063 in Linuxinformação

Sumário

de VulDB • 21/05/2026

No kernel do Linux, a seguinte vulnerabilidade foi resolvida:

bpf: Impede chamada de cauda (tail call) entre programas (progs) anexados a diferentes hooks

Os programas bpf podem ser anexados a funções do kernel, e as funções anexadas podem aceitar parâmetros diferentes ou retornar valores de retorno diferentes. Se um prog anexado a uma função do kernel fizer uma chamada de cauda para um prog anexado a outra função do kernel, a verificação de acesso ao contexto (ctx) ou do valor de retorno pode ser contornada.

Por exemplo, se o prog1 estiver anexado à func1, que aceita apenas 1 parâmetro, e o prog2 estiver anexado à func2, que aceita dois parâmetros. Como o verificador assume que o contexto bpf (bpf ctx) passado para o prog2 é construído com base no protótipo da func2, o verificador permite que o prog2 acesse o segundo parâmetro do contexto bpf passado a ele. O problema é que o verificador não impede que o prog1 passe seu contexto bpf para o prog2 por meio de uma chamada de cauda. Neste caso, o contexto bpf passado para o prog2 é construído a partir da func1 em vez da func2, ou seja, a suposição para a verificação de acesso ao contexto é contornada.

Outro exemplo: se o prog1 do BPF LSM estiver anexado ao hook file_alloc_security e o prog2 do BPF LSM estiver anexado ao hook bpf_lsm_audit_rule_known. O verificador conhece as regras de valor de retorno para esses dois hooks, por exemplo, é legal para o bpf_lsm_audit_rule_known retornar o número positivo 1, e é ilegal para o file_alloc_security retornar um número positivo. Portanto, o verificador permite que o prog2 retorne o número positivo 1, mas não permite que o prog1 retorne um número positivo. O problema é que o verificador não impede que o prog1 chame o prog2 por meio de uma chamada de cauda. Neste caso, o valor de retorno 1 do prog2 será usado como o valor de retorno para o hook file_alloc_security do prog1. Ou seja, a regra de valor de retorno é contornada.

Este patch adiciona restrições para a chamada de cauda a fim de impedir tais contornamentos.

Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.

Responsável

Linux

Reservar

21/10/2024

Divulgação

21/10/2024

Moderação

aceite

Entrada

VDB-281438

CPE

pronto

EPSS

0.00231

KEV

não

Atividades

muito baixo

Fontes

Do you want to use VulDB in your project?

Use the official API to access entries easily!