Skip to main content

ESP32-audioI2S CVE-2026-51270

| EUVDEUVD-2026-49868 HIGH
Heap-based Buffer Overflow (CWE-122)
2026-07-28 mitre GHSA-3x42-qh3f-f9p5
8.8
CVSS 3.1 · Vendor: mitre
View

Attack ChainAIDerived

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

  1. Access
    Host malicious HTML/metadata on a stream
  2. Delivery
    Lure ESP32 device to fetch it
  3. Exploit
    htmlToUTF8() decodes crafted entities
  4. Execution
    Unbounded memmove/memcpy overflows heap
  5. Persist
    Overwrite heap structures on ESP32
  6. Impact
    Execute code or crash device

Vulnerability Assessment

Weakness
CWE
ASVS 5.0
V15 - Secure Coding and Architecture Heap 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

Exploitation requires the target ESP32 device running ESP32-audioI2S 3.4.5 to fetch and decode attacker-controlled HTML content through the htmlToUTF8() entity decoder - in practice, connecting to an attacker-operated or attacker-tampered audio stream, playlist, or metadata source. No authentication is needed (PR:N), but device/user interaction is required (UI:R): the device must be pointed at or induced to load the malicious source, so it is not exploitable purely by an unsolicited inbound packet against a default configuration. Limiting factors are the need for the device to actively retrieve the crafted HTML, that HTML/metadata parsing must be reached, and confinement to ESP32 firmware embedding this specific library and version; SSVC also rates the attack as not automatable.

Impact

The signals are mixed and warrant a nuanced priority. The CVSS 3.1 base score of 8.8 (AV:N/AC:L/PR:N/UI:R) reflects unauthenticated, low-complexity network reach with total confidentiality/integrity/availability impact, and SSVC rates technical impact as 'total' with a proof-of-concept exploit available - consistent with real RCE potential on the device. However, SSVC marks Automatable as 'no' and the vector requires user interaction (UI:R): the target device must actively fetch attacker-controlled HTML, so this is not a wormable, scan-and-pop condition. EPSS is low (0.27%, 19th percentile) and the CVE is absent from CISA KEV, so there is no evidence of mass exploitation. Net: this is a genuine high-severity flaw for exposed or attacker-steerable ESP32 audio devices, but practical risk is bounded by the need to lure the device to malicious content and by the product's niche, largely hobbyist deployment footprint rather than broad enterprise exposure.

Exploit ScenarioDerived

An attacker stands up a malicious web-radio stream (or tampers with the metadata/ICY headers of a stream a victim device connects to) and embeds oversized, crafted HTML entities. When the ESP32 device fetches and decodes that content via htmlToUTF8(), the unbounded memmove/memcpy overruns the heap, crashing the device or executing attacker-controlled code on the microcontroller. A proof-of-concept is referenced (SSVC status 'poc'), and because attack complexity is low the primary hurdle is inducing the device to fetch the attacker's content.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
No patch listed yet 0.3% exploitation probability (EPSS)

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

Alert me

AnalysisAIv1 – Jul 30, 2026

Heap-based buffer overflow in the schreibfaul1 ESP32-audioI2S library (version 3.4.5) exposes ESP32-based audio devices to remote code execution when they parse malicious HTML entities in streamed content. The flawed htmlToUTF8() decoder rearranges string data with memmove/memcpy without checking remaining buffer space, so an attacker who controls the HTML the device fetches (e.g. a web-radio stream or its metadata) can force an out-of-bounds heap write leading to code execution, memory disclosure, or a crash. Publicly available exploit code exists per the CISA SSVC 'poc' status, but the flaw is not listed in CISA KEV and carries a low EPSS score of 0.27% (19th percentile), indicating no evidence of widespread active exploitation yet.

RemediationAI

