Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessHost malicious HTML/metadata on a stream
-
DeliveryLure ESP32 device to fetch it
-
ExploithtmlToUTF8() decodes crafted entities
-
ExecutionUnbounded memmove/memcpy overflows heap
-
PersistOverwrite heap structures on ESP32
-
ImpactExecute 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. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – 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
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
AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H
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.
Primary rating from Vendor (mitre).
CVSS VectorVendor: mitre
Lifecycle Timeline
3DescriptionCVE.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
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.
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
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.
What every action level means
SSVC AssessmentENISA
Priority Score
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.
LibreNMS before 24.10.0 allows a remote attacker to execute arbitrary code via OS command injection involving AboutContr
Reachable assertion in Open5GS up to version 2.7.6 allows remote unauthenticated attackers to crash the Diameter CER han
A Command Injection issue in the payload build page in BYOB (Build Your Own Botnet) 2.0 allows attackers to execute arbi
Denial of service in Open5GS 2.7.6 and earlier allows network-adjacent attackers with low-privilege Diameter Gx peer acc
Denial of service in Open5GS HSS (Home Subscriber Server) versions 2.7.0 through 2.7.6 is triggered remotely by manipula
Remote command injection in Control Web Panel allows unauthenticated attackers to execute arbitrary OS commands as root
LINQPad before 5.52.01 Pro edition is vulnerable to Unsafe Deserialization in LINQPad.AutoRefManager::PopulateFromCache(
Remote code execution in dash-uploader (Python package for Plotly Dash) versions 0.1.0 through 0.7.0a2 allows unauthenti
Command injection in LiteLLM 1.18.10 lets attackers who can configure MCP (Model Context Protocol) servers supply arbitr
SQL injection in AzuraCast's backup restore flow (versions up to and including 0.23.7) lets an attacker achieve privileg
Arbitrary file read in Yu AI Code Mother v4.3 lets anonymous, remote attackers retrieve files outside the intended previ
Remote code execution in APScheduler (all versions through 3.10.x and 4.0.0a5) is achievable when applications deseriali
EUVD-2026-49868
GHSA-3x42-qh3f-f9p5
NVD
CVE.org
EPSS
Vulnrichment
Exploit-DB