LiveActive security incident?Get immediate response
CVE Record

CVE-2026-31494: net: macb: use the current queue number for stats

In the Linux kernel, the following vulnerability has been resolved: net: macb: use the current queue number for stats There's a potential mismatch between the memory reserved for statistics and the amount of memory written. gem_get_sset_count() correctly computes the number of stats based on the active queues, whereas gem_get_ethtool_stats() indiscriminately copies data using the maximum number of queues, and in the case the number of active queues is less than MACB_MAX_QUEUES, this results in a OOB write as observed in the KASAN splat. ================================================================== BUG: KASAN: vmalloc-out-of-bounds in gem_get_ethtool_stats+0x54/0x78 [macb] Write of size 760 at addr ffff80008080b000 by task ethtool/1027 CPU: [...] Tainted: [E]=UNSIGNED_MODULE Hardware name: raspberrypi rpi/rpi, BIOS 2025.10 10/01/2025 Call trace: show_stack+0x20/0x38 (C) dump_stack_lvl+0x80/0xf8 print_report+0x384/0x5e0 kasan_report+0xa0/0xf0 kasan_check_range+0xe8/0x190 __asan_memcpy+0x54/0x98 gem_get_ethtool_stats+0x54/0x78 [macb 926c13f3af83b0c6fe64badb21ec87d5e93fcf65] dev_ethtool+0x1220/0x38c0 dev_ioctl+0x4ac/0xca8 sock_do_ioctl+0x170/0x1d8 sock_ioctl+0x484/0x5d8 __arm64_sys_ioctl+0x12c/0x1b8 invoke_syscall+0xd4/0x258 el0_svc_common.constprop.0+0xb4/0x240 do_el0_svc+0x48/0x68 el0_svc+0x40/0xf8 el0t_64_sync_handler+0xa0/0xe8 el0t_64_sync+0x1b0/0x1b8 The buggy address belongs to a 1-page vmalloc region starting at 0xffff80008080b000 allocated at dev_ethtool+0x11f0/0x38c0 The buggy address belongs to the physical page: page: refcount:1 mapcount:0 mapping:0000000000000000 index:0xffff00000a333000 pfn:0xa333 flags: 0x7fffc000000000(node=0|zone=0|lastcpupid=0x1ffff) raw: 007fffc000000000 0000000000000000 dead000000000122 0000000000000000 raw: ffff00000a333000 0000000000000000 00000001ffffffff 0000000000000000 page dumped because: kasan: bad access detected Memory state around the buggy address: ffff80008080b080: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ffff80008080b100: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 >ffff80008080b180: 00 00 00 00 00 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 ^ ffff80008080b200: f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 ffff80008080b280: f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 ================================================================== Fix it by making sure the copied size only considers the active number of queues.

HighCVSS 7.8Not KEV-listedUpdated
Glexia's TakeAutomated analysishigh

Security readout for executives and security teams

Plain-English summary

A flaw in Linux’s MACB/GEM network driver can write beyond an allocated statistics buffer when fewer queues are active than the driver’s maximum. This may corrupt kernel memory. The supplied CVSS rates potential confidentiality, integrity, and availability impact as high, but requires local, low-privileged access.

Executive priority

Treat as an expedited kernel-maintenance issue for systems using the affected driver, especially shared, appliance, or industrial hosts with untrusted local access. It is not evidence of an internet-wide emergency because the supplied assessment requires local access and reports no active exploitation.

Technical view

gem_get_sset_count() allocates statistics space using active queues, while gem_get_ethtool_stats() previously copied statistics for MACB_MAX_QUEUES. The mismatch causes a vmalloc out-of-bounds write during Ethernet statistics retrieval. The kernel fix limits copying to the current active queue count.

Likely exposure

Exposure is limited to Linux systems using the MACB/GEM network driver where active queues are fewer than MACB_MAX_QUEUES. The supplied version data is ambiguous and includes commit identifiers, so inventory should rely on distributor advisories and presence of the referenced stable fix.

Exploitation context

The CVSS vector describes local attack access, low complexity, low privileges, and no user interaction. The supplied record reports a KASAN-detected out-of-bounds write. It does not establish practical exploitation, public weaponization, or active exploitation, and the CVE is not listed as KEV in the bundle.

Researcher notes

The evidence demonstrates a size-accounting mismatch and KASAN-observed vmalloc out-of-bounds write of 760 bytes in gem_get_ethtool_stats(). Impact beyond memory corruption is inferred by the CVSS assessment, not demonstrated in the supplied description. Exact vulnerable release boundaries remain unclear from the provided version entries.

Mitigation direction

  • Install a vendor-supported kernel containing the applicable referenced stable fix.
  • Check Linux distributor and appliance-vendor advisories for exact affected and corrected releases.
  • Prioritize systems exposing local access to untrusted or minimally privileged users.
  • Restrict unnecessary local accounts until affected systems are updated.

Validation and detection

  • Inventory systems using the MACB/GEM network driver.
  • Record kernel and vendor package versions on potentially affected systems.
  • Confirm the applicable stable fix is included or backported by the vendor.
  • Review kernel logs for MACB-related KASAN or memory-corruption reports after statistics access.
Prepared
Confidence
high
Sources
10

Generated from the cited source records. This long-tail analysis has not been individually reviewed by a named human.

Potential ATT&CK relevance

Conservative CVE-to-ATT&CK context

These mappings and lookup hints may be relevant to the vulnerability behavior, CWE, affected product, or exposure path. Glexia-inferred context is not an official MITRE, ATT&CK, CWE, or CVE Program mapping.

ATT&CK lookup starting points

Use these exact CWE pages and searches to review the Glexia ATT&CK library from this CVE's weakness and description context.

cve · low confidence lookup

CVE-2026-31494 mapping review

Open the CVE-to-ATT&CK bridge for reviewed, inferred, or future official mappings tied to this CVE.

Open ATT&CK lookup
Vulnerability profileCVE Program record
Severity
High
CVSS
7.8 (3.1)
Known Exploited
No
Published

Vector: CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H

Official CVE source material

CNA and ADP enrichment extracted from CVE v5

These fields come from the CVE record and ADP containers, not from Glexia's Take. They preserve time-varying source decisions such as CISA SSVC, KEV status, CVSS metrics, and provider references.

1CVSS vectors
3Timeline events
1ADP providers
11Source links

CVSS vector scores

1 official score

We collect every scored CVSS vector available in the official CNA and ADP containers. When more than one version is present, the table keeps the source vectors side by side instead of collapsing them into the highest score.

ScoreVersionSeverityVectorExploitImpactSource
7.8CVSS 3.1HighCVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H1.85.9Linux

Vulnerability scoring details

Base CVSS 3.1 score

7.8High
CVSS 3.1 vector shape for CVE-2026-31494Attack VectorAttack ComplexityPrivileges RequiredUser InteractionScopeConfidentiality ImpactIntegrity ImpactAvailability Impact

Vector: CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H

Attack Vector
NetworkAdjacentLocalPhysical
Attack Complexity
LowHigh
Privileges Required
NoneLowHigh
User Interaction
NoneRequired
Scope
ChangedUnchanged
Confidentiality Impact
HighLowNone
Integrity Impact
HighLowNone
Availability Impact
HighLowNone

Vulnerability timeline

Timeline events are normalized from CVE metadata, CNA source timelines, ADP timelines, and KEV metadata when present.

  1. CVE reservedCVE Program

    The CVE ID was reserved by the assigning CNA.

  2. CVE publishedCVE Program

    The CVE record was published.

  3. CVE updatedCVE Program

    The CVE record metadata indicates this as the latest update time.

ADP provider summaries

siemens-SADPADP container
Affected products

Products and packages named in the record

VendorProductVersion / packageStatus
LinuxLinux512286bbd4b7d5b15d26ba8078c8bfd1fc1129bd, 512286bbd4b7d5b15d26ba8078c8bfd1fc1129bd, 512286bbd4b7d5b15d26ba8078c8bfd1fc1129bd, 512286bbd4b7d5b15d26ba8078c8bfd1fc1129bd, 512286bbd4b7d5b15d26ba8078c8bfd1fc1129bd, 512286bbd4b7d5b15d26ba8078c8bfd1fc1129bd, 512286bbd4b7d5b15d26ba8078c8bfd1fc1129bd, 512286bbd4b7d5b15d26ba8078c8bfd1fc1129bdunaffected
LinuxLinux4.16, 0, 5.10.253, 5.15.203, 6.1.168, 6.6.131, 6.12.80, 6.18.21, 6.19.11, 7.0affected
Weakness

CWE details

No CWE listed

CWE links open Glexia weakness intelligence pages with official CWE context, developer remediation guidance, and related CVE mappings.