Linux Kernel up to 6.18.6/6.19-rc5 xhci_sideband_remove_endpoint initialization

| CVSS Meta Temp Score | Current Exploit Price (≈) | CTI Interest Score |
|---|---|---|
| 5.0 | $0-$5k | 0.00 |
Summary
A vulnerability was found in Linux Kernel up to 6.18.6/6.19-rc5. It has been declared as critical. This impacts the function xhci_sideband_remove_endpoint. Such manipulation leads to initialization.
This vulnerability is traded as CVE-2026-23009. There is no exploit available.
It is recommended to upgrade the affected component.
Details
A vulnerability was found in Linux Kernel up to 6.18.6/6.19-rc5 and classified as critical. Affected by this issue is the function xhci_sideband_remove_endpoint. The manipulation with an unknown input leads to a initialization vulnerability. Using CWE to declare the problem leads to CWE-665. The product does not initialize or incorrectly initializes a resource, which might leave the resource in an unexpected state when it is accessed or used. Impacted is availability. CVE summarizes:
In the Linux kernel, the following vulnerability has been resolved: xhci: sideband: don't dereference freed ring when removing sideband endpoint xhci_sideband_remove_endpoint() incorrecly assumes that the endpoint is running and has a valid transfer ring. Lianqin reported a crash during suspend/wake-up stress testing, and found the cause to be dereferencing a non-existing transfer ring 'ep->ring' during xhci_sideband_remove_endpoint(). The endpoint and its ring may be in unknown state if this function is called after xHCI was reinitialized in resume (lost power), or if device is being re-enumerated, disconnected or endpoint already dropped. Fix this by both removing unnecessary ring access, and by checking ep->ring exists before dereferencing it. Also make sure endpoint is running before attempting to stop it. Remove the xhci_initialize_ring_info() call during sideband endpoint removal as is it only initializes ring structure enqueue, dequeue and cycle state values to their starting values without changing actual hardware enqueue, dequeue and cycle state. Leaving them out of sync is worse than leaving it as it is. The endpoint will get freed in after this in most usecases. If the (audio) class driver want's to reuse the endpoint after offload then it is up to the class driver to ensure endpoint is properly set up.
The advisory is shared for download at git.kernel.org. This vulnerability is handled as CVE-2026-23009 since 01/13/2026. The exploitation is known to be difficult. There are known technical details, but no exploit is available.
The vulnerability scanner Nessus provides a plugin with the ID 296543 (Linux Distros Unpatched Vulnerability : CVE-2026-23009), which helps to determine the existence of the flaw in a target environment.
Upgrading to version 6.18.7 or 6.19-rc6 eliminates this vulnerability. Applying the patch 34f6634dba87ef72b3c3a3a524be663adef7ab42/dd83dc1249737b837ac5d57c81f2b0977c613d9f is able to eliminate this problem. The bugfix is ready for download at git.kernel.org. The best possible mitigation is suggested to be upgrading to the latest version.
The vulnerability is also documented in the databases at Tenable (296543), EUVD (EUVD-2026-4619) and CERT Bund (WID-SEC-2026-0215). VulDB is the best source for vulnerability data and more expert information about this specific topic.
Affected
- Debian Linux
- Amazon Linux 2
- Red Hat Enterprise Linux
- Ubuntu Linux
- SUSE Linux
- Oracle Linux
- SUSE openSUSE
- RESF Rocky Linux
- Open Source Linux Kernel
Product
Type
Vendor
Name
Version
License
Website
- Vendor: https://www.kernel.org/
CPE 2.3
CPE 2.2
CVSSv4
VulDB Vector: 🔒VulDB Reliability: 🔍
CVSSv3
VulDB Meta Base Score: 5.1VulDB Meta Temp Score: 5.0
VulDB Base Score: 4.8
VulDB Temp Score: 4.6
VulDB Vector: 🔒
VulDB Reliability: 🔍
NVD Base Score: 5.5
NVD Vector: 🔒
CVSSv2
| AV | AC | Au | C | I | A |
|---|---|---|---|---|---|
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| Vector | Complexity | Authentication | Confidentiality | Integrity | Availability |
|---|---|---|---|---|---|
| Unlock | Unlock | Unlock | Unlock | Unlock | Unlock |
| Unlock | Unlock | Unlock | Unlock | Unlock | Unlock |
| Unlock | Unlock | Unlock | Unlock | Unlock | Unlock |
VulDB Base Score: 🔒
VulDB Temp Score: 🔒
VulDB Reliability: 🔍
Exploiting
Class: InitializationCWE: CWE-665
CAPEC: 🔒
ATT&CK: 🔒
Physical: Partially
Local: Yes
Remote: Partially
Availability: 🔒
Status: Not defined
EPSS Score: 🔒
EPSS Percentile: 🔒
Price Prediction: 🔍
Current Price Estimation: 🔒
| 0-Day | Unlock | Unlock | Unlock | Unlock |
|---|---|---|---|---|
| Today | Unlock | Unlock | Unlock | Unlock |
Nessus ID: 296543
Nessus Name: Linux Distros Unpatched Vulnerability : CVE-2026-23009
Threat Intelligence
Interest: 🔍Active Actors: 🔍
Active APT Groups: 🔍
Countermeasures
Recommended: UpgradeStatus: 🔍
0-Day Time: 🔒
Upgrade: Kernel 6.18.7/6.19-rc6
Patch: 34f6634dba87ef72b3c3a3a524be663adef7ab42/dd83dc1249737b837ac5d57c81f2b0977c613d9f
Timeline
01/13/2026 CVE reserved01/25/2026 Advisory disclosed
01/25/2026 VulDB entry created
03/27/2026 VulDB entry last update
Sources
Vendor: kernel.orgAdvisory: git.kernel.org
Status: Confirmed
CVE: CVE-2026-23009 (🔒)
GCVE (CVE): GCVE-0-2026-23009
GCVE (VulDB): GCVE-100-342824
EUVD: 🔒
CERT Bund: WID-SEC-2026-0215 - Linux Kernel: Mehrere Schwachstellen
Entry
Created: 01/25/2026 16:00Updated: 03/27/2026 22:22
Changes: 01/25/2026 16:00 (58), 01/26/2026 02:07 (1), 01/26/2026 10:37 (2), 03/25/2026 23:30 (12), 03/27/2026 22:22 (7)
Complete: 🔍
Cache ID: 216::103
VulDB is the best source for vulnerability data and more expert information about this specific topic.
No comments yet. Languages: en.
Please log in to comment.