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, the WebServer multipart form parser in arduino-esp32 allocates a Variable Length Array (VLA) on the stack whose size is derived from an attacker-controlled HTTP header field (Content-Type: multipart/form-data; boundary=...) without enforcing any length limit. Sending a boundary string longer than ~8000 characters overflows the 8192-byte task stack of the loopTask, causing a crash and potential remote code execution. This vulnerability is fixed in 3.3.8.
Metrics
Affected Vendors & Products
References
History
Wed, 13 May 2026 00:00:00 +0000
| Type | Values Removed | Values Added |
|---|---|---|
| First Time appeared |
Espressif
Espressif arduino-esp32 |
|
| Vendors & Products |
Espressif
Espressif arduino-esp32 |
Tue, 12 May 2026 22:15:00 +0000
| Type | Values Removed | Values Added |
|---|---|---|
| Description | 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, the WebServer multipart form parser in arduino-esp32 allocates a Variable Length Array (VLA) on the stack whose size is derived from an attacker-controlled HTTP header field (Content-Type: multipart/form-data; boundary=...) without enforcing any length limit. Sending a boundary string longer than ~8000 characters overflows the 8192-byte task stack of the loopTask, causing a crash and potential remote code execution. This vulnerability is fixed in 3.3.8. | |
| Title | arduino-esp32: Stack buffer overflow in WebServer multipart boundary parsing leads to remote crash potential RCE | |
| Weaknesses | CWE-121 | |
| References |
| |
| Metrics |
cvssV3_1
|
Status: PUBLISHED
Assigner: GitHub_M
Published: 2026-05-12T21:56:33.437Z
Updated: 2026-05-12T21:56:33.437Z
Reserved: 2026-04-30T16:44:48.378Z
Link: CVE-2026-42854
No data.
Status : Received
Published: 2026-05-12T22:16:34.930
Modified: 2026-05-12T22:16:34.930
Link: CVE-2026-42854
No data.
ReportizFlow