In the Linux kernel, the following vulnerability has been resolved:
net/mlx5e: macsec: fix use-after-free of metadata_dst on RX SC delete
When an offloaded MACsec RX SC is deleted, macsec_del_rxsc_ctx() freed the per-SC metadata_dst with metadata_dst_free(), which kfree()s the object unconditionally and ignores the dst reference count. The RX datapath in mlx5e_macsec_offload_handle_rx_skb() looks up the SC under rcu_read_lock() via xa_load(), takes a reference with dst_hold() and attaches the dst to the skb with skb_dst_set(). A reader that already obtained the rx_sc pointer can race with the delete path and operate on freed memory.
Fix the owner side by dropping the reference with dst_release() instead of freeing unconditionally, and convert the RX datapath to dst_hold_safe() so a reader racing the SC delete cannot attach a dst whose last reference was just dropped; only attach it when a reference was actually taken.
mlx5e_macsec_add_rxsc() also published sc_xarray_element via xa_alloc() before rx_sc->md_dst was allocated and initialised, so a datapath reader that looked the SC up by fs_id could observe rx_sc with md_dst still NULL or, on weakly-ordered architectures, a non-NULL md_dst pointer whose contents were not yet visible. NULL-check the xa_load() result and md_dst on the datapath, and reorder add_rxsc() so the xa_alloc() publish happens only after md_dst is fully initialised; the xarray RCU publish then pairs with the rcu_read_lock()/xa_load() in the datapath.
Note: macsec_del_rxsc_ctx() also kfree()s rx_sc->sc_xarray_element without an RCU grace period while the same datapath reads it under rcu_read_lock(); that is a separate pre-existing issue left to a follow-up patch.
Found by 0sec automated security-research tooling (https://0sec.ai).
CVSS Details
- CVSS 3.1 Base Score: 7.8
- CVSS 3.1 Vector: (CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H)
Covered by Rapid7
| Product | Vendor Advisory | Solution File | Added | Published |
|---|---|---|---|---|
| Amazon_linux_2023 | — | Upgrade kernel-modules-extra-commonUpgrade bpftool-debuginfoUpgrade kernel-headersUpgrade kernel-toolsUpgrade kernel-debuginfo-common-x86_64Upgrade kernel-tools-debuginfoUpgrade bpftoolUpgrade kernel-develUpgrade kernel-tools-develUpgrade python3-perfUpgrade kernel-modules-extraUpgrade kernel-livepatch-6.1.180-225.360Upgrade kernelUpgrade kernel-debuginfo-common-aarch64Upgrade perf-debuginfoUpgrade kernel-debuginfoUpgrade python3-perf-debuginfoUpgrade perf | Sep 1, 2026 | Aug 15, 2026 |
| Debian | — | Upgrade linux | Aug 16, 2026 | Aug 16, 2026 |
| Redhat_linux | — | Upgrade kernelNo solution existsUpgrade kernel-rt | Aug 19, 2026 | Aug 15, 2026 |
| Rocky_linux | — | Upgrade kernel-uki-virt-addonsUpgrade rvUpgrade kernel-zfcpdump-coreUpgrade kernel-rt-modules-coreUpgrade kernel-zfcpdump-debuginfoUpgrade python3-perfUpgrade kernel-zfcpdump-modulesUpgrade libperfUpgrade kernelUpgrade kernel-debuginfo-common-s390xUpgrade kernel-toolsUpgrade kernel-tools-libs-develUpgrade perfUpgrade kernel-rtUpgrade libperf-debuginfoUpgrade kernel-rt-modules-extraUpgrade kernel-modules-coreUpgrade kernel-debug-devel-matchedUpgrade kernel-zfcpdump-modules-coreUpgrade kernel-devel-matchedUpgrade perf-debuginfoUpgrade kernel-rt-debug-modules-coreUpgrade kernel-uki-virtUpgrade rtlaUpgrade kernel-rt-coreUpgrade kernel-debug-coreUpgrade kernel-modules-extraUpgrade python3-perf-debuginfoUpgrade kernel-debug-modulesUpgrade kernel-debug-debuginfoUpgrade kernel-debug-uki-virtUpgrade kernel-debuginfo-common-x86_64Upgrade kernel-rt-debug-debuginfoUpgrade kernel-rt-modulesUpgrade kernel-debug-modules-extraUpgrade kernel-debug-develUpgrade kernel-debugUpgrade kernel-debuginfoUpgrade kernel-zfcpdump-develUpgrade kernel-tools-libsUpgrade kernel-tools-debuginfoUpgrade kernel-rt-debugUpgrade kernel-modulesUpgrade kernel-rt-debuginfoUpgrade kernel-rt-debug-develUpgrade kernel-coreUpgrade kernel-rt-debug-modules-extraUpgrade kernel-rt-debug-coreUpgrade kernel-debug-modules-coreUpgrade kernel-zfcpdump-modules-extraUpgrade kernel-zfcpdump-devel-matchedUpgrade kernel-zfcpdumpUpgrade kernel-rt-debug-modulesUpgrade kernel-develUpgrade kernel-rt-devel | Sep 28, 2026 | Sep 24, 2026 |
| Vmware Photon_os | — | Use 'tdnf update' to upgrade all packages to the latest version. | Aug 25, 2026 | Aug 15, 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