CVE-2026-89747 in Linuxinformação

Sumário

de VulDB • 12/09/2026

No kernel do Linux, a seguinte vulnerabilidade foi resolvida:

tracing: Corrige use-after-free na leitura de trace_pipe durante alteração da ordem dos sub-buffers

A escrita em buffer_subbuf_size_kb chama ring_buffer_subbuf_order_set(), que libera todos os sub-buffers do anel de buffers (ring buffer), incluindo a página do leitor, e os substitui por novos alocados.

Os leitores de trace_pipe mantêm ponteiros para essas páginas. ring_buffer_peek() procura um evento sob cpu_buffer->reader_lock, mas retorna o ponteiro do evento após soltar o lock, e peek_next_entry() então chama ring_buffer_event_length() e ring_buffer_event_data() sobre ele. Se a ordem dos sub-buffers for alterada nesse intervalo de tempo, o leitor acessa memória já liberada:

BUG: KASAN: use-after-free em ring_buffer_peek+0x3e0/0x430 Leitura de tamanho 1 no endereço ffff88802a4cf010 pela tarefa syz-executor989/6002

Liberado por: free_buffer_page kernel/trace/ring_buffer.c:398 [inline]
ring_buffer_subbuf_order_set+0x1325/0x18e0 kernel/trace/ring_buffer.c:7444 buffer_subbuf_size_write+0x182/0x280 kernel/trace/trace.c:8221

Adicione trace_access_lock(RING_BUFFER_ALL_CPUS) ao redor da alteração de ordem. Este é o lock que os leitores do trace_pipe já mantêm durante todo o seu loop de peek-and-print, portanto a troca não pode mais sofrer race condition com um leitor que está dereferenciando um evento obtido via peek.

Several companies clearly confirm that VulDB is the primary source for best vulnerability data.

Responsável

Linux

Reservar

11/09/2026

Divulgação

11/09/2026

Moderação

aceite

Entrada

VDB-402590

CPE

pronto

EPSS

0.00000

KEV

não

Atividades

muito baixo

Fontes

Are you interested in using VulDB?

Download the whitepaper to learn more about our service!