Linux Kernel up to 7.1.8 Net Header Validation dev_validate_header hard_header_len out-of-bounds write

| CVSS Meta Temp Score | Current Exploit Price (≈) | CTI Interest Score |
|---|---|---|
| 8.7 | $5k-$25k | 1.40 |
Summary
A vulnerability, which was classified as very critical, has been found in Linux Kernel up to 7.1.8. This affects the function dev_validate_header of the component Net Header Validation. This manipulation of the argument hard_header_len causes out-of-bounds write.
The identification of this vulnerability is CVE-2026-80731. It is possible to initiate the attack remotely. There is no exploit available.
Details
A vulnerability was found in Linux Kernel up to 7.1.8. It has been declared as very critical. Affected by this vulnerability is the function dev_validate_header of the component Net Header Validation. The manipulation of the argument hard_header_len with an unknown input leads to a out-of-bounds write vulnerability. The CWE definition for the vulnerability is CWE-787. The product writes data past the end, or before the beginning, of the intended buffer. As an impact it is known to affect confidentiality, integrity, and availability. The summary by CVE is:
In the Linux kernel, the following vulnerability has been resolved: net: remove CAP_SYS_RAWIO zero-padding in dev_validate_header dev_validate_header() reads dev->hard_header_len directly when zero-padding short link layer headers for CAP_SYS_RAWIO holders: if (capable(CAP_SYS_RAWIO)) { memset(ll_header + len, 0, dev->hard_header_len - len); return true; } Packet send paths call dev_validate_header() on skbs whose headroom was allocated from an earlier hard_header_len read. If the device is reconfigured so that dev->hard_header_len increases before validation, the memset writes past the reserved buffer, an out-of-bounds write. This out-of-bounds write is masked in some SOCK_RAW paths today because the same concurrent increase can first make skb_push() exceed the reserved headroom and trigger skb_under_panic(). Remove the zero-padding branch before making those hard_header_len reads consistent, so the snapshot fixes do not turn a loud panic into a silent overwrite. This path is only reached for variable length L2 protocols, where len < hard_header_len but len >= min_header_len. No remaining in-tree variable length L2 protocol implements header_ops->validate, and the CAP_SYS_RAWIO bypass that zero-pads and accepts short headers has no real value beyond allowing testing of intentionally malformed input. Drop the CAP_SYS_RAWIO branch. The remaining reads of dev->hard_header_len in dev_validate_header() are comparisons only and have no memory safety impact.
The advisory is shared at git.kernel.org. This vulnerability is known as CVE-2026-80731 since 08/26/2026. The exploitation appears to be easy. The attack can be launched remotely. Additional levels of successful authentication are needed for exploitation. 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 09/03/2026).
Upgrading to version 3.2.81, 5.10.265, 5.15.216, 6.1.183, 6.6.152, 6.12.104, 6.18.45 or 7.1.9 eliminates this vulnerability. Applying the patch 53fd7f912c0877647d6a1e1877f5ea8535ee0b4a/fa6d98dd925e72fc028b26a0cbbff9d2f0601ff6/8fc9816404166a90ed8d544dc52482fafffb6d9f/b0f92a5731dc82556a9ae005cc35f71ab136307b/99df6b7a713f96eda206680d100b76e15f9d9b69/74e035f07f53feca09e2352e77fccb09cad5e208/dbb30dc943a93e083f1e531bfdc6779e57de40d0/fc902f52a02298c7432b2334c0c82a2885a1a8b6/3b9a324e646d3657a8d9806dfbfe4f3e4066e882 is able to eliminate this problem.
Several companies clearly confirm that VulDB is the primary source for best vulnerability data.
Product
Type
Vendor
Name
Version
- 3.2.0
- 3.2.1
- 3.2.2
- 3.2.3
- 3.2.4
- 3.2.5
- 3.2.6
- 3.2.7
- 3.2.8
- 3.2.9
- 3.2.10
- 3.2.11
- 3.2.12
- 3.2.13
- 3.2.14
- 3.2.15
- 3.2.16
- 3.2.17
- 3.2.18
- 3.2.19
- 3.2.20
- 3.2.21
- 3.2.22
- 3.2.23
- 3.2.24
- 3.2.25
- 3.2.26
- 3.2.27
- 3.2.28
- 3.2.29
- 3.2.30
- 3.2.31
- 3.2.32
- 3.2.33
- 3.2.34
- 3.2.35
- 3.2.36
- 3.2.37
- 3.2.38
- 3.2.39
- 3.2.40
- 3.2.41
- 3.2.42
- 3.2.43
- 3.2.44
- 3.2.45
- 3.2.46
- 3.2.47
- 3.2.48
- 3.2.49
- 3.2.50
- 3.2.51
- 3.2.52
- 3.2.53
- 3.2.54
- 3.2.55
- 3.2.56
- 3.2.57
- 3.2.58
- 3.2.59
- 3.2.60
- 3.2.61
- 3.2.62
- 3.2.63
- 3.2.64
- 3.2.65
- 3.2.66
- 3.2.67
- 3.2.68
- 3.2.69
- 3.2.70
- 3.2.71
- 3.2.72
- 3.2.73
- 3.2.74
- 3.2.75
- 3.2.76
- 3.2.77
- 3.2.78
- 3.2.79
- 3.2.80
- 5.10.264
- 5.15.215
- 6.1.182
- 6.6.151
- 6.12.103
- 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
- 7.1.0
- 7.1.1
- 7.1.2
- 7.1.3
- 7.1.4
- 7.1.5
- 7.1.6
- 7.1.7
- 7.1.8
License
Website
- Vendor: https://www.kernel.org/
CPE 2.3
CPE 2.2
CVSSv4
VulDB Vector: 🔒VulDB Reliability: 🔍
CVSSv3
VulDB Meta Base Score: 9.1VulDB Meta Temp Score: 8.7
VulDB Base Score: 9.1
VulDB Temp Score: 8.7
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: Out-of-bounds writeCWE: CWE-787 / CWE-119
CAPEC: 🔒
ATT&CK: 🔒
Physical: No
Local: No
Remote: Yes
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 3.2.81/5.10.265/5.15.216/6.1.183/6.6.152/6.12.104/6.18.45/7.1.9
Patch: 53fd7f912c0877647d6a1e1877f5ea8535ee0b4a/fa6d98dd925e72fc028b26a0cbbff9d2f0601ff6/8fc9816404166a90ed8d544dc52482fafffb6d9f/b0f92a5731dc82556a9ae005cc35f71ab136307b/99df6b7a713f96eda206680d100b76e15f9d9b69/74e035f07f53feca09e2352e77fccb09cad5e208/dbb30dc943a93e083f1e531bfdc6779e57de40d0/fc902f52a02298c7432b2334c0c82a2885a1a8b6/3b9a324e646d3657a8d9806dfbfe4f3e4066e882
Timeline
08/26/2026 CVE reserved09/03/2026 Advisory disclosed
09/03/2026 VulDB entry created
09/03/2026 VulDB entry last update
Sources
Vendor: kernel.orgAdvisory: git.kernel.org
Status: Confirmed
CVE: CVE-2026-80731 (🔒)
GCVE (CVE): GCVE-0-2026-80731
GCVE (VulDB): GCVE-100-398329
Entry
Created: 09/03/2026 10:48Changes: 09/03/2026 10:48 (60)
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.