CVE-2024-56770 in Linuxinformação

Sumário

de VulDB • 13/06/2026

No kernel do Linux, a seguinte vulnerabilidade foi resolvida:

net/sched: netem: contabilizar atualizações de backlog provenientes de qdiscs filhos

Em geral, o 'qlen' (comprimento da fila) de qualquer qdisc classful deve acompanhar o número de pacotes que o próprio qdisc e todos os seus filhos retêm. No caso do netem, o 'qlen' contabiliza apenas os pacotes em seu tfifo interno. Quando o netem é utilizado com um qdisc filho, este pode usar a função 'qdisc_tree_reduce_backlog' para informar ao pai (netem) sobre SKBs criados ou descartados. Esta função atualiza o 'qlen' e as estatísticas de backlog do netem; no entanto, o netem não contabiliza as alterações feitas por um qdisc filho. Consequentemente, o 'qlen' indica o número incorreto de pacotes no tfifo.

Se um qdisc filho criar novos SKBs durante a operação de enqueue (fila) e informar isso ao seu pai, o valor do 'qlen' do netem é aumentado. Quando o netem realiza dequeue dos SKBs recém-criados provenientes do filho, o 'qlen' no netem não é atualizado. Se o 'qlen' atingir o limite configurado em sch->limit, a função de enqueue deixa de funcionar, mesmo que o tfifo não esteja cheio.

Reproduzir o bug: Certifique-se de que a máquina remetente tenha GSO habilitado. Configure o netem como qdisc raiz e tbf como seu filho na interface de saída da máquina da seguinte forma: $ tc qdisc add dev root handle 1: netem delay 100ms limit 100 $ tc qdisc add dev parent 1:0 tbf rate 50Mbit burst 1542 latency 50ms

Envie tráfego TCP em massa através desta interface, por exemplo, executando um cliente iPerf3 na máquina. Verifique as estatísticas do qdisc: $ tc -s qdisc show dev

Estatísticas após 10 segundos de teste TCP com iPerf3 antes da correção (observe que o backlog do netem > limit; o netem parou de aceitar pacotes): qdisc netem 1: root refcnt 2 limit 1000 delay 100ms Sent 2767766 bytes 1848 pkt (dropped 652, overlimits 0 requeues 0) backlog 4294528236b 1155p requeues 0 qdisc tbf 10: parent 1:1 rate 50Mbit burst 1537b lat 50ms Sent 2767766 bytes 1848 pkt (dropped 327, overlimits 7601 requeues 0) backlog 0b 0p requeues 0

Estatísticas após a correção: qdisc netem 1: root refcnt 2 limit 1000 delay 100ms Sent 37766372 bytes 24974 pkt (dropped 9, overlimits 0 requeues 0) backlog 0b 0p requeues 0 qdisc tbf 10: parent 1:

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

Responsável

Linux

Reservar

29/12/2024

Divulgação

08/01/2025

Moderação

aceite

Entrada

VDB-290813

CPE

pronto

EPSS

0.00265

KEV

não

Atividades

muito baixo

Fontes

Might our Artificial Intelligence support you?

Check our Alexa App!