net/mlx5: Fix slab-out-of-bounds in mlx5_query_nic_vport_mac_list (Linux Linux)

CVE-2026-53230
HIGH 8.7

At a glance

Source
NVD
EPSS
EPSS 0.13 % · percentile 2 ()
State
PUBLISHED
Published
Updated
Assigner
Linux
NVD status
Modified

Description

In the Linux kernel, the following vulnerability has been resolved: net/mlx5: Fix slab-out-of-bounds in mlx5_query_nic_vport_mac_list mlx5_query_nic_vport_mac_list() sizes its firmware command buffer using the PF's log_max_current_uc/mc_list capabilities. When querying a VF vport with a larger configured max (via devlink), the firmware response can overflow this buffer: BUG: KASAN: slab-out-of-bounds in mlx5_query_nic_vport_mac_list+0x453/0x4c0 [mlx5_core] Read of size 4 at addr ff1100013ffc8a12 by task kworker/u96:2/385 CPU: 12 UID: 0 PID: 385 Comm: kworker/u96:2 Not tainted 7.0.0-rc6+ #1 PREEMPT Hardware name: QEMU Standard PC (Q35 + ICH9, 2009) Workqueue: mlx5_esw_wq esw_vport_change_handler [mlx5_core] Call Trace: <TASK> dump_stack_lvl+0x69/0xa0 print_report+0x176/0x4e4 kasan_report+0xc8/0x100 mlx5_query_nic_vport_mac_list+0x453/0x4c0 [mlx5_core] esw_update_vport_addr_list+0x2e3/0xda0 [mlx5_core] esw_vport_change_handle_locked+0xa1f/0x1060 [mlx5_core] esw_vport_change_handler+0x6a/0x90 [mlx5_core] process_one_work+0x87f/0x15e0 worker_thread+0x62b/0x1020 kthread+0x375/0x490 ret_from_fork+0x4dc/0x810 ret_from_fork_asm+0x11/0x20 </TASK> Fix by querying the vport's own HCA caps to size the buffer correctly. Refactor the function to allocate and return the MAC list internally, removing the caller's dependency on knowing the correct max.

Weaknesses (CWE)

References

Scores

VersionScoreVectorScored by
CVSS 3.1HIGH 8.7CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:C/C:H/I:L/A:HLinux
CVSS 3.1HIGH 8.7CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:C/C:H/I:L/A:HNVD · 416baaa9-dc9f-4396-8d5f-8c081fb06d67 (Secondary)

European references

CERT-FR advisories

Affected configurations (NVD CPE)

Affected products

ProductVersions
Linux · Linuxaffected e16aea2744abea612c27ee0eef606c6a6a8204de < 41781f2789309462520a93822e946521ed78f97f ; affected e16aea2744abea612c27ee0eef606c6a6a8204de < 537d87784e81c3d7037525b99416455cee088cdc ; affected e16aea2744abea612c27ee0eef606c6a6a8204de < 0f807764bb122fd63aa45f4229cb1ef2679fbd40 ; affected e16aea2744abea612c27ee0eef606c6a6a8204de < 2398e497389ed4be43f7cfbab499b49cec7dae1a ; affected e16aea2744abea612c27ee0eef606c6a6a8204de < 894e036a24a26a6dd7b17d8d3fb5c53ab48a6074
Linux · Linuxaffected 4.5 ; unaffected 0 < 4.5 ; unaffected 6.6.143 ≤ 6.6.* ; unaffected 6.12.94 ≤ 6.12.* ; unaffected 6.18.36 ≤ 6.18.* ; unaffected 7.0.13 ≤ 7.0.*

Sources

SourceLicence
CVE List (CVEProject cvelistV5)CVE Program Terms of Use
EPSS (FIRST.org)FIRST — attribution requested
ENISA EUVDENISA — reproduction authorised, source acknowledged
CERT-FR (ANSSI)Licence Ouverte / Etalab 2.0
NVD (NIST) via fkie-cad/nvd-json-data-feedsPublic domain — this product uses data from the NVD API but is not endorsed or certified by the NVD