Skip to main content

arduino-esp32 EUVDEUVD-2026-25619

| CVE-2026-41429 HIGH
Stack-based Buffer Overflow (CWE-121)
2026-04-24 GitHub_M
8.8
CVSS 3.1 · Vendor: GitHub_M
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Gain adjacent network access
  2. Delivery
    Send crafted NBNS packet to UDP 137
  3. Exploit
    Trigger buffer overflow in name_len parser
  4. Execution
    Overwrite stack return address
  5. Impact
    Execute arbitrary code as device firmware

Vulnerability Assessment

Weakness
CWE
ASVS 5.0
V15 - Secure Coding and Architecture Stack buffer bounds checking
MITRE ATT&CK

1 technique across 1 tactic: Execution

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

NetBIOS functionality must be explicitly enabled in the application code via NBNS.begin() method call-this is not enabled by default in arduino-esp32. Attacker must have adjacent network access (AV:A from CVSS vector), meaning they must be on the same Layer 2 broadcast domain or VLAN as the target ESP32 device to send UDP packets to port 137. No authentication or user interaction is required once these prerequisites are met. Exploitation is limited to devices actually using the NBNS feature for Windows network integration or name resolution, which represents a subset of total arduino-esp32 deployments. Devices using only Wi-Fi client mode without NetBIOS, or those deployed in isolated networks without adjacent attacker access, are not exploitable despite running vulnerable code versions.

Impact

This represents a high-severity risk for deployments that have explicitly enabled NetBIOS functionality, though real-world exploitation probability is moderate due to several limiting factors. The CVSS score of 8.8 accurately reflects the technical severity with adjacent network attack vector (AV:A), low complexity (AC:L), no authentication (PR:N), and high impact across confidentiality, integrity, and availability. However, exploitation requires the attacker to be on the same local network segment as the vulnerable device and NetBIOS must be explicitly enabled through NBNS.begin() calls in the application code-this is not a default configuration. No CISA KEV listing suggests this is not being exploited at scale in the wild, and EPSS data is unavailable to assess broader exploitation probability. The adjacent network requirement significantly reduces attack surface compared to internet-exposed vulnerabilities, but in compromised networks or malicious insider scenarios, exploitation is straightforward given the low complexity and lack of authentication. For industrial IoT deployments or building automation systems using ESP32 devices with NetBIOS enabled for Windows network integration, this should be prioritized for patching. For typical consumer IoT devices that don't use NBNS, the risk is theoretical.

Exploit ScenarioDerived

An attacker connected to the same local network as an ESP32 device running arduino-esp32 with NetBIOS enabled crafts a malicious NBNS query packet with an oversized name_len field. Sending this packet to UDP port 137 triggers a stack-based buffer overflow in the NBNS parser, overwriting return addresses or function pointers to redirect execution to attacker-controlled shellcode embedded in the packet payload. The attacker gains arbitrary code execution with full device privileges, potentially using the compromised microcontroller as a pivot point for lateral movement within the operational technology network or to manipulate connected sensors and actuators.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
Patch available 0.0% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Apr 24, 2026

Memory corruption in arduino-esp32's NBNS packet handler allows adjacent network attackers to achieve remote code execution on ESP32-family microcontrollers without authentication. Affects all versions prior to 3.3.8 when NetBIOS is explicitly enabled via NBNS.begin(). The parser trusts attacker-controlled name_len field from UDP port 137 traffic, writing unbounded data to fixed-size buffers. EPSS data not available, no CISA KEV listing, but GitHub security advisory confirms the vulnerability with patch released in version 3.3.8.

RemediationAI

Upgrade arduino-esp32 to version 3.3.8 or later, which contains bounds checking for the name_len field in the NBNS packet parser. Update the library through the Arduino IDE Library Manager or modify the platform definition in the Arduino cores directory. For deployments unable to immediately upgrade, disable NetBIOS functionality by removing all NBNS.begin() calls from application code-this completely eliminates the attack surface as the vulnerable code path is only reachable when NBNS is explicitly started. As a network-level compensating control, implement firewall rules to block incoming UDP port 137 traffic to ESP32 devices, though this may break legitimate NetBIOS name resolution functionality if required by the application. For defense-in-depth, segment IoT devices into isolated VLANs with strict ingress filtering to limit adjacent network access, reducing the pool of potential attackers who can reach UDP 137. Review application code to verify whether NetBIOS is actually required for functionality, as many ESP32 deployments include it unnecessarily during development testing.

