# CVE-2026-51254: schreibfaul1 ESP32-audioI2S integer underflow in MP3Decoder

Source: https://junglewise.ai/threats/cve-2026-51254-schreibfaul1-esp32-audioi2s-integer-underflow-in-mp3decoder  
Publisher: Junglewise Threat Intelligence, https://junglewise.ai/threats  
Published: 2026-07-28. Updated: 2026-07-28  
License: CC BY 4.0 with a link back

CVE-2026-51254 · Severity: info · CVSS 7.5 · Published 2026-07-28

A vulnerability exists in the ESP32-audioI2S library, which is used by ESP32 microcontrollers to play audio files. By providing a specially crafted MP3 file, an attacker can cause the device to crash or stop playing audio. In some cases, this could also lead to the exposure of sensitive information stored in the device's memory.

Technologies: [Schreibfaul1 ESP32-audioI2S](https://junglewise.ai/threats/technologies/esp32-audioi2s). Vendors: [Schreibfaul1](https://junglewise.ai/threats/vendors/schreibfaul1).

## Quick answers

**Is CVE-2026-51254 exploited in the wild?** No. Junglewise Threat Intelligence has no report of CVE-2026-51254 being exploited in the wild.

**How severe is CVE-2026-51254?** Informational severity, with a CVSS score of 7.5, published 28 July 2026.

**Which products and versions are affected?** Schreibfaul1 ESP32-audioI2S 3.4.5.

**Is there a fix for CVE-2026-51254?** No fixed version is recorded yet. Check the vendor's advisory in the references below. If you run it, Junglewise drafts a mitigation that fits your setup and applies it once you approve, with senior security engineers behind it.

**How is CVE-2026-51254 attacked?** It is attacked over the network, in a software library.

**Am I affected by CVE-2026-51254?** Check whether you run Schreibfaul1 ESP32-audioI2S at an affected version. Junglewise does that check for you around the clock: connect your code, cloud and domains, and it matches new vulnerabilities like this one against what you actually run and tells you when one reaches you.

## Technical details

An integer underflow vulnerability exists in the MP3Decoder::GetBits() function within mp3_decoder.cpp of the schreibfaul1 ESP32-audioI2S library. The root cause is a lack of validation on the nBits parameter before it is subtracted from the cachedBits counter. When a crafted MP3 frame specifies an nBits value larger than the current cachedBits, the signed integer underflows to a negative value. This corrupted state results in incorrect memory offset calculations during subsequent bitstream refills, leading to out-of-bounds heap reads. Attackers can exploit this via unauthenticated remote audio streams or local files to cause a device crash (watchdog timeout) or potentially leak sensitive heap memory.

## Affected products

- schreibfaul1 ESP32-audioI2S 3.4.5

## Timeline

- 2026-07-28: disclosed
- 2026-07-28: advisory

## References

- [https://github.com/programmervuln/cveadvisory-/blob/main/CVE-2026-51254](https://github.com/programmervuln/cveadvisory-/blob/main/CVE-2026-51254)
- [https://github.com/schreibfaul1/ESP32-audioI2S/blob/master/src/mp3_decoder/mp3_decoder.cpp](https://github.com/schreibfaul1/ESP32-audioI2S/blob/master/src/mp3_decoder/mp3_decoder.cpp)

## Related threats

- [ESP32-audioI2S heap out-of-bounds read in ID3 header processing](https://junglewise.ai/threats/cve-2026-87961-esp32-audioi2s-heap-out-of-bounds-read-in-id3-header-processing)
- [schreibfaul1 ESP32-audioI2S heap overflow in latinToUTF8](https://junglewise.ai/threats/cve-2026-51272-schreibfaul1-esp32-audioi2s-heap-overflow-in-latintoutf8)
- [schreibfaul1 ESP32-audioI2S heap buffer overflow in ID3v2 APIC parsing](https://junglewise.ai/threats/cve-2026-51275-schreibfaul1-esp32-audioi2s-heap-buffer-overflow-in-id3v2-apic)
- [schreibfaul1 ESP32-audioI2S heap overflow in SYLT parser](https://junglewise.ai/threats/cve-2026-51274-schreibfaul1-esp32-audioi2s-heap-overflow-in-sylt-parser)
- [schreibfaul1 ESP32-audioI2S heap overflow in showID3Tag](https://junglewise.ai/threats/cve-2026-51273-schreibfaul1-esp32-audioi2s-heap-overflow-in-showid3tag)
