CVE-2026-80844: Linux kernel · xfrm: ah6: validate routing header segments_left
Source GCVE Database
Not known to be exploited.
Data as of 26 Oct 2026, 13:47 UTC
Rated by Threat Radar · CVSS not yet scored by NVD
- EPSS
- 0.4% chance of exploitation in 30 days – higher than 37% of CVEsExploit Prediction Scoring System: the likelihood attackers will use this flaw soon.
Exploitation evidence
Disclosed: evidence found.
CVE published 4 Sep 2026
Detectable: no evidence on record.
No public nuclei template indexed
Weaponised: no evidence on record.
No public exploit code indexed in Metasploit or Exploit-DB
Exploited in the wildExploited: no evidence on record.
Not in CISA KEV and no source reports exploitation
Observed by OffSeq MirageSeen by Mirage: no evidence on record.
No attack traffic recorded by OffSeq Mirage sensors
A missing step is not evidence of safety. Sources: cve.org (opens in a new tab), the Metasploit, Exploit-DB and nuclei-templates index as of 26 Oct 2026.
Description
In the Linux kernel, the following vulnerability has been resolved: xfrm: ah6: validate routing header segments_left AH6 rearranges routing-header addresses before computing or verifying the ICV. ipv6_rearrange_rthdr() assumes that segments_left is not larger than the number of addresses described by the routing header's hdrlen field. That assumption does not hold for raw IPv6 HDRINCL packets. A packet with hdrlen equal to 2 describes one address, but can carry an arbitrary segments_left value. With segments_left equal to 255, the function moves its address pointer 4,064 bytes backwards and passes a 4,064-byte length to memmove(), resulting in an out-of-bounds access. Validate the invariant locally before modifying the routing header or performing any address-pointer arithmetic, and propagate malformed-header errors to the existing AH6 input and output error paths.
References
- nvd.nist.gov/vuln/detail/CVE-2026-80844 (opens in a new tab)
- git.kernel.org/stable/c/0bf11081ad3753938a2b48723ce6298dbac743a1 (opens in a new tab)
- git.kernel.org/stable/c/1516e31ac458a738be485620579d8f7fb2700fcb (opens in a new tab)
- git.kernel.org/stable/c/1b7e066eabcc7d6d8f476c34739b45932f2f4c31 (opens in a new tab)
- git.kernel.org/stable/c/2dc650956e4e163b879b3fb1027f9557abc5c985 (opens in a new tab)
- git.kernel.org/stable/c/46640c814f25f096b0b0045ca50e1b7030cd8a30 (opens in a new tab)
- git.kernel.org/stable/c/48b0e36cf54358276ee7aa897034c973097d2bc9 (opens in a new tab)
- git.kernel.org/stable/c/6733ae71268a27d598cfb3f3339a3c950b9b656d (opens in a new tab)
- git.kernel.org/stable/c/7bad4bda74dc4713f398d3b7624ff05478e3a568 (opens in a new tab)
- git.kernel.org/stable/c/f00df8500e5a36ba70d336fd34bd2152ea074e5f (opens in a new tab)