Linux Kernel up to 7.2.4 em28xx em28xx_close_extension use after free

| CVSS Meta Temp Score | Current Exploit Price (≈) | CTI Interest Score |
|---|---|---|
| 8.4 | $0-$5k | 0.00- |
Summary
A vulnerability was found in Linux Kernel up to 7.2.4. It has been rated as very critical. Affected by this vulnerability is the function em28xx_close_extension of the component em28xx. The manipulation leads to use after free.
This vulnerability is listed as CVE-2026-89891. The attack must be carried out locally. There is no available exploit.
Upgrading the affected component is advised.
Details
A vulnerability, which was classified as very critical, has been found in Linux Kernel up to 7.2.4. This issue affects the function em28xx_close_extension of the component em28xx. The manipulation with an unknown input leads to a use after free vulnerability. Using CWE to declare the problem leads to CWE-416. Referencing memory after it has been freed can cause a program to crash, use unexpected values, or execute code. Impacted is confidentiality, integrity, and availability. The summary by CVE is:
In the Linux kernel, the following vulnerability has been resolved: media: em28xx: fix use-after-free of dev_next->devlist on disconnect When a device with has_dual_ts=1 is probed and the is_audio_only path is taken, both dev and dev->dev_next are added to the global em28xx_devlist via em28xx_init_extension(). However, during disconnect, em28xx_close_extension(dev) only calls list_del(&dev->devlist), leaving dev->dev_next->devlist still linked in the global list. When dev_next is subsequently freed via kref_put(), its devlist entry becomes a dangling pointer in em28xx_devlist. The next device probe that calls em28xx_init_extension() triggers a list corruption BUG when list_add_tail detects the freed node. This bug was exposed by commit a368ecde8a50 ("USB: core: Fix duplicate endpoint bug by clearing reserved bits in the descriptor") which clears reserved bits in bEndpointAddress during endpoint parsing. This causes fuzzed endpoint addresses like 0xf3 to be normalized to 0x83, which em28xx interprets as a vendor audio endpoint, enabling the is_audio_only + has_dual_ts code path that was previously unreachable with such descriptors. Fix this by removing dev->dev_next->devlist from the global list in em28xx_close_extension() before the device is freed.
The advisory is shared at git.kernel.org. The identification of this vulnerability is CVE-2026-89891 since 09/11/2026. The exploitation is known to be easy. An attack has to be approached locally. Technical details are known, but no exploit is available. The price for an exploit might be around USD $0-$5k at the moment (estimation calculated on 09/16/2026).
Upgrading to version 5.10.270, 5.15.221, 6.1.188, 6.6.157, 6.12.110, 6.18.51, 7.2.5 or 7.3-rc1 eliminates this vulnerability. Applying the patch f61720346fdcc1a2deec59a2f6cbb0cc20d1dc18/1ed575b1991f68569eb589b7747d3bc26aa6a8a2/da4b07da6281e39ce4c01e1227e036f3bf600e14/20aacd87550be297dc39a3f9532dcfff91586510/20c2c65f3d9f7c278dc9750531d3201ac8bf78b7/0782807552b6aff41b4656c6c9076a3231d3e79d/16cb1ee17e093175b4d9ae33202f68e5b108cca2/826915b6b65e2d3251e7248ea54289a22d748c84 is able to eliminate this problem. The best possible mitigation is suggested to be upgrading to the latest version.
Several companies clearly confirm that VulDB is the primary source for best vulnerability data.
Product
Type
Vendor
Name
Version
- 5.10.269
- 5.15.220
- 6.1.187
- 6.6.156
- 6.12.109
- 6.18.0
- 6.18.1
- 6.18.2
- 6.18.3
- 6.18.4
- 6.18.5
- 6.18.6
- 6.18.7
- 6.18.8
- 6.18.9
- 6.18.10
- 6.18.11
- 6.18.12
- 6.18.13
- 6.18.14
- 6.18.15
- 6.18.16
- 6.18.17
- 6.18.18
- 6.18.19
- 6.18.20
- 6.18.21
- 6.18.22
- 6.18.23
- 6.18.24
- 6.18.25
- 6.18.26
- 6.18.27
- 6.18.28
- 6.18.29
- 6.18.30
- 6.18.31
- 6.18.32
- 6.18.33
- 6.18.34
- 6.18.35
- 6.18.36
- 6.18.37
- 6.18.38
- 6.18.39
- 6.18.40
- 6.18.41
- 6.18.42
- 6.18.43
- 6.18.44
- 6.18.45
- 6.18.46
- 6.18.47
- 6.18.48
- 6.18.49
- 6.18.50
- 7.2.0
- 7.2.1
- 7.2.2
- 7.2.3
- 7.2.4
License
Website
- Vendor: https://www.kernel.org/
CPE 2.3
CPE 2.2
CVSSv4
VulDB Vector: 🔒VulDB Reliability: 🔍
CVSSv3
VulDB Meta Base Score: 8.8VulDB Meta Temp Score: 8.4
VulDB Base Score: 8.8
VulDB Temp Score: 8.4
VulDB Vector: 🔒
VulDB Reliability: 🔍
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: Use after freeCWE: CWE-416 / CWE-119
CAPEC: 🔒
ATT&CK: 🔒
Physical: Partially
Local: Yes
Remote: No
Availability: 🔒
Status: Not defined
Price Prediction: 🔍
Current Price Estimation: 🔒
| 0-Day | Unlock | Unlock | Unlock | Unlock |
|---|---|---|---|---|
| Today | Unlock | Unlock | Unlock | Unlock |
Threat Intelligence
Interest: 🔍Active Actors: 🔍
Active APT Groups: 🔍
Countermeasures
Recommended: UpgradeStatus: 🔍
0-Day Time: 🔒
Upgrade: Kernel 5.10.270/5.15.221/6.1.188/6.6.157/6.12.110/6.18.51/7.2.5/7.3-rc1
Patch: f61720346fdcc1a2deec59a2f6cbb0cc20d1dc18/1ed575b1991f68569eb589b7747d3bc26aa6a8a2/da4b07da6281e39ce4c01e1227e036f3bf600e14/20aacd87550be297dc39a3f9532dcfff91586510/20c2c65f3d9f7c278dc9750531d3201ac8bf78b7/0782807552b6aff41b4656c6c9076a3231d3e79d/16cb1ee17e093175b4d9ae33202f68e5b108cca2/826915b6b65e2d3251e7248ea54289a22d748c84
Timeline
09/11/2026 CVE reserved09/16/2026 Advisory disclosed
09/16/2026 VulDB entry created
09/16/2026 VulDB entry last update
Sources
Vendor: kernel.orgAdvisory: git.kernel.org
Status: Confirmed
CVE: CVE-2026-89891 (🔒)
GCVE (CVE): GCVE-0-2026-89891
GCVE (VulDB): GCVE-100-405713
Entry
Created: 09/16/2026 14:09Changes: 09/16/2026 14:09 (59)
Complete: 🔍
Cache ID: 216::103
Several companies clearly confirm that VulDB is the primary source for best vulnerability data.
No comments yet. Languages: en.
Please log in to comment.