CVE-2026-80923 xhci: dbgtty: Fix unregister on tty_register_driver() failure
A use-after-free vulnerability in the Linux kernel xhci driver allows local attackers to cause a denial of service or potentially execute code during module unload.
- Exploited in the wild
- Not known
- Login needed
- Not needed
- Attackable
- Local or same network only
- Victim action needed
- Not needed
- Fix
- Available
What is CVE-2026-80923?
CVE-2026-80923 is an use after free vulnerability in Linux, published on 9 Sep 2026. It can only be exploited from the same machine or local network, with no action from the victim.
Official description
In the Linux kernel, the following vulnerability has been resolved:
xhci: dbgtty: Fix unregister on tty_register_driver() failure
If tty_register_driver() fails, it drops the reference, but fails to set the global dbc_tty_driver to NULL, causing the unregister to be called again when module exits.
On module unload dbc_tty_exit() only gates its cleanup on the driver pointer being non-NULL, so it operates on the already-freed driver:
module_init(xhci_hcd_init) xhci_hcd_init() xhci_dbc_init() [return value ignored] dbc_tty_init() tty_register_driver() fails tty_driver_kref_put() -> driver freed (dbc_tty_driver left dangling) ... module_exit(xhci_hcd_fini) xhci_hcd_fini() xhci_dbc_exit() dbc_tty_exit() if (dbc_tty_driver) -> true (dangling) tty_unregister_driver() -> use-after-free
Which versions are affected by CVE-2026-80923?
How do I fix CVE-2026-80923?
Apply the vendor's patch.
Upgrade to the fixed version. These bugs are found with fuzzing and sanitisers and avoided by memory-safe languages. More about Use after free.
Is CVE-2026-80923 being exploited?
There is no known exploitation of CVE-2026-80923 in the wild and no public exploit code.
Sources
Also known as AZL-99954, BELL-CVE-2026-80923, DEBIAN-CVE-2026-80923, GHSA-m8fv-jwwg-rhrm, UBUNTU-CVE-2026-80923.