HOL LogoGuard

Explore HOL

  • HOL home
  • AI agent registry
  • AI plugins
  • Open standards
  • HOL members
  • Sponsor HOL
  • Advertise with HOL

Guard product

  • Guard overviewLocal security and control for AI agents and the tools they use.
  • FeaturesRuntime protection, policy routing, review, and evidence.

Explore Guard

  • Product previewWalk through Guard surfaces in read-only demo mode.
  • ComparisonCompare Guard with native controls and AI security vendors.

AI tools

  • All AI toolsEvery supported AI tool and how Guard applies policy to it.
  • Codex
  • Claude Code
  • Cursor
  • Antigravity CLI
  • OpenCode
  • Hermes
  • OpenClaw
  • GitHub Copilot CLI
  • Antigravity
  • Kimi
  • Grok
  • Pi / Oh My Pi
  • Zcode

Extensions

  • All extensionsBrowse command and MCP coverage with owners and stated limits.
  • Command coverageShell command protection across clouds, databases, backups, and packages.
  • MCP server coverageSee how Guard maps risk state across MCP tools and servers.
  • Core safetyThe safety floor listings that ship with Guard.
  • Data and resilienceBackup and storage command protection.
  • Cloud and infrastructureAWS, Azure, GCP, Kubernetes, and more.

Security

  • AI security hubSecurity research, advisories, and agent safety coverage.
  • AI tool securitySecurity profiles for each supported coding agent.
  • Safe labsHands-on attack simulations with safe boundaries.
  • Redacted warningsReal blocked actions with sensitive details removed.
  • AdvisoriesCoordinated disclosure reports for AI tooling.
  • Active CVEsSearch active CVEs affecting AI tooling.

Learn

  • Security guidesPractical guides for securing AI agent workflows.
  • DocsInstall, configure, and operate Guard with confidence.
  • ResearchPublished security research, benchmarks, and methodology.

Community

  • ReleasesVersion history, shipped changes and upgrade notes.
  • ContributorsThe people and contributions behind HOL Guard.
  • AffiliatesShare Guard with your audience and earn from referrals.
  • SponsorFund agreed research, implementation and shared testing through the HOL Partner Program.
  • AdvertiseCompare README logo placements, previews and monthly prices, or promote a plugin or extension.
PricingEnterpriseOpen AppInstall Guard
  1. Guard
  2. Security
  3. CVEs
  4. CVE 2026 46110 net stmmac prevent null deref when rx memory
HOL Guard

Public security guidance for teams protecting AI harnesses, MCP servers, skills, prompts, and local tool execution.

Install Guard

AI Security

  • Prompt injection
  • MCP security
  • OWASP MCP mapping
  • Supply chain

Resources

  • Trust packet
  • Harness setup
  • Redacted warnings
  • Safe labs

Product

  • Install Guard
  • Pricing
  • Open dashboard
Guard
  • Guard Overview
  • Releases
  • Contributors
  • Install Guard
  • Pricing
Docs
  • Documentation Index
  • Developer Hub
  • API Reference
  • Root OpenAPI
  • Registry OpenAPI
  • Run in Postman
  • Standards
  • Submit ERC-8004 Contract
  • Feature Your Agent
Best Plugins
  • Browse Plugins
  • Plugin Launches
  • Best Claude Plugins
  • Best Codex Plugins
  • Best Grok Plugins
  • Best Kimi Plugins
  • Best DeepSeek Plugins
  • Best Antigravity Plugins
  • Best MCP Servers
  • Best Cursor Plugins
  • Best OpenCode Plugins
Best Agents
  • Best ERC-8004 Agents
  • Best Virtuals Agents
  • Best MCP Servers
  • Best A2A Agents
  • Best x402 Payable
  • All Categories
Community
  • Telegram
  • X
More
  • About HOL
  • Sponsor
  • Advertise
  • Affiliate program
  • Contact
  • Blog
  • GitHub
  • Privacy
  • Terms of Service
Settings

Copyright ยฉ 2026 HOL DAO LLC. All rights reserved.

Back to active CVEs
High ยท CVSS 7.5CVE-2026-46110

net: stmmac: Prevent NULL deref when RX memory exhaustedCVE-2026-46110

Answer in brief

