CVE-2026-99229 in Linuxinfo

Zusammenfassung

von VulDB • 02.11.2026

Im Linux-Kernel wurde folgende Schwachstelle behoben:

io_uring/wait: Kein Endlosschleife bei einer blockierten Overflow-Liste

Solange das IO_CHECK_CQ_OVERFLOW_BIT gesetzt ist, gibt io_cqring_wait_schedule() sofort zurück, bevor es Signale prüft oder den Timeout aktiviert, damit io_cqring_wait() die Overflow-Liste leeren kann. Wenn dies die Liste nicht leer macht und der CQ-Ring (Completion Queue Ring) nicht die Anzahl von Ereignissen enthält, die der Aufrufer wünscht, beginnt die Schleife erneut mit demselben Ergebnis. Die Aufgabe spinnt im Kernel und kann nicht beendet werden.

Die Annahme ist, dass dies nicht passieren kann: Wenn CQE-Elemente (Completion Queue Entries) nicht geleert werden können, ist der Ring voll, und min_events ist auf die Größe des Rings beschränkt. Aber:

- Bei IORING_SETUP_CQE_MIXED benötigt ein 32-Bit-CQE zwei zusammenhängende Einträge. Es bleibt in der Liste stecken, wenn nur noch einer frei ist, und dann hält der Ring weniger als cq_entries Ereignisse. Eine einzelne Thread-Anwendung, die so viele Ereignisse anfordert, wie der Ring Einträge hat, kommt nie aus io_uring_enter() heraus.

- Ob der Ring voll ist, hängt vom CQ-Kopf (head) ab, den die Anwendung schreiben kann. Während ein Thread auf einem leeren Ring auf Ereignisse wartet, kann ein anderer Thread den Kopf zurückbewegen, sodass der Ring voll aussieht und es zu einem CQE-Overflow kommt. Der Wartende kann nicht mehr gestoppt werden, selbst nicht durch SIGKILL.

Nur die Anwendung kann Platz im CQ-Ring schaffen. Kehren Sie dorthin zurück, wenn die Liste nicht geleert werden konnte.

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

Zuständig

Linux

Reservieren

25.09.2026

Veröffentlichung

02.11.2026

Moderieren

akzeptiert

Eintrag

VDB-429915

EPSS

0.00000

KEV

nein

Aktivitäten

very low

Quellen

Want to know what is going to be exploited?

We predict KEV entries!