KernelScan.io

CRITICAL Introduced in 2.6.36

ipvs SyncedConn UAF

CVE-2026-80714

CVSS 9.8 / 10.0 NVD

CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H

KernelScan AI6.7MEDIUM

01

In the Linux kernel, the following vulnerability has been resolved: ipvs: do not propagate one-packet flag to synced conns Synced connections can be created before their destination exists. When the destination is later added, ip_vs_bind_dest() copies connection flags from the destination into cp->flags. IP_VS_CONN_F_ONE_PACKET connections are not synced. If a synced connection inherits IP_VS_CONN_F_ONE_PACKET while it is already hashed, expiry can treat it as a one-packet connection and skip unlinking the existing conn_tab node, leaving stale hash nodes pointing at a freed struct ip_vs_conn. Drop IP_VS_CONN_F_ONE_PACKET from destination flags when binding synced connections.

02

Engine v0.6.0

Risk summary

An administrator who configures IPVS with connection synchronization and one-packet scheduling can trigger a use-after-free in the kernel's connection hash table. When synced connections inherit the one-packet flag and later expire, they are freed without being unlinked, leaving stale pointers that cause kernel crashes or potential code execution. This requires CAP_NET_ADMIN to set up the vulnerable configuration.

Affectednet/netfilter/ipvs/ip_vs_conn.c (IPVS connection management)

Vulnerability analysis

When IPVS connection synchronization is active, a synced connection can be created before its destination exists. When that destination is later added with one-packet scheduling enabled, the binding process copies the one-packet flag into the already-hashed synced connection. On expiry, the one-packet flag causes the kernel to skip unlinking the connection from the global hash table, leaving stale hash nodes pointing at freed memory. The fix strips the one-packet flag from the destination flags before they are applied to a synced connection, so the expiry path always correctly unlinks the connection. This vulnerability is reachable from a local context requiring CAP_NET_ADMIN in the init namespace to configure IPVS with sync and one-packet scheduling, combined with network traffic flowing through the load balancer to create the synced connections.

03

BranchIntroducedFixed inPatch commit
5.102.6.365.10.26506d1d9b56ef8
5.152.6.365.15.216acbdc276091b
6.12.6.366.1.183300348e3ba15
6.122.6.366.12.1034649e6faeecd
6.182.6.366.18.44b5ee5b266f83
6.62.6.366.6.15144af98cc7d5e
7.12.6.367.1.8e7acfc990c29
mainline2.6.367.2a63d2dbaeb50
cip/4.192.6.364.19.325-cip13655f6f9cce4f6
cip/4.19-rt2.6.364.19.325-cip136-rt5055f6f9cce4f6
cip/4.42.6.364.4.302-cip1152befc65d98f2
cip/4.4-rt2.6.364.4.302-cip115-rt632befc65d98f2
cip/5.102.6.365.10.268-cip7706d1d9b56ef8
cip/5.10-rt2.6.365.10.268-cip77-rt3406d1d9b56ef8
cip/6.12.6.366.1.187-cip60300348e3ba15
cip/6.1-rt2.6.366.1.189-cip61-rt32300348e3ba15
cip/6.122.6.366.12.104-cip304649e6faeecd

04

State of the newest release of each Civil Infrastructure Platform SLTS tree, from CIP's own fix records.

CIP treeState
cip/6.12Fixed in 6.12.104-cip30
cip/6.1Fixed in 6.1.187-cip60
cip/6.1-rtFixed in 6.1.189-cip61-rt32
cip/5.10Fixed in 5.10.268-cip77
cip/5.10-rtFixed in 5.10.268-cip77-rt34
cip/4.19Fixed in 4.19.325-cip136
cip/4.19-rtFixed in 4.19.325-cip136-rt50
cip/4.4Fixed in 4.4.302-cip115
cip/4.4-rtFixed in 4.4.302-cip115-rt63