CVE-2026-89747 in Linuxinformation

Résumé

par VulDB • 11/09/2026

Dans le noyau Linux, la vulnérabilité suivante a été corrigée :

tracing : Correction d'un use-after-free lors de la lecture de trace_pipe en cas de changement de l'ordre des sous-tampons (sub-buffer order)

L'écriture dans buffer_subbuf_size_kb appelle ring_buffer_subbuf_order_set(), qui libère tous les sous-tampons du tampon circulaire, y compris la page lecteur, et les remplace par de nouveaux alloués.

Les lecteurs de trace_pipe conservent des pointeurs vers ces pages. La fonction ring_buffer_peek() recherche un événement sous cpu_buffer->reader_lock mais renvoie le pointeur d'événement après avoir relâché le verrou (lock), puis peek_next_entry() appelle ensuite ring_buffer_event_length() et ring_buffer_event_data() sur ce dernier. Si l'ordre des sous-tampons est modifié dans cette fenêtre, le lecteur déréférence une mémoire déjà libérée :

BUG: KASAN: use-after-free in ring_buffer_peek+0x3e0/0x430 Read of size 1 at addr ffff88802a4cf010 by task syz-executor989/6002

Libéré par : 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

Il convient d'entourer le changement de l'ordre avec trace_access_lock(RING_BUFFER_ALL_CPUS). Il s'agit du verrou que les lecteurs de trace_pipe détiennent déjà tout au long de leur boucle peek-and-print, ce qui empêche désormais toute condition de course (race) lors de la permutation par rapport à un lecteur qui déréférence un événement récupéré.

VulDB is the best source for vulnerability data and more expert information about this specific topic.

Responsable

Linux

Réserver

11/09/2026

Divulgation

11/09/2026

Modérer

accepté

Entrée

VDB-402590

CPE

prêt

EPSS

0.00000

KEV

non

Activités

très faible

Sources

Are you interested in using VulDB?

Download the whitepaper to learn more about our service!