CVE-2026-62966
ESPAsyncWebServer multipart parser has null-pointer write
ESPAsyncWebServer is an asynchronous HTTP and WebSocket server library for ESP32, ESP8266, RP2040 and RP2350. Prior to version 3.11.2, the multipart parser in src/WebRequest.cpp frees _itemBuffer and sets it to NULL when BOUNDARY_OR_DATA matches the closing boundary of a file part, before confirming the following terminator, while leaving _itemIsFile true. If the next byte is neither the final closing dashes nor a clean CRLF, the DASH3_OR_RETURN2 or EXPECT_FEED2 rewind branch re-injects provisionally consumed bytes through itemWriteByte. Because _itemIsFile remains true, _itemBuffer[_itemBufferIndex++] writes through a null pointer. On ESP32 this causes a StoreProhibited exception, panic and device reboot, producing remote denial of service. A route with a non-trivial body/upload handler, such as a file-upload or web-OTA endpoint, must be present. This issue is fixed in version 3.11.2.
Attack profile
How easy it is to exploit
- Attack vector
- Network
- Complexity
- Low
- Privileges needed
- None
- User interaction
- None
What an attacker can affect
- Confidentiality
- None
- Integrity
- None
- Availability
- High
Exploit likelihood
What each source reports
CVE List Score used
7.5
ESPAsyncWebServer multipart parser has null-pointer write
ESPAsyncWebServer is an asynchronous HTTP and WebSocket server library for ESP32, ESP8266, RP2040 and RP2350. Prior to version 3.11.2, the multipart parser in src/WebRequest.cpp frees _itemBuffer and sets it to NULL when BOUNDARY_OR_DATA matches the closing boundary of a file part, before confirming the following terminator, while leaving _itemIsFile true. If the next byte is neither the final closing dashes nor a clean CRLF, the DASH3_OR_RETURN2 or EXPECT_FEED2 rewind branch re-injects provisionally consumed bytes through itemWriteByte. Because _itemIsFile remains true, _itemBuffer[_itemBufferIndex++] writes through a null pointer. On ESP32 this causes a StoreProhibited exception, panic and device reboot, producing remote denial of service. A route with a non-trivial body/upload handler, such as a file-upload or web-OTA endpoint, must be present. This issue is fixed in version 3.11.2.
- Record
CVE-2026-62966- CVSS 3.1
- 7.5 High
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H - Weakness
- CWE-476, CWE-672
- Updated
- 2026-11-06
EUVDEUVD-2026-114469
7.5
ESPAsyncWebServer is an asynchronous HTTP and WebSocket server library for ESP32, ESP8266, RP2040 and RP2350. Prior to version 3.11.2, the multipart parser in src/WebRequest.cpp frees _itemBuffer and sets it to NULL when BOUNDARY_OR_DATA matches the closing boundary of a file part, before confirming the following terminator, while leaving _itemIsFile true. If the next byte is neither the final closing dashes nor a clean CRLF, the DASH3_OR_RETURN2 or EXPECT_FEED2 rewind branch re-injects provisionally consumed bytes through itemWriteByte. Because _itemIsFile remains true, _itemBuffer[_itemBufferIndex++] writes through a null pointer. On ESP32 this causes a StoreProhibited exception, panic and device reboot, producing remote denial of service. A route with a non-trivial body/upload handler, such as a file-upload or web-OTA endpoint, must be present. This issue is fixed in version 3.11.2.
- Record
EUVD-2026-114469- CVSS 3.1
- 7.5 High
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H - Updated
- 2026-11-06
NVD
7.5
ESPAsyncWebServer is an asynchronous HTTP and WebSocket server library for ESP32, ESP8266, RP2040 and RP2350. Prior to version 3.11.2, the multipart parser in src/WebRequest.cpp frees _itemBuffer and sets it to NULL when BOUNDARY_OR_DATA matches the closing boundary of a file part, before confirming the following terminator, while leaving _itemIsFile true. If the next byte is neither the final closing dashes nor a clean CRLF, the DASH3_OR_RETURN2 or EXPECT_FEED2 rewind branch re-injects provisionally consumed bytes through itemWriteByte. Because _itemIsFile remains true, _itemBuffer[_itemBufferIndex++] writes through a null pointer. On ESP32 this causes a StoreProhibited exception, panic and device reboot, producing remote denial of service. A route with a non-trivial body/upload handler, such as a file-upload or web-OTA endpoint, must be present. This issue is fixed in version 3.11.2.
- Record
CVE-2026-62966- CVSS 3.1
- 7.5 High
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H - Weakness
- CWE-476, CWE-672
- Updated
- 2026-11-06
OSV
7.5
ESPAsyncWebServer multipart parser has null-pointer write
ESPAsyncWebServer is an asynchronous HTTP and WebSocket server library for ESP32, ESP8266, RP2040 and RP2350. Prior to version 3.11.2, the multipart parser in src/WebRequest.cpp frees _itemBuffer and sets it to NULL when BOUNDARY_OR_DATA matches the closing boundary of a file part, before confirming the following terminator, while leaving _itemIsFile true. If the next byte is neither the final closing dashes nor a clean CRLF, the DASH3_OR_RETURN2 or EXPECT_FEED2 rewind branch re-injects provisionally consumed bytes through itemWriteByte. Because _itemIsFile remains true, _itemBuffer[_itemBufferIndex++] writes through a null pointer. On ESP32 this causes a StoreProhibited exception, panic and device reboot, producing remote denial of service. A route with a non-trivial body/upload handler, such as a file-upload or web-OTA endpoint, must be present. This issue is fixed in version 3.11.2.
- Record
CVE-2026-62966- CVSS 3.1
- 7.5 High
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H - Weakness
- CWE-476, CWE-672
- Updated
- 2026-11-07
Affected products
History
| Recorded | Changed | Sources |
|---|---|---|
| facts | EUVD | |
| first indexed | CVE List, EUVD, NVD, OSV |
Dates are when Every CVE recorded each change. Upstream dates may differ.
In short
CVE-2026-62966 is a high vulnerability (CVSS 7.5) in Esp32async Espasyncwebserver, published October 30, 2026. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 0.43%, the 37th percentile. No source names a fixed version.
References
github.com/ESP32Async/ESPAsyncWebServer/security/advisories/GHSA-8m8p-vhxc-jmjw
github.com/ESP32Async/ESPAsyncWebServer/commit/4efbd35e597d91f01749f2d4a14bb78fba8ea02e
github.com/ESP32Async/ESPAsyncWebServer/tree/v3.11.2
github.com/CVEProject/cvelistV5/tree/main/cves/2026/62xxx/CVE-2026-62966.json
nvd.nist.gov/vuln/detail/CVE-2026-62966