CVE-2026-80615

Source
https://cve.org/CVERecord?id=CVE-2026-80615
Import Source
https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-80615.json
JSON Data
https://api.osv.dev/v1/vulns/CVE-2026-80615
Downstream
Published
2026-08-28T06:48:36.315Z
Modified
2026-08-30T03:48:20.785854028Z
Severity
  • 8.2 (High) CVSS_V3 - CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:H CVSS Calculator
Summary
net: dst_metadata: fix false-positive memcpy overflow in tun_dst_unclone
Details

In the Linux kernel, the following vulnerability has been resolved:

net: dstmetadata: fix false-positive memcpy overflow in tundst_unclone

kmallocflex() in metadatadst_alloc() sets __countedby for the structure to the optionslen, which is then initialized to zero. Later, we're initializing the structure by copying the tunnel info together with the options, and this triggers a warning for a potential memcpy overflow, since the compiler estimates that the options can't fit into the structure, even though the memory for them is actually allocated.

memcpy: detected buffer overflow: 104 byte write of buffer size 96 WARNING: CPU: X PID: Y at lib/string_helpers.c:1036 _fortifyreport skbtunnelinfounclone+0x179/0x190 genevexmit+0x7fe/0xe00

The issue is triggered when built with clang and source fortification.

Fix that by doing the copy in two stages: first - the main data with the options_len, then the options. This way the correct length should be known at the time of the copy.

It would be better if the optionslen never changed after allocation, but the allocation code is a little separate from the initialization and it would be awkward and potentially dangerous to return a struct with optionslen set to a non-zero value from the metadatadstalloc().

Another option would be to use iptunnelinfooptsset(), but it is doing too many unnecessary operations for the use case here.

Database specific
{
    "osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/80xxx/CVE-2026-80615.json",
    "cna_assigner": "Linux"
}
References

Affected packages

Git / git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git

Affected ranges

Type
GIT
Repo
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
Events
Introduced
69050f8d6d075dc01af7a5f2f550a8067510366f
Fixed
7ce31739fe88a558370135db95bbeec1e7ddfc29
Fixed
4c6d43db2a4d2cef3921e885cf34798f790d34ea

Database specific

source
"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-80615.json"

Linux / Kernel

Package

Name
Kernel

Affected ranges

Type
ECOSYSTEM
Events
Introduced
7.0.0
Fixed
7.1.5

Database specific

source
"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-80615.json"