CVE-2026-43465

CRITICALNVD 9.89.8
EchelonGraph scoreMEDIUM confidence

Score 9.8 from GitHub Security Advisory (severity: CRITICAL) published 2026-05-08. NVD baseline CVSS 9.8; sources differ by 0.0.

Triggered by: GitHub Security Advisory CVSS
Sources: epss, ghsa, nvd
9.8EG
EchelonGraph verdictPlan a fixSerious severity, but no confirmed exploitation yet.
  • High severity, but no confirmed exploitation yet
CISA-KEV: Not listedEPSS PROB: 0%CVSS: 9.8Exploit: None knownExposed: 0

A fix is available — apply it.

In the Linux kernel, the following vulnerability has been resolved:

net/mlx5e: RX, Fix XDP multi-buf frag counting for striding RQ

XDP multi-buf programs can modify the layout of the XDP buffer when the program calls bpf_xdp_pull_data() or bpf_xdp_adjust_tail(). The referenced commit in the fixes tag corrected the assumption in the mlx5 driver that the XDP buffer layout doesn't change during a program execution. However, this fix introduced another issue: the dropped fragments still need to be counted on the driver side to avoid page fragment reference counting issues.

The issue was discovered by the drivers/net/xdp.py selftest, more specifically the test_xdp_native_tx_mb:

  • The mlx5 driver allocates a page_pool page and initializes it with
a frag counter of 64 (pp_ref_count=64) and the internal frag counter to 0.
  • The test sends one packet with no payload.
  • On RX (mlx5e_skb_from_cqe_mpwrq_nonlinear()), mlx5 configures the XDP
buffer with the packet data starting in the first fragment which is the page mentioned above.
  • The XDP program runs and calls bpf_xdp_pull_data() which moves the
header into the linear part of the XDP buffer. As the packet doesn't contain more data, the program drops the tail fragment since it no longer contains any payload (pp_ref_count=63).
  • mlx5 device skips counting this fragment. Internal frag counter
remains 0.
  • mlx5 releases all 64 fragments of the page but page pp_ref_count is
63 => negative reference counting error.

Resulting splat during the test:

WARNING: CPU: 0 PID: 188225 at ./include/net/page_pool/helpers.h:297 mlx5e_page_release_fragmented.isra.0+0xbd/0xe0 [mlx5_core] Modules linked in: [...] CPU: 0 UID: 0 PID: 188225 Comm: ip Not tainted 6.18.0-rc7_for_upstream_min_debug_2025_12_08_11_44 #1 NONE Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS rel-1.13.0-0-gf21b5a4aeb02-prebuilt.qemu.org 04/01/2014 RIP: 0010:mlx5e_page_release_fragmented.isra.0+0xbd/0xe0 [mlx5_core] [...] Call Trace: mlx5e_free_rx_mpwqe+0x20a/0x250 [mlx5_core] mlx5e_dealloc_rx_mpwqe+0x37/0xb0 [mlx5_core] mlx5e_free_rx_descs+0x11a/0x170 [mlx5_core] mlx5e_close_rq+0x78/0xa0 [mlx5_core] mlx5e_close_queues+0x46/0x2a0 [mlx5_core] mlx5e_close_channel+0x24/0x90 [mlx5_core] mlx5e_close_channels+0x5d/0xf0 [mlx5_core] mlx5e_safe_switch_params+0x2ec/0x380 [mlx5_core] mlx5e_change_mtu+0x11d/0x490 [mlx5_core] mlx5e_change_nic_mtu+0x19/0x30 [mlx5_core] netif_set_mtu_ext+0xfc/0x240 do_setlink.isra.0+0x226/0x1100 rtnl_newlink+0x7a9/0xba0 rtnetlink_rcv_msg+0x220/0x3c0 netlink_rcv_skb+0x4b/0xf0 netlink_unicast+0x255/0x380 netlink_sendmsg+0x1f3/0x420 __sock_sendmsg+0x38/0x60 ____sys_sendmsg+0x1e8/0x240 ___sys_sendmsg+0x7c/0xb0 [...] __sys_sendmsg+0x5f/0xb0 do_syscall_64+0x55/0xc70