Affected VersionsENISA

arduino-esp32 < 3.3.8

Affected Packages

euvd arduino_esp32 fix: 3.3.8

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

This vulnerability affects the arduino-esp32 core library used for programming ESP32, ESP32-S2, ESP32-S3, ESP32-C3, ESP32-C6, and ESP32-H2 microcontrollers in the Arduino development environment. NetBIOS Name Service (NBNS) is a legacy protocol operating on UDP port 137 for name resolution in local networks, primarily used for Windows network discovery. The vulnerability is a classic unbounded copy issue (CWE-121: Stack-based Buffer Overflow) where the NBNS request parser reads the name_len field from an incoming packet and uses it to copy data into fixed-size stack or heap buffers without validating that the length fits within the destination buffer bounds. ESP32 microcontrollers are resource-constrained embedded devices commonly used in IoT applications, smart home devices, and industrial control systems, making memory safety vulnerabilities particularly critical as they often lack modern exploit mitigations like DEP or ASLR.

Know when Arduino Esp32 gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (GitHub_M) PRIMARY 8.8 HIGH
AV:A/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H

Primary rating from Vendor (GitHub_M) · only source for this CVE.

CVSS VectorVendor: GitHub_M

Attack Vector
Adjacent
Attack Complexity
Low
Privileges Required
None
User Interaction
None
Scope
Unchanged
Confidentiality
High
Integrity
High
Availability
High

Lifecycle Timeline

3
Patch released
Apr 27, 2026 - 18:57 nvd
Patch available
Patch available
Apr 24, 2026 - 21:02 EUVD
CVE Published
Apr 24, 2026 - 19:19 nvd
HIGH 8.8

DescriptionCVE.org

arduino-esp32 is an Arduino core for the ESP32, ESP32-S2, ESP32-S3, ESP32-C3, ESP32-C6 and ESP32-H2 microcontrollers. Prior to 3.3.8, there is a remotely reachable memory corruption issue in the NBNS packet handling path. When NetBIOS is enabled by calling NBNS.begin(...), the device listens on UDP port 137 and processes untrusted NBNS requests from the local network. The request parser trusts the attacker-controlled name_len field without enforcing a bound consistent with the fixed-size destination buffers used later in the flow. This vulnerability is fixed in 3.3.8.

Executive ViewAI

Why It Matters

Arduino-ESP32 versions prior to 3.3.8 contain a memory corruption vulnerability in the NetBIOS packet handler that allows adjacent network attackers to execute arbitrary code on ESP32 microcontrollers without authentication. Organizations deploying ESP32 devices with NBNS functionality enabled face direct risk of device compromise, potentially affecting IoT infrastructure, industrial control systems, and connected appliances with remote code execution capabilities.

Business Impact: High
Compensating Controls

If immediate patching is not feasible: (1) Disable NBNS functionality by removing or commenting out NBNS.begin() calls in device firmware until upgrade is deployed; (2) implement network access controls to block inbound UDP port 137 traffic to ESP32 devices from untrusted network segments; (3) isolate affected devices to network microsegments with restricted east-west traffic. Apply vendor patch to version 3.3.8 as primary remediation.

Threat Intelligence Overview

EPSS Score
0.0%
Top 96% exploitable
Data Quality
7 sources
Confidence: High
EUVD NVD CVE.org EPSS Vulnrichment GitHub VulDB

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity HIGH
CISA KEV No
Public POC No
EPSS 0.0%
Patch available Yes
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision
Scheduled
Exploitation
Poc
System Exposure· derived
Controlled
Automatable
No
Human Impact
High
Technical Impact
Total

Priority Score

44
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +44
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

A buffer overflow occurs when a program writes more data to a memory buffer than it was allocated to hold, causing the excess data to spill into adjacent memory regions.

A stack-based buffer overflow occurs when a program writes more data to a buffer located on the stack than it was allocated to hold.

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy