Summary
CVE-2026-54571 is an integer overflow vulnerability (CWE-190) in the multipart/form-data parser of ESPAsyncWebServer, a widely used asynchronous HTTP/WebSocket server library for ESP32, ESP8266, RP2040, and RP2350 microcontrollers. A remote, unauthenticated attacker can send a crafted HTTP request that causes the parser’s internal position counter to wrap around and loop indefinitely, driving excessive CPU consumption and triggering watchdog resets on affected devices. The flaw carries a High severity rating (CVSS 8.7) and affects versions 3.11.0 and earlier.
Technical details
- Root cause: In
src/WebRequest.cpp, the multipart/form-data boundary parser tracks its position using_boundaryPosition, an 8-bit unsigned integer (uint8_t) that can only represent values 0–255. - Trigger condition: When a client supplies a multipart boundary string of exactly 256 bytes, the counter increments past its maximum value and wraps from 255 back to 0, so the parsing loop never reaches its intended termination condition.
- Attack vector: Network — exploitation requires only sending a specially crafted HTTP multipart/form-data request with a 256-byte boundary to an exposed device; no authentication or user interaction is required.
- Impact: The runaway parsing loop drives sustained excessive CPU usage on the constrained microcontroller, which can trigger FreeRTOS watchdog resets — resulting in denial of service (device reboot/unavailability) on ESP32 and ESP8266 targets running the vulnerable library.
Affected software
- ESP32Async/ESPAsyncWebServer — version 3.11.0 and all earlier versions
Severity
- CVSS Score: 8.7 (High)
- CVSS Vector (v4.0):
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N - Impact is limited to Availability (denial of service); Confidentiality and Integrity are not affected.
Mitigation and recommended actions
- Immediate: Upgrade ESPAsyncWebServer to version 3.11.1 or later, which fixes the boundary-position overflow.
- If patching is not immediately possible:
- Restrict network exposure of ESP32/ESP8266 devices running ESPAsyncWebServer — avoid exposing device HTTP endpoints directly to the internet.
- Use a reverse proxy, gateway, or firewall rule to inspect/limit multipart/form-data request boundary lengths before they reach the device.
- Monitor for unexpected device reboots or watchdog resets as a possible indicator of exploitation attempts.