The problem applies for XDP_PASS as well which is handled in a different code path in the driver.

This patch fixes the issue by doing page frag counting on all the original XDP buffer fragments for all relevant XDP actions (XDP_TX , XDP_REDIRECT and XDP_PASS). This is basically reverting to the original counting before the commit in the fixes tag.

As frag_page is still pointing to the original tail, the nr_frags parameter to xdp_update_skb_frags_info() needs to be calculated in a different way to reflect the new nr_frags.

CVSS v3
9.8
EG Score
9.8(medium)
EG Risk
49(Track)
EG Risk 49/100SSVC: Track

EG Risk is EchelonGraph's 0–100 priority score: it fuses intrinsic severity with real-world exploitation and automatability so you can rank equal-severity CVEs and fix the most dangerous first. Higher = act sooner. Distinct from the 0–10 EG Score (severity).

How it’s computed
Severity98% × 45%
Exploitation0% × 40%
Automatability30% × 15%
Action: Routine — remediate on your standard cadence.
EPSS PROB
0%
EPSS %ILE
35%
KEV
Not listed

Published

May 8, 2026

Last Modified

August 5, 2026

Advisory Details (3)

Auto-updated Sep 2, 2026
No patch confirmed yet.
generic

net/mlx5e: RX, Fix XDP multi-buf frag counting for striding RQ - kernel/git/stable/linux.git - Linux kernel stable tree

https://git.kernel.org/stable/c/db25c42c2e1f9c0d136420fff5e5700f7e771a6f
generic

net/mlx5e: RX, Fix XDP multi-buf frag counting for striding RQ - kernel/git/stable/linux.git - Linux kernel stable tree

https://git.kernel.org/stable/c/043bd62f748bc9fd98154037aa598cffbd3c667c
generic

net/mlx5e: RX, Fix XDP multi-buf frag counting for striding RQ - kernel/git/stable/linux.git - Linux kernel stable tree

https://git.kernel.org/stable/c/7d7342a18fadcdb70a63b3c930dc63528ce51832

Vendor Advisories for CVE-2026-43465(1)

These vendors published their own advisory mentioning this CVE — often with vendor-specific remediation steps + affected product lists not in NVD.

Patch Availability(9)

Patches are aggregated from vendor advisories (Red Hat, Microsoft, Cisco, GitHub) and package ecosystems (OSV, GHSA). Multiple rows for the same upstream release have been deduplicated.

Affected Packages

(2 across 2 ecosystems)
Debian:13(1)
PackageVulnerable rangeFixed inDependents
linux6.12.100-1 ... 7.2~rc5-1~exp1 (160 versions)
Debian:14(1)
PackageVulnerable rangeFixed inDependents
linux6.12.100-1 ... 6.19~rc8-1~exp1 (119 versions)6.19.10-1

All Vendor Advisories

(8)

Data Freshness Timeline

(refreshed 5× in last 7d / 99× in last 30d)

Each row is a source pipeline that fetched or updated this CVE on that date, with what changed. For example, "NVD update" means NVD published or revised its analysis for this CVE; "MITRE cvelistV5" means we ingested or refreshed it from the CNA feed. Most recent first.

