CVEvulnerability
CVE-2026-80844
- Status
- Received
- Published
- 2026-09-04
- Last modified
- 2026-10-19
- Assigner
- 416baaa9-dc9f-4396-8d5f-8c081fb06d67
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
- https://git.kernel.org/stable/c/0bf11081ad3753938a2b48723ce6298dbac743a1 git.kernel.org
- https://git.kernel.org/stable/c/1516e31ac458a738be485620579d8f7fb2700fcb git.kernel.org
- https://git.kernel.org/stable/c/1b7e066eabcc7d6d8f476c34739b45932f2f4c31 git.kernel.org
- https://git.kernel.org/stable/c/2dc650956e4e163b879b3fb1027f9557abc5c985 git.kernel.org
- https://git.kernel.org/stable/c/46640c814f25f096b0b0045ca50e1b7030cd8a30 git.kernel.org
- https://git.kernel.org/stable/c/48b0e36cf54358276ee7aa897034c973097d2bc9 git.kernel.org
- https://git.kernel.org/stable/c/6733ae71268a27d598cfb3f3339a3c950b9b656d git.kernel.org
- https://git.kernel.org/stable/c/7bad4bda74dc4713f398d3b7624ff05478e3a568 git.kernel.org
- https://git.kernel.org/stable/c/f00df8500e5a36ba70d336fd34bd2152ea074e5f git.kernel.org