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 Details
- CVSS 3.1 Base Score: 5.5
- CVSS 3.1 Vector: (CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H)
Covered by Rapid7
| Product | Vendor Advisory | Solution File | Added | Published |
|---|---|---|---|---|
| Amazon_linux_2023 | — | Upgrade kernel6.18-tools-debuginfoUpgrade kernel6.12-libbpf-debuginfoUpgrade kernel6.18-develUpgrade kernel6.18-modules-extra-commonUpgrade bpftool6.18-debuginfoUpgrade kernel6.12-headersUpgrade kernel6.12Upgrade python3-perf6.18Upgrade kernel6.12-libbpf-develUpgrade bpftool6.12-debuginfoUpgrade perf6.12Upgrade kernel6.18-debuginfo-common-aarch64Upgrade kernel6.18-debuginfo-common-x86_64Upgrade bpftool6.18Upgrade bpftool6.12Upgrade kernel6.18-libbpf-staticUpgrade kernel6.18-debuginfoUpgrade python3-perf6.18-debuginfoUpgrade kernel6.12-tools-debuginfoUpgrade kernel6.12-debuginfo-common-x86_64Upgrade perf6.12-debuginfoUpgrade kernel6.18-toolsUpgrade perf6.18-debuginfoUpgrade kernel6.18-tools-develUpgrade kernel6.18-headersUpgrade kernel6.18-libbpfUpgrade kernel6.18Upgrade kernel6.12-develUpgrade python3-perf6.12Upgrade kernel6.12-tools-develUpgrade perf6.18Upgrade kernel6.12-libbpf-staticUpgrade kernel-livepatch-6.18.20-20.229Upgrade python3-perf6.12-debuginfoUpgrade kernel-livepatch-6.12.77-99.140Upgrade kernel6.18-modules-extraUpgrade kernel6.12-modules-extraUpgrade kernel6.18-libbpf-develUpgrade kernel6.12-debuginfoUpgrade kernel6.12-modules-extra-commonUpgrade kernel6.18-libbpf-debuginfoUpgrade kernel6.12-toolsUpgrade kernel6.12-libbpfUpgrade kernel6.12-debuginfo-common-aarch64 | Apr 9, 2026 | Mar 25, 2026 |
| Debian | — | Upgrade linux-6.1Upgrade linux | Jul 5, 2026 | Jul 5, 2026 |
| Redhat_linux | — | No solution exists | Jul 17, 2026 | Mar 25, 2026 |
| Ubuntu | — | Upgrade linux-image-azure-fde-6.8Upgrade linux-image-raspi-realtimeUpgrade linux-image-6.8.0-136-lowlatencyUpgrade linux-image-virtualUpgrade linux-image-azure-fips-6.8Upgrade linux-image-nvidia-64k-6.8Upgrade linux-image-nvidia-tegra-rt-6.8Upgrade linux-image-xilinx-zynqmpUpgrade linux-image-laptop-23.10Upgrade linux-image-xilinxUpgrade linux-image-6.8.0-1059-nvidia-lowlatencyUpgrade linux-image-realtimeUpgrade linux-image-aws-64k-lts-24.04Upgrade linux-image-nvidia-lowlatency-64kUpgrade linux-image-6.8.0-1061-aws-fipsUpgrade linux-image-6.8.0-1033-xilinxUpgrade linux-image-aws-64kUpgrade linux-image-nvidia-lowlatency-64k-6.8Upgrade linux-image-oem-22.04dUpgrade linux-image-6.8.0-1064-gcp-64kUpgrade linux-image-6.8.0-1064-gcp-fipsUpgrade linux-image-azure-6.8Upgrade linux-image-6.8.0-1059-nvidiaUpgrade linux-image-6.8.0-1064-gcpUpgrade linux-image-awsUpgrade linux-image-gcpUpgrade linux-image-gcp-lts-24.04Upgrade linux-image-oracleUpgrade linux-image-aws-lts-24.04Upgrade linux-image-aws-fips-6.8Upgrade linux-image-gcp-6.8Upgrade linux-image-intel-iot-realtimeUpgrade linux-image-fipsUpgrade linux-image-lowlatency-64k-6.8Upgrade linux-image-6.8.0-136-generic-64kUpgrade linux-image-6.8.0-1059-gkeUpgrade linux-image-nvidia-tegra-rtUpgrade linux-image-nvidia-64k-hwe-22.04Upgrade linux-image-oem-20.04Upgrade linux-image-generic-64k-hwe-22.04Upgrade linux-image-6.8.0-136-fipsUpgrade linux-image-oem-20.04dUpgrade linux-image-gkeUpgrade linux-image-6.8.0-136-lowlatency-64kUpgrade linux-image-kvmUpgrade linux-image-6.8.0-2050-raspi-realtimeUpgrade linux-image-6.8.0-1061-awsUpgrade linux-image-lowlatency-hwe-22.04Upgrade linux-image-6.8.1-1056-realtimeUpgrade linux-image-realtime-hwe-22.04Upgrade linux-image-lowlatency-64k-hwe-22.04Upgrade linux-image-nvidia-hwe-22.04Upgrade linux-image-gcp-64k-6.8Upgrade linux-image-gcp-64k-lts-24.04Upgrade linux-image-intel-iotgUpgrade linux-image-generic-hwe-22.04Upgrade linux-image-gke-64k-6.8Upgrade linux-image-genericUpgrade linux-image-azureUpgrade linux-image-6.8.0-1063-azureUpgrade linux-image-oracle-6.8Upgrade linux-image-ibm-6.8Upgrade linux-image-gcp-64kUpgrade linux-image-6.8.0-1059-nvidia-lowlatency-64kUpgrade linux-image-fips-6.8Upgrade linux-image-6.8.0-1062-azure-fdeUpgrade linux-image-6.8.0-1059-nvidia-64kUpgrade linux-image-6.8.0-1058-oracleUpgrade linux-image-azure-lts-24.04Upgrade linux-image-6.8.0-1061-ibmUpgrade linux-image-6.8.0-1046-gkeopUpgrade linux-image-generic-6.8Upgrade linux-image-raspi-6.8Upgrade linux-image-gkeopUpgrade linux-image-oem-22.04Upgrade linux-image-nvidia-lowlatencyUpgrade linux-image-generic-64kUpgrade linux-image-gcp-fipsUpgrade linux-image-6.8.0-1061-raspiUpgrade linux-image-gke-6.8Upgrade linux-image-aws-fipsUpgrade linux-image-6.8.0-1030-nvidia-tegra-rtUpgrade linux-image-oem-22.04aUpgrade linux-image-nvidiaUpgrade linux-image-nvidia-tegraUpgrade linux-image-oracle-64kUpgrade linux-image-6.8.0-1030-nvidia-tegraUpgrade linux-image-oem-20.04cUpgrade linux-image-azure-fde-lts-24.04Upgrade linux-image-aws-64k-6.8Upgrade linux-image-virtual-6.8Upgrade linux-image-oem-22.04cUpgrade linux-image-6.8.0-1063-azure-fipsUpgrade linux-image-6.8.0-1058-oracle-64kUpgrade linux-image-nvidia-64kUpgrade linux-image-generic-64k-6.8Upgrade linux-image-oracle-64k-6.8Upgrade linux-image-nvidia-6.8Upgrade linux-image-oem-22.04bUpgrade linux-image-oem-20.04bUpgrade linux-image-xilinx-6.8Upgrade linux-image-6.8.0-1059-gke-64kUpgrade linux-image-lowlatency-64kUpgrade linux-image-azure-fdeUpgrade linux-image-oracle-lts-24.04Upgrade linux-image-gkeop-6.8Upgrade linux-image-gcp-fips-6.8Upgrade linux-image-6.8.0-136-genericUpgrade linux-image-6.8.0-1061-aws-64kUpgrade linux-image-virtual-hwe-22.04Upgrade linux-image-raspi-realtime-6.8Upgrade linux-image-raspiUpgrade linux-image-oracle-64k-lts-24.04Upgrade linux-image-nvidia-lowlatency-6.8Upgrade linux-image-ibm-classicUpgrade linux-image-aws-6.8Upgrade linux-image-azure-fipsUpgrade linux-image-ibmUpgrade linux-image-gke-64kUpgrade linux-image-generic-lpaeUpgrade linux-image-nvidia-tegra-6.8Upgrade linux-image-lowlatency-6.8Upgrade linux-image-lowlatencyUpgrade linux-image-ibm-lts-24.04Upgrade linux-image-realtime-6.8.1 | Jul 21, 2026 | Jul 20, 2026 |
| Vmware Photon_os | — | Use 'tdnf update' to upgrade all packages to the latest version. | Jul 1, 2026 | Mar 25, 2026 |
Prioritise with Active Threat Intelligence
With curated Threat Intelligence, you can see which vulnerabilities truly put you at risk, prioritize what matters most, and act before attackers do.
Explore Intelligence Hub