Showing the most recent 100 of 307 total refreshes for this CVE.

  1. 2026-09-04 05:06 UTCEPSS rescore
  2. 2026-09-02 14:12 UTCEPSS rescore
  3. 2026-09-01 13:54 UTCEPSS rescore
  4. 2026-08-30 19:17 UTCEPSS rescore
  5. 2026-08-30 01:22 UTCEPSS rescore
  6. 2026-08-28 21:41 UTCEPSS rescore
  7. 2026-08-27 14:25 UTCEPSS rescore
  8. 2026-08-26 14:46 UTCEPSS rescore
  9. 2026-08-25 13:49 UTCEPSS rescore
  10. 2026-08-23 19:01 UTCEG score recompute
  11. 2026-08-23 19:01 UTCVendor advisory
  12. 2026-08-23 19:01 UTCGHSA enrichment
  13. 2026-08-23 00:19 UTCEPSS rescore
  14. 2026-08-21 23:49 UTCEPSS rescore
  15. 2026-08-20 22:55 UTCEPSS rescore
  16. 2026-08-19 17:04 UTCEPSS rescore
  17. 2026-08-18 13:48 UTCEPSS rescore
  18. 2026-08-17 13:47 UTCEPSS rescore
  19. 2026-08-17 11:30 UTCEG score recompute
  20. 2026-08-17 11:30 UTCVendor advisory
  21. 2026-08-17 11:30 UTCGHSA enrichment
  22. 2026-08-16 14:56 UTCEPSS rescore
  23. 2026-08-16 12:02 UTCVendor advisory
  24. 2026-08-16 12:02 UTCGHSA enrichment
  25. 2026-08-16 08:18 UTCVendor advisory
Show 75 more
  1. 2026-08-16 08:18 UTCGHSA enrichment
  2. 2026-08-16 04:34 UTCEG score recompute
  3. 2026-08-16 04:34 UTCVendor advisory
  4. 2026-08-16 04:34 UTCGHSA enrichment
  5. 2026-08-16 02:14 UTCEPSS rescore
  6. 2026-08-15 01:31 UTCEG score recompute
  7. 2026-08-15 01:31 UTCVendor advisory
  8. 2026-08-15 01:31 UTCGHSA enrichment
  9. 2026-08-15 01:30 UTCEPSS rescore
  10. 2026-08-14 21:48 UTCVendor advisory
  11. 2026-08-14 21:48 UTCGHSA enrichment
  12. 2026-08-14 18:04 UTCVendor advisory
  13. 2026-08-14 18:04 UTCGHSA enrichment
  14. 2026-08-14 14:20 UTCVendor advisory
  15. 2026-08-14 14:20 UTCGHSA enrichment
  16. 2026-08-14 10:36 UTCVendor advisory
  17. 2026-08-14 10:36 UTCGHSA enrichment
  18. 2026-08-14 06:51 UTCVendor advisory
  19. 2026-08-14 06:51 UTCGHSA enrichment
  20. 2026-08-14 03:08 UTCEG score recompute
  21. 2026-08-14 03:08 UTCVendor advisory
  22. 2026-08-14 03:07 UTCGHSA enrichment
  23. 2026-08-13 22:00 UTCEPSS rescore
  24. 2026-08-13 08:17 UTCVendor advisory
  25. 2026-08-13 08:17 UTCGHSA enrichment
  26. 2026-08-13 03:55 UTCVendor advisory
  27. 2026-08-13 03:55 UTCGHSA enrichment
  28. 2026-08-13 00:11 UTCVendor advisory
  29. 2026-08-13 00:11 UTCGHSA enrichment
  30. 2026-08-12 20:27 UTCVendor advisory
  31. 2026-08-12 20:27 UTCGHSA enrichment
  32. 2026-08-12 16:43 UTCEG score recompute
  33. 2026-08-12 16:43 UTCGHSA enrichment
  34. 2026-08-12 13:51 UTCEPSS rescore
  35. 2026-08-11 23:25 UTCGHSA enrichment
  36. 2026-08-11 19:42 UTCGHSA enrichment
  37. 2026-08-11 15:51 UTCEG score recompute
  38. 2026-08-11 15:51 UTCGHSA enrichment
  39. 2026-08-11 13:43 UTCEPSS rescore
  40. 2026-08-11 08:44 UTCGHSA enrichment
  41. 2026-08-11 05:00 UTCGHSA enrichment
  42. 2026-08-11 01:16 UTCEG score recompute
  43. 2026-08-11 01:16 UTCGHSA enrichment
  44. 2026-08-11 00:00 UTCEPSS rescore
  45. 2026-08-10 12:43 UTCGHSA enrichment
  46. 2026-08-10 08:52 UTCGHSA enrichment
  47. 2026-08-10 05:08 UTCGHSA enrichment
  48. 2026-08-10 01:24 UTCGHSA enrichment
  49. 2026-08-09 21:40 UTCGHSA enrichment
  50. 2026-08-09 17:56 UTCGHSA enrichment
  51. 2026-08-09 14:13 UTCEG score recompute
  52. 2026-08-09 14:13 UTCGHSA enrichment
  53. 2026-08-09 13:46 UTCEPSS rescore
  54. 2026-08-09 10:29 UTCGHSA enrichment
  55. 2026-08-09 06:07 UTCGHSA enrichment
  56. 2026-08-09 02:23 UTCEG score recompute
  57. 2026-08-09 02:23 UTCGHSA enrichment
  58. 2026-08-08 16:37 UTCEPSS rescore
  59. 2026-08-08 10:51 UTCGHSA enrichment
  60. 2026-08-08 06:54 UTCGHSA enrichment
  61. 2026-08-08 03:10 UTCGHSA enrichment
  62. 2026-08-07 23:26 UTCGHSA enrichment
  63. 2026-08-07 19:42 UTCEG score recompute
  64. 2026-08-07 19:42 UTCGHSA enrichment
  65. 2026-08-07 15:59 UTCGHSA enrichment
  66. 2026-08-07 12:14 UTCGHSA enrichment
  67. 2026-08-07 08:20 UTCGHSA enrichment
  68. 2026-08-07 01:43 UTCGHSA enrichment
  69. 2026-08-06 20:35 UTCGHSA enrichment
  70. 2026-08-06 16:51 UTCEG score recompute
  71. 2026-08-06 16:51 UTCGHSA enrichment
  72. 2026-08-06 13:46 UTCEPSS rescore
  73. 2026-08-06 13:03 UTCGHSA enrichment
  74. 2026-08-06 09:19 UTCGHSA enrichment
  75. 2026-08-06 05:35 UTCGHSA enrichment

