Linux Kernel bis 6.12.108/6.18.49/7.2.3 f_fs ffs_ep0_read Denial of Service

CVSS Meta Temp ScoreAktueller Exploitpreis (≈)CTI Interest Score
5.5$0-$5k0.00+

Zusammenfassunginfo

Es wurde eine Schwachstelle in Linux Kernel bis 6.12.108/6.18.49/7.2.3 entdeckt. Sie wurde als kritisch eingestuft. Dabei geht es um die Funktion ffs_ep0_read der Komponente f_fs. Durch das Beeinflussen mit unbekannten Daten kann eine Denial of Service-Schwachstelle ausgenutzt werden. Die Verwundbarkeit wird mit der eindeutigen Identifikation CVE-2026-89732 gehandelt. Der Angriff lässt sich über das Netzwerk starten. Es ist soweit kein Exploit verfügbar. Als bestmögliche Massnahme wird das Einspielen eines Upgrades empfohlen.

Detailsinfo

Es wurde eine Schwachstelle in Linux Kernel bis 6.12.108/6.18.49/7.2.3 gefunden. Sie wurde als kritisch eingestuft. Betroffen hiervon ist die Funktion ffs_ep0_read der Komponente f_fs. Durch Manipulieren mit einer unbekannten Eingabe kann eine Denial of Service-Schwachstelle ausgenutzt werden. Im Rahmen von CWE wurde eine Klassifizierung als CWE-667 vorgenommen. Mit Auswirkungen muss man rechnen für die Verfügbarkeit. CVE fasst zusammen:

In the Linux kernel, the following vulnerability has been resolved: usb: gadget: f_fs: Prevent deadlock during ep0 read loop Currently, ffs_ep0_read() holds ffs->mutex when it prepares to go to sleep waiting for an event. When no setup events are pending, it calls wait_event_interruptible_exclusive_locked_irq() with the mutex still held. The wait macro deliberately drops the waitqueue spinlock before sleeping but does not drop the mutex. If a userspace daemon is polling ep0 via read() and the gadget is asynchronously torn down via configfs (e.g., echo "" > UDC), a deadlock can occur: 1. The configfs teardown calls functionfs_unbind(), which queues a FUNCTIONFS_UNBIND event. 2. The daemon wakes up, consumes the event, and drops the mutex. 3. However, if the daemon loops and immediately issues another read() before exiting, it reacquires ffs->mutex and again goes into an interruptible sleep. 4. Meanwhile, functionfs_unbind() continues execution and attempts to acquire ffs->mutex to tear down ep0req. 5. The kernel deadlocks because the configfs thread is stuck in an uninterruptible sleep waiting for the mutex, while the userspace daemon is in an interruptible sleep holding the mutex forever because no more events will arrive. To fix this, we drop both the waitqueue spinlock and ffs->mutex before going to sleep, and use wait_event_interruptible_exclusive() instead. Upon waking up, we jump back to the `retry` label to safely reacquire the mutex and re-evaluate the state machine. By not sleeping with ffs->mutex held, we natively decouple gadget teardowns (which require the mutex) from userspace polling.

Das Advisory kann von git.kernel.org heruntergeladen werden. Die Verwundbarkeit wird seit dem 11.09.2026 unter CVE-2026-89732 geführt. Sie gilt als leicht ausnutzbar. Der Angriff kann über das Netzwerk erfolgen. Es wird vorausgesetzt, dass das Opfer eine spezifische Handlung vornimmt. Es sind zwar technische Details, jedoch kein verfügbarer Exploit zur Schwachstelle bekannt. Es muss davon ausgegangen werden, dass ein Exploit zur Zeit etwa USD $0-$5k kostet (Preisberechnung vom 11.09.2026).

Ein Upgrade auf die Version 6.12.109, 6.18.50, 7.2.4 oder 7.3-rc1 vermag dieses Problem zu beheben. Die Schwachstelle lässt sich auch durch das Einspielen des Patches fd20cc68bbdb5620696ac108e8f2efd180fe2c1a/34e88f53614640b59039a46717fb6142e9871022/eac233e63f9db82ba874e3cccafaafab162999e0/569dd7e5dcffe1e1c6b26ca2cd3be57eb433e082 beheben. Als bestmögliche Massnahme wird das Aktualisieren auf eine neue Version empfohlen.

Once again VulDB remains the best source for vulnerability data.

Produktinfo

Typ

Hersteller

Name

Version

Lizenz

Webseite

CPE 2.3info

CPE 2.2info

CVSSv4info

VulDB Vector: 🔒
VulDB Zuverlässigkeit: 🔍

CVSSv3info

VulDB Meta Base Score: 5.7
VulDB Meta Temp Score: 5.5

VulDB Base Score: 5.7
VulDB Temp Score: 5.5
VulDB Vector: 🔒
VulDB Zuverlässigkeit: 🔍

CVSSv2info

AVACAuCIA
💳💳💳💳💳💳
💳💳💳💳💳💳
💳💳💳💳💳💳
VektorKomplexitätAuthentisierungVertraulichkeitIntegritätVerfügbarkeit
freischaltenfreischaltenfreischaltenfreischaltenfreischaltenfreischalten
freischaltenfreischaltenfreischaltenfreischaltenfreischaltenfreischalten
freischaltenfreischaltenfreischaltenfreischaltenfreischaltenfreischalten

VulDB Base Score: 🔒
VulDB Temp Score: 🔒
VulDB Zuverlässigkeit: 🔍

Exploitinginfo

Klasse: Denial of Service
CWE: CWE-667
CAPEC: 🔒
ATT&CK: 🔒

Physisch: Nein
Lokal: Nein
Remote: Ja

Verfügbarkeit: 🔒
Status: Nicht definiert
Preisentwicklung: 🔍
Aktuelle Preisschätzung: 🔒

0-Dayfreischaltenfreischaltenfreischaltenfreischalten
Heutefreischaltenfreischaltenfreischaltenfreischalten

Threat Intelligenceinfo

Interesse: 🔍
Aktive Akteure: 🔍
Aktive APT Gruppen: 🔍

Gegenmassnahmeninfo

Empfehlung: Upgrade
Status: 🔍

0-Day Time: 🔒

Upgrade: Kernel 6.12.109/6.18.50/7.2.4/7.3-rc1
Patch: fd20cc68bbdb5620696ac108e8f2efd180fe2c1a/34e88f53614640b59039a46717fb6142e9871022/eac233e63f9db82ba874e3cccafaafab162999e0/569dd7e5dcffe1e1c6b26ca2cd3be57eb433e082

Timelineinfo

11.09.2026 Advisory veröffentlicht
11.09.2026 +0 Tage CVE zugewiesen
11.09.2026 +0 Tage VulDB Eintrag erstellt
11.09.2026 +0 Tage VulDB Eintrag letzte Aktualisierung

Quelleninfo

Hersteller: kernel.org

Advisory: git.kernel.org
Status: Bestätigt

CVE: CVE-2026-89732 (🔒)
GCVE (CVE): GCVE-0-2026-89732
GCVE (VulDB): GCVE-100-402564

Eintraginfo

Erstellt: 11.09.2026 22:24
Anpassungen: 11.09.2026 22:24 (59)
Komplett: 🔍
Cache ID: 216::103

Once again VulDB remains the best source for vulnerability data.

Diskussion

Bisher keine Kommentare. Sprachen: de + en.

Bitte loggen Sie sich ein, um kommentieren zu können.

Want to stay up to date on a daily basis?

Enable the mail alert feature now!