Linux Kernel up to 7.0.12 USB get_manuf_info Size heap-based overflow

| CVSS Meta Temp Score | Current Exploit Price (≈) | CTI Interest Score |
|---|---|---|
| 7.2 | $5k-$25k | 0.00 |
Summary
A vulnerability was found in Linux Kernel up to 7.0.12. It has been classified as critical. The impacted element is the function get_manuf_info of the component USB. The manipulation of the argument Size leads to heap-based overflow.
This vulnerability is documented as CVE-2026-53196. There is not any exploit available.
Upgrading the affected component is recommended.
Details
A vulnerability was found in Linux Kernel up to 7.0.12 and classified as critical. This issue affects the function get_manuf_info of the component USB. The manipulation of the argument Size with an unknown input leads to a heap-based overflow vulnerability. Using CWE to declare the problem leads to CWE-122. A heap overflow condition is a buffer overflow, where the buffer that can be overwritten is allocated in the heap portion of memory, generally meaning that the buffer was allocated using a routine such as malloc(). Impacted is confidentiality, integrity, and availability. The summary by CVE is:
In the Linux kernel, the following vulnerability has been resolved: USB: serial: io_ti: fix heap overflow in get_manuf_info() get_manuf_info() reads le16_to_cpu(rom_desc->Size) bytes from the device I2C EEPROM into a buffer allocated with kmalloc_obj(), which is sizeof(struct edge_ti_manuf_descriptor) = 10 bytes. The Size field comes from the device and is only validated (in check_i2c_image()) to make sure the descriptor fits within TI_MAX_I2C_SIZE (16384 bytes), not against the destination buffer size. A malicious USB device can therefore set Size to any value up to 16377, causing a heap overflow of up to 16367 bytes when plugged into a host running this driver. valid_csum() is called after read_rom() and also iterates buffer[0..Size-1], compounding the out-of-bounds access. Fix by rejecting descriptors with unexpected length before calling read_rom(). [ johan: amend commit message; also check for short descriptors ]
The advisory is shared at git.kernel.org. The identification of this vulnerability is CVE-2026-53196 since 06/09/2026. The exploitation is known to be easy. Technical details are known, but no exploit is available. The price for an exploit might be around USD $5k-$25k at the moment (estimation calculated on 07/08/2026).
The vulnerability scanner Nessus provides a plugin with the ID 323538 (Linux Distros Unpatched Vulnerability : CVE-2026-53196), which helps to determine the existence of the flaw in a target environment.
Upgrading to version 5.10.259, 5.15.210, 6.1.176, 6.6.143, 6.12.94, 6.18.36 or 7.0.13 eliminates this vulnerability. Applying the patch e168db91442b94e64fa82a7dd297983d48ea5cc0/561edb021486e6723d841926aa4b48097da06190/cfd634f6dfd40c49a84f9bddc2867a80e2e2623a/d92f17af7097d10bdeddf26f66f34b354104b277/b849f30d1a9e66aae6b715aaef66e427390cb081/f96cf7bf9fbf15d7fcf0c91fec47ba8a010369ea/d214d2341d4f9f447e36a7d012cdf6a6631a55f1/183c1076eca43bbb3e7bdf597456f91d81c73e74 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 (323538) and CERT Bund (WID-SEC-2026-2077). Several companies clearly confirm that VulDB is the primary source for best vulnerability data.
Affected
- Open Source Linux Kernel
Product
Type
Vendor
Name
Version
- 5.10.258
- 5.15.209
- 6.1.175
- 6.6.142
- 6.12.0
- 6.12.1
- 6.12.2
- 6.12.3
- 6.12.4
- 6.12.5
- 6.12.6
- 6.12.7
- 6.12.8
- 6.12.9
- 6.12.10
- 6.12.11
- 6.12.12
- 6.12.13
- 6.12.14
- 6.12.15
- 6.12.16
- 6.12.17
- 6.12.18
- 6.12.19
- 6.12.20
- 6.12.21
- 6.12.22
- 6.12.23
- 6.12.24
- 6.12.25
- 6.12.26
- 6.12.27
- 6.12.28
- 6.12.29
- 6.12.30
- 6.12.31
- 6.12.32
- 6.12.33
- 6.12.34
- 6.12.35
- 6.12.36
- 6.12.37
- 6.12.38
- 6.12.39
- 6.12.40
- 6.12.41
- 6.12.42
- 6.12.43
- 6.12.44
- 6.12.45
- 6.12.46
- 6.12.47
- 6.12.48
- 6.12.49
- 6.12.50
- 6.12.51
- 6.12.52
- 6.12.53
- 6.12.54
- 6.12.55
- 6.12.56
- 6.12.57
- 6.12.58
- 6.12.59
- 6.12.60
- 6.12.61
- 6.12.62
- 6.12.63
- 6.12.64
- 6.12.65
- 6.12.66
- 6.12.67
- 6.12.68
- 6.12.69
- 6.12.70
- 6.12.71
- 6.12.72
- 6.12.73
- 6.12.74
- 6.12.75
- 6.12.76
- 6.12.77
- 6.12.78
- 6.12.79
- 6.12.80
- 6.12.81
- 6.12.82
- 6.12.83
- 6.12.84
- 6.12.85
- 6.12.86
- 6.12.87
- 6.12.88
- 6.12.89
- 6.12.90
- 6.12.91
- 6.12.92
- 6.12.93
- 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
- 7.0.0
- 7.0.1
- 7.0.2
- 7.0.3
- 7.0.4
- 7.0.5
- 7.0.6
- 7.0.7
- 7.0.8
- 7.0.9
- 7.0.10
- 7.0.11
- 7.0.12
License
Website
- Vendor: https://www.kernel.org/
CPE 2.3
CPE 2.2
CVSSv4
VulDB Vector: 🔒VulDB Reliability: 🔍
CVSSv3
VulDB Meta Base Score: 7.4VulDB Meta Temp Score: 7.2
VulDB Base Score: 8.0
VulDB Temp Score: 7.6
VulDB Vector: 🔒
VulDB Reliability: 🔍
NVD Base Score: 6.8
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: Heap-based overflowCWE: CWE-122 / CWE-119
CAPEC: 🔒
ATT&CK: 🔒
Physical: Yes
Local: Partially
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: 323538
Nessus Name: Linux Distros Unpatched Vulnerability : CVE-2026-53196
Threat Intelligence
Interest: 🔍Active Actors: 🔍
Active APT Groups: 🔍
Countermeasures
Recommended: UpgradeStatus: 🔍
0-Day Time: 🔒
Upgrade: Kernel 5.10.259/5.15.210/6.1.176/6.6.143/6.12.94/6.18.36/7.0.13
Patch: e168db91442b94e64fa82a7dd297983d48ea5cc0/561edb021486e6723d841926aa4b48097da06190/cfd634f6dfd40c49a84f9bddc2867a80e2e2623a/d92f17af7097d10bdeddf26f66f34b354104b277/b849f30d1a9e66aae6b715aaef66e427390cb081/f96cf7bf9fbf15d7fcf0c91fec47ba8a010369ea/d214d2341d4f9f447e36a7d012cdf6a6631a55f1/183c1076eca43bbb3e7bdf597456f91d81c73e74
Timeline
06/09/2026 CVE reserved06/25/2026 Advisory disclosed
06/25/2026 VulDB entry created
07/08/2026 VulDB entry last update
Sources
Vendor: kernel.orgAdvisory: git.kernel.org
Status: Confirmed
CVE: CVE-2026-53196 (🔒)
GCVE (CVE): GCVE-0-2026-53196
GCVE (VulDB): GCVE-100-373721
CERT Bund: WID-SEC-2026-2077 - Linux Kernel: Mehrere Schwachstellen
Entry
Created: 06/25/2026 12:10Updated: 07/08/2026 12:05
Changes: 06/25/2026 12:10 (60), 06/29/2026 06:16 (7), 06/29/2026 17:53 (2), 07/08/2026 12:05 (11)
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.