Arendst Tasmota Buffer Overflow Vulnerability in MJPEG Fetch Function Allowing Remote Code Execution

Vulnerability

A buffer overflow vulnerability has been identified in Arendst Tasmota versions through 15.3.0.3. This vulnerability allows remote code execution on ESP32-based devices. The issue arises in the 'fetch_jpg()' function within the 'xdrv_10_scripter.ino' file, where improper handling of data can lead to memory corruption and exploitation.

Impact

Exploitation of this vulnerability allows for arbitrary code execution on the affected device, with access to device secrets and credentials. Additionally, the vulnerability can cause a guaranteed crash and subsequent reboot loop of the device.

Reproduction

The vulnerability can be reproduced by uploading a Tasmota script that uses the 'fetchjp()' function to connect to a malicious MJPEG server. The server must be configured to send a crafted HTTP response that exploits the buffer overflow by including a boundary string longer than 40 characters. After the initial exploitation phase, the server can send MJPEG frames with a 'Content-Length' that wraps around, causing further memory corruption and stream state disruption.

Remediation

Users can upgrade to Tasmota version 15.3.0.4 or later, where this vulnerability has been patched.

Added: May 28, 2026, 2:45 AM
Updated: May 28, 2026, 2:45 AM

Vulnerability Rating

Custom Algorithm
spread
6.8
impact
7.5
exploitability
7.0
remediation
7.7
relevance
9.1
threat
6.4
urgency
2.9
incentive
0.0

Our algorithm analyzes dozens of metrics to generate these 8 key vulnerability categories, which are then combined to calculate the overall risk score.