Back to CVE records
Medium 5.5Published Mar 25, 2026

CVE-2026-23310bpf/bonding: reject vlan+srcmac xmit_hash_policy change when XDP is loaded

Updated under an hour ago ()

Does this affect you?

It affects Linux and 2 other products. Add what you run to find out whether that includes you.

No exploitation reported and no EPSS estimate yet.

In the Linux kernel, the following vulnerability has been resolved: bpf/bonding: reject vlan+srcmac xmit_hash_policy change when XDP is loaded bond_option_mode_set() already rejects mode changes that would make a loaded XDP program incompatible via bond_xdp_check(). However, bond_option_xmit_hash_policy_set() has no such guard. For 802.3ad and balance-xor modes, bond_xdp_check() returns false when xmit_hash_policy is vlan+srcmac, because the 802.1q payload is usually absent due to hardware offload. This means a user can: 1. Attach a native XDP program to a bond in 802.3ad/balance-xor mode with a compatible xmit_hash_policy (e.g. layer2+3). 2. Change xmit_hash_policy to vlan+srcmac while XDP remains loaded. This leaves bond->xdp_prog set but bond_xdp_check() now returning false for the same device. When the bond is later destroyed, dev_xdp_uninstall() calls bond_xdp_set(dev, NULL, NULL) to remove the program, which hits the bond_xdp_check() guard and returns -EOPNOTSUPP, triggering: WARN_ON(dev_xdp_install(dev, mode, bpf_op, NULL, 0, NULL)) Fix this by rejecting xmit_hash_policy changes to vlan+srcmac when an XDP program is loaded on a bond in 802.3ad or balance-xor mode. commit 39a0876d595b ("net, bonding: Disallow vlan+srcmac with XDP") introduced bond_xdp_check() which returns false for 802.3ad/balance-xor modes when xmit_hash_policy is vlan+srcmac. The check was wired into bond_xdp_set() to reject XDP attachment with an incompatible policy, but the symmetric path -- preventing xmit_hash_policy from being changed to an incompatible value after XDP is already loaded -- was left unguarded in bond_option_xmit_hash_policy_set(). Note: commit 094ee6017ea0 ("bonding: check xdp prog when set bond mode") later added a similar guard to bond_option_mode_set(), but bond_option_xmit_hash_policy_set() remained unprotected.

CVSS
5.5 MEDIUM (v3.1, NVD)CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
Weakness (CWE)
Not given
Known exploited
Not in CISA's KEV catalog
EPSS (exploitation in the next 30 days)
Not loaded for this CVE
Assigned by
Linux
NVD analysis
Modified
Record last updated
Oct 15, 2026
First seen by InfoSec Signals
Oct 9, 2026

Affected products

Affected products
Linux Linux
linux:linux (from the name)
39a0876d595bd7c7512782dfcce0ee66f65bf221 builds before 0a80e6ecaf669c77260b44254f4a84d76bf83e89; 39a0876d595bd7c7512782dfcce0ee66f65bf221 builds before 5c262bd0e39320a6d6c8277cb8349ce21c01b8c1; from 39a0876d595bd7c7512782dfcce0ee66f65bf221 before d36ad7e126c6a0c5f699583309ccc37e3a3263ea; 39a0876d595bd7c7512782dfcce0ee66f65bf221 builds before 0ace8027e41f6f094ef6c1aca42d2ed6cd7af54e; from 39a0876d595bd7c7512782dfcce0ee66f65bf221 before e85fa809e507b9d8eff4840888b8c727e4e8448c; from 39a0876d595bd7c7512782dfcce0ee66f65bf221 before 479d589b40b836442bbdadc3fdb37f001bb67f26
CNA record
Siemens SIMATIC S7-1500 TM MFP - GNU/Linux subsystem
siemens:simatic_s7_1500_tm_mfp_gnu_linux_subsystem (from the name)
all versions
CISA ADP
linux linux_kernel
linux:linux_kernel
from 5.15 before 6.6.130; from 6.7 before 6.12.77; from 6.13 before 6.18.17; from 6.19 before 6.19.7; 7.0; 7.0
NVD

References

  • patch
  • patch
  • patch
  • patch
  • patch

The CVE record is authoritative. Products marked “from the name” were identified from the CNA's free-text names, not a CPE, and are matched less certainly. This product uses the NVD API but is not endorsed or certified by the NVD.

Your cookie choices
We use essential cookies to run this site, and, only with your consent, an advertising cookie from Google to measure whether our ads lead to sign-ups and subscriptions. See our for details.