CVE-2026-54571
HighCVSS 8.7Exploitation Probability (EPSS)
Low risk42th percentile - higher than 42% of all known CVEs
Summary
In ESPAsyncWebServer (an asynchronous HTTP and WebSocket server library for ESP32, ESP8266, RP2040 and RP2350) before version 3.11.1, the multipart/form-data parser in src/WebRequest.cpp stores _boundaryPosition as an 8-bit value while _parseMultipartPostByte processes the boundary. A remote request containing an exactly 256-byte multipart boundary wraps _boundaryPosition from 255 to zero, prevents the boundary parsing loop from terminating, consumes excessive CPU, and triggers a FreeRTOS watchdog reset on affected ESP32 or ESP8266 devices. The issue is fixed in version 3.11.1.
Risk Assessment
A remote attacker can cause the parsing loop to hang, consume excessive CPU, and trigger a watchdog reset with a single request, restarting the device and disrupting service. This affects ESP32 and ESP8266 devices.
Recommendation
Update the ESPAsyncWebServer library to version 3.11.1 or later. Until then, consider restricting access to devices and monitoring for unexpected reboots.
Other vulnerabilities in ESPAsyncWebServer
Original NVD description (English source)
ESPAsyncWebServer is an asynchronous HTTP and WebSocket server library for ESP32, ESP8266, RP2040 and RP2350. Prior to 3.11.1, the multipart/form-data parser in src/WebRequest.cpp stores _boundaryPosition as an 8-bit value while _parseMultipartPostByte processes the boundary. A remote request containing an exactly 256-byte multipart boundary wraps _boundaryPosition from 255 to zero, prevents the boundary parsing loop from terminating, consumes excessive CPU, and triggers a FreeRTOS watchdog reset on affected ESP32 or ESP8266 devices. This issue is fixed in version 3.11.1.
Vulnerability data from NVD (NIST) · CISA KEV · EPSS