Frequently asked(5)

What is CVE-2026-43465?
CVE-2026-43465 is a critical vulnerability published on May 8, 2026. In the Linux kernel, the following vulnerability has been resolved: net/mlx5e: RX, Fix XDP multi-buf frag counting for striding RQ XDP multi-buf programs can modify the layout of the XDP buffer when the program calls bpfxdppulldata() or bpfxdpadjusttail(). The referenced commit in the fixes tag…
When was CVE-2026-43465 disclosed?
CVE-2026-43465 was first published in the National Vulnerability Database on May 8, 2026, with the most recent update on August 5, 2026. EchelonGraph re-ingests CVE updates from NVD on a 2-hour cycle, so this page reflects the latest published state.
Is CVE-2026-43465 actively exploited?
CVE-2026-43465 is not currently on CISA's Known Exploited Vulnerabilities catalog. FIRST EPSS estimates a 0% probability of exploitation in the next 30 days, which ranks it in the top 65.4% of all scored CVEs.
What is the CVSS score of CVE-2026-43465?
CVE-2026-43465 has a CVSS v3 base score of 9.8 (NVD).
How do I remediate CVE-2026-43465?
Patch to the fixed version published by the affected vendor. Where vendor advisories exist for CVE-2026-43465, EchelonGraph cross-links them in the Vendor Advisories panel below — those typically contain the canonical remediation steps, fixed version numbers, and any vendor-specific mitigations.

Dependency Blast Radius

See which npm, PyPI, Go, and Maven packages are affected by CVE-2026-43465

Explore →

Is Your Infrastructure Affected by CVE-2026-43465?

EchelonGraph automatically scans your cloud infrastructure and maps CVE exposure using blast radius analysis.