CVEvulnerability
CVE-2026-80901
- Status
- Received
- Published
- 2026-09-04
- Last modified
- 2026-09-04
- Assigner
- 416baaa9-dc9f-4396-8d5f-8c081fb06d67
Description
In the Linux kernel, the following vulnerability has been resolved:
ipvs: fix the checksum validations
ip_vs_in_icmp_v6() is missing checksum validation for ICMPv6
packets from clients. In fact, as for TCP/UDP we should
validate the checksum for ICMP packets only when we
mangle the packets on MASQ or on reply for tunnel.
Also, Sashiko points out that handle_response_icmp() being
common for IPv4 and IPv6 is missing the pseudo-header
calculation while validating ICMPv6 messages from real
servers which is a problem if checksum is not validated
by the hardware.
Fix the problems by creating ip_vs_checksum_common_check()
helper and use it for TCP/UDP/ICMP both for IPv4 and IPv6.
Rely on the nf_checksum() for validating the ICMP messages
but use it also for TCP and UDP.
Use correct IP offset for IP_VS_DBG_RL_PKT for TCP/UDP/SCTP.
IPVS packets (TCP/UDP/SCTP/ICMP) do not need checksum
validation on LOCAL_OUT (local clients or local real
servers) and on FORWARD (traffic from servers on LAN).
Do it only on LOCAL_IN, in case nf_checksum() is not
called on PRE_ROUTING.
Also, ip_vs_checksum_complete() can be marked static.
References
- https://git.kernel.org/stable/c/00eb23829fd08df1b5e057cb6b625996a70e7e65 git.kernel.org
- https://git.kernel.org/stable/c/5558a85add073215b298f3e044ff9a6d86d714ae git.kernel.org
- https://git.kernel.org/stable/c/9cbe2c0fdb71904ee929b1851cdc1c73341a03c0 git.kernel.org
- https://git.kernel.org/stable/c/b3869d9b54e76dff64118dee4c8fd9302fcd5171 git.kernel.org
- https://git.kernel.org/stable/c/d418d73acf8be62744dc47359dfdde8c2148845d git.kernel.org
- https://git.kernel.org/stable/c/e876b75b9020a97bbdc79721e7fc749024891c65 git.kernel.org