No vendor-released patch version is identified at time of analysis; the references point to the master-branch source file and a third-party advisory repository rather than a tagged fixed release, so upgrade only after schreibfaul1 publishes a version above 3.4.5 that adds bounds checking to htmlToUTF8() (monitor https://github.com/schreibfaul1/ESP32-audioI2S for releases). Until a fixed release exists, compensating controls include: restricting the device to a hardcoded allowlist of trusted stream/metadata URLs so it never fetches attacker-controlled HTML (trade-off: breaks user-added arbitrary stations); disabling or stripping HTML/ICY metadata parsing if the application does not need it (trade-off: loses now-playing title display); and network-isolating the device on a segmented VLAN with egress filtering so it cannot reach arbitrary internet hosts (trade-off: limits streaming to approved sources). Maintainers of forks should add explicit remaining-buffer-size validation before every memmove/memcpy in the entity decoder. Reference the NVD entry (https://nvd.nist.gov/vuln/detail/CVE-2026-51270) for updates.

Affected VersionsENISA

n/a n/a

Affects your stack

Find out whether the stacks and servers you run are on an affected version.

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

Technical ContextAI · show details

ESP32-audioI2S is an Arduino/ESP-IDF C++ library that streams and decodes audio (Internet radio, MP3/AAC/FLAC, etc.) over I2S on Espressif ESP32 microcontrollers. The vulnerable routine, htmlToUTF8() in src/Audio.cpp, converts HTML entities (such as & or numeric character references) found in fetched HTML/metadata into UTF-8, shifting bytes within a fixed heap buffer using memmove and memcpy. Because it validates neither the remaining buffer capacity nor entity length before writing, oversized or crafted entity strings overrun the allocation. This is a classic CWE-122 heap-based buffer overflow, where corruption occurs in dynamically allocated (heap) memory rather than the stack; on a memory-unsafe MCU with no ASLR/heap hardening, such overwrites can be highly exploitable.

Know when N A 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 (mitre) PRIMARY 8.8 HIGH
AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H
vuln.today AI 8.8 HIGH

Reachable over the network with no auth when the device fetches attacker HTML but requires it to load that content (UI:R); heap overflow yields full code-exec so C/I/A all High.

3.1 AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H
4.0 AV:N/AC:L/AT:N/PR:N/UI:P/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N

Primary rating from Vendor (mitre).

CVSS VectorVendor: mitre

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

Lifecycle Timeline

3
CVSS changed
Jul 30, 2026 - 19:22 NVD
8.8 (HIGH)
CVE Published
Jul 28, 2026 - 00:00 cve.org
HIGH 8.8
CVE Published
Jul 28, 2026 - 00:00 cve.org
UNKNOWN (no severity yet)

DescriptionCVE.org

schreibfaul1 ESP32-audioI2S 3.4.5 has a heap-based buffer overflow vulnerability in the htmlToUTF8() HTML entity decoding function. The function parses attacker-controlled malicious HTML entities and uses memmove and memcpy to rearrange string content without validating buffer remaining size and boundary limits. Crafted oversized HTML entity strings can trigger heap out-of-bounds write, allowing remote code execution, memory information leakage, service crash or privilege escalation.

Executive ViewAI

Why It Matters

ESP32-based audio devices using the schreibfaul1 audioI2S library (version 3.4.5) are vulnerable to remote code execution when processing malicious HTML in audio streams or metadata. Attackers can exploit this heap buffer overflow to gain full device control, affecting any IoT audio systems that stream content from untrusted sources. No vendor patch currently available, requiring immediate interim protections.

Business Impact: High
Compensating Controls

No vendor-released patch identified at time of analysis. Interim mitigations include: (1) restrict affected devices to streaming from trusted, internal audio sources only; (2) disable or sandbox HTML entity parsing in the audioI2S configuration if supported; (3) implement network-based content inspection for malicious payloads; (4) isolate affected devices via network segmentation; (5) monitor device logs and behavior for exploitation attempts; (6) contact vendor for advisory updates and interim guidance; (7) maintain inventory of affected assets for rapid patching when available.

Threat Intelligence Overview

EPSS Score
0.3%
Top 81% exploitable
Prevalence
Low
niche open-source ESP32 audio library, mostly hobbyist/maker firmware
Data Quality
6 sources
Confidence: High

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.3%
Patch available No
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
Open
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

Privilege escalation occurs when an attacker leverages flaws in access control mechanisms to gain permissions beyond what they were originally granted.

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 heap overflow occurs when a program writes data beyond the bounds of a buffer allocated in the heap memory region.

Remote Code Execution represents the critical moment when an attacker successfully runs arbitrary code on a target system without physical access.

More in N A

View all
CVE-2024-51092 CRITICAL POC
9.1 May 08

LibreNMS before 24.10.0 allows a remote attacker to execute arbitrary code via OS command injection involving AboutContr

CVE-2025-15684 MEDIUM POC
5.5 Aug 12

Reachable assertion in Open5GS up to version 2.7.6 allows remote unauthenticated attackers to crash the Diameter CER han

CVE-2024-45257 HIGH POC
7.3 May 08

A Command Injection issue in the payload build page in BYOB (Build Your Own Botnet) 2.0 allows attackers to execute arbi

CVE-2025-15687 LOW POC
2.1 Aug 12

Denial of service in Open5GS 2.7.6 and earlier allows network-adjacent attackers with low-privilege Diameter Gx peer acc

CVE-2025-15686 LOW POC
2.1 Aug 12

Denial of service in Open5GS HSS (Home Subscriber Server) versions 2.7.0 through 2.7.6 is triggered remotely by manipula

CVE-2025-67888 HIGH POC
7.3 May 08

Remote command injection in Control Web Panel allows unauthenticated attackers to execute arbitrary OS commands as root

CVE-2024-53326 HIGH POC
7.3 May 08

LINQPad before 5.52.01 Pro edition is vulnerable to Unsafe Deserialization in LINQPad.AutoRefManager::PopulateFromCache(

CVE-2026-38360 CRITICAL POC
9.8 May 08

Remote code execution in dash-uploader (Python package for Plotly Dash) versions 0.1.0 through 0.7.0a2 allows unauthenti

CVE-2026-30623 CRITICAL POC
9.8 Jul 15

Command injection in LiteLLM 1.18.10 lets attackers who can configure MCP (Model Context Protocol) servers supply arbitr

CVE-2026-67917 CRITICAL POC
9.8 Aug 17

SQL injection in AzuraCast's backup restore flow (versions up to and including 0.23.7) lets an attacker achieve privileg

CVE-2026-75337 CRITICAL POC
9.8 Aug 27

Arbitrary file read in Yu AI Code Mother v4.3 lets anonymous, remote attackers retrieve files outside the intended previ

CVE-2026-31072 CRITICAL POC
9.8 May 19

Remote code execution in APScheduler (all versions through 3.10.x and 4.0.0a5) is achievable when applications deseriali

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