CVE-2026-46110 records a High severity (CVSS 7.5) vulnerability in net: stmmac: Prevent NULL deref when RX memory exhausted. The current sources do not mark it as known exploited. The current feed maps Linux/Linux (generic), Linux/Linux (generic), Siemens/SIMATIC S7-1500 TM MFP - GNU/Linux subsystem (generic). Check affected ranges and fixed versions before updating.

Analysis pending evidence review

HOL Guard separates source facts from reviewed analysis. See the methodology.

Published May 28, 2026Updated Oct 15, 2026Source checked Nov 3, 2026First seen by HOL Jun 19, 2026Material review Oct 15, 2026
Upstream Advisory

Key facts

Risk
High ยท CVSS 7.5
Exploitation
Not marked as known exploited
Affected software
13 mapped packages or products
Fix availability
Available

Why this deserves its current priority

CVSS is 7.5. The current sources do not mark it as known exploited. Treat this as a source-backed prioritization signal, not a statement about your environment.

Analysis status

Analysis pending evidence review

Factual feed record only; HOL analysis is not approved for indexing. Read the methodology.

Affected scope and exposure questions

The current feed maps Linux/Linux (generic), Linux/Linux (generic), Siemens/SIMATIC S7-1500 TM MFP - GNU/Linux subsystem (generic). Check affected ranges and fixed versions before updating.

Affected products and reported versions
ProductAffected versionsFixed versions
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*Not reportedNot reported
cpe:2.3:o:linux:linux_kernel:6.7:-:*:*:*:*:*:*Not reportedNot reported
cpe:2.3:o:linux:linux_kernel:6.7:rc2:*:*:*:*:*:*Not reportedNot reported
cpe:2.3:o:linux:linux_kernel:6.7:rc3:*:*:*:*:*:*Not reportedNot reported
cpe:2.3:o:linux:linux_kernel:6.7:rc4:*:*:*:*:*:*Not reportedNot reported
cpe:2.3:o:linux:linux_kernel:6.7:rc5:*:*:*:*:*:*Not reportedNot reported
cpe:2.3:o:linux:linux_kernel:6.7:rc6:*:*:*:*:*:*Not reportedNot reported
cpe:2.3:o:linux:linux_kernel:6.7:rc7:*:*:*:*:*:*Not reportedNot reported
cpe:2.3:o:linux:linux_kernel:6.7:rc8:*:*:*:*:*:*Not reportedNot reported
cpe:2.3:o:linux:linux_kernel:7.1:rc1:*:*:*:*:*:*Not reportedNot reported
Mapped affected packages and fixed versions
PackageAffected rangeFixed version
Linux/Linuxgeneric>=7414a28de1b3b028714859078c00a874f9feff52 <fdeb95b1fc7de25c9362990efb9996a8d761055c || >=779334e59850f863bf34665e0ff0b6faf126873b <e1c50b273298c7cd9b08b113e7a7598b531a02f5 || >=b6cb4541853c7ee512111b0e7ddf3cb66c99c137 <5c910f7708e3c507b037ca91ca5b09f8cfe71e65 || >=b6cb4541853c7ee512111b0e7ddf3cb66c99c137 <4af2e62cbcda575a174acd230c3f3a208135e16d || >=b6cb4541853c7ee512111b0e7ddf3cb66c99c137 <950cb436165aad0f8f2cd49da3cd07677465bcde || >=b6cb4541853c7ee512111b0e7ddf3cb66c99c137 <0bb05e6adfa99a2ea1fee1125cc0953409f83ed8 || b435b4573240b5530830a1a60e005c6fcfd928a0 || >=6.1.64 <6.1.176 || >=6.6.3 <6.6.140 || >=6.5.13 <6.6fdeb95b1fc7de25c9362990efb9996a8d761055c, e1c50b273298c7cd9b08b113e7a7598b531a02f5, 5c910f7708e3c507b037ca91ca5b09f8cfe71e65, 4af2e62cbcda575a174acd230c3f3a208135e16d, 950cb436165aad0f8f2cd49da3cd07677465bcde, 0bb05e6adfa99a2ea1fee1125cc0953409f83ed8, 6.1.176, 6.6.140, 6.6
Linux/Linuxgeneric6.7Not reported
Siemens/SIMATIC S7-1500 TM MFP - GNU/Linux subsystemgeneric>=0 <**

Recommended response

  1. 1Check inventory. Check lockfiles and deployed manifests for Linux/Linux, Linux/Linux, Siemens/SIMATIC S7-1500 TM MFP - GNU/Linux subsystem.
  2. 2Review the reported fix. Update Linux/Linux to fdeb95b1fc7de25c9362990efb9996a8d761055c; Siemens/SIMATIC S7-1500 TM MFP - GNU/Linux subsystem to * if you use the affected versions. Test the change in a non-production environment first.

Evidence timeline and material changes

  1. Published upstream

    May 28, 2026

    Evidence: source:cvelist:source_dates:source-dates:record
  2. Source modified

    Oct 15, 2026

    Evidence: source:cvelist:source_dates:source-dates:record
  3. First seen by HOL

    Jun 19, 2026

Sources and claim methodology

  • Source referencecert-portal.siemens.com
  • Source referencegit.kernel.org
  • Source referencegit.kernel.org
  • Source referencegit.kernel.org
  • Source referencegit.kernel.org
  • Source referencegit.kernel.org
  • Source referencegit.kernel.org
Upstream source description

In the Linux kernel, the following vulnerability has been resolved: net: stmmac: Prevent NULL deref when RX memory exhausted The CPU receives frames from the MAC through conventional DMA: the CPU allocates buffers for the MAC, then the MAC fills them and returns ownership to the CPU. For each hardware RX queue, the CPU and MAC coordinate through a shared ring array of DMA descriptors: one descriptor per DMA buffer. Each descriptor includes the buffer's physical address and a status flag ("OWN") indicating which side owns the buffer: OWN=0 for CPU, OWN=1 for MAC. The CPU is only allowed to set the flag and the MAC is only allowed to clear it, and both must move through the ring in sequence: thus the ring is used for both "submissions" and "completions." In the stmmac driver, stmmac_rx() bookmarks its position in the ring with the `cur_rx` index. The main receive loop in that function checks for rx_descs[cur_rx].own=0, gives the corresponding buffer to the network stack (NULLing the pointer), and increments `cur_rx` modulo the ring size. After the loop exits, stmmac_rx_refill(), which bookmarks its position with `dirty_rx`, allocates fresh buffers and rearms the descriptors (setting OWN=1). If it fails any allocation, it simply stops early (leaving OWN=0) and will retry where it left off when next called. This means descriptors have a three-stage lifecycle (terms my own): - `empty` (OWN=1, buffer valid) - `full` (OWN=0, buffer valid and populated) - `dirty` (OWN=0, buffer NULL) But because stmmac_rx() only checks OWN, it confuses `full`/`dirty`. In the past (see 'Fixes:'), there was a bug where the loop could cycle `cur_rx` all the way back to the first descriptor it dirtied, resulting in a NULL dereference when mistaken for `full`. The aforementioned commit resolved that *specific* failure by capping the loop's iteration limit at `dma_rx_size - 1`, but this is only a partial fix: if the previous stmmac_rx_refill() didn't complete, then there are leftover `dirty` descriptors that the loop might encounter without needing to cycle fully around. The current code therefore panics (see 'Closes:') when stmmac_rx_refill() is memory-starved long enough for `cur_rx` to catch up to `dirty_rx`. Fix this by explicitly checking, before advancing `cur_rx`, if the next entry is dirty; exit the loop if so. This prevents processing of the final, used descriptor until stmmac_rx_refill() succeeds, but fully prevents the `cur_rx == dirty_rx` ambiguity as the previous bugfix intended: so remove the clamp as well. Since stmmac_rx_zc() is a copy-paste-and-tweak of stmmac_rx() and the code structure is identical, any fix to stmmac_rx() will also need a corresponding fix for stmmac_rx_zc(). Therefore, apply the same check there. In stmmac_rx() (not stmmac_rx_zc()), a related bug remains: after the MAC sets OWN=0 on the final descriptor, it will be unable to send any further DMA-complete IRQs until it's given more `empty` descriptors. Currently, the driver simply *hopes* that the next stmmac_rx_refill() succeeds, risking an indefinite stall of the receive process if not. But this is not a regression, so it can be addressed in a future change.

Quoted source text, attributed separately from HOL analysis.

Record context

Vulnerability class
Vulnerability
EPSS
Not reported
CWE IDs
CWE-476
Source
CVE List V5
Source checked
Nov 3, 2026
References
7 linked sources
Open source record