Skip to main content

arduino-esp32 CVE-2026-42855

| EUVDEUVD-2026-29859 HIGH
Improper Authentication (CWE-287)
2026-05-12 GitHub_M
7.5
CVSS 3.1 · GitHub Advisory
Share

Severity by source

GitHub Advisory PRIMARY
7.5 HIGH
AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N
vuln.today AI
6.5 MEDIUM

Network-reachable HTTP with low complexity, but PR:L because the attacker must already hold a valid digest response for one URI; impact is unauthorized resource access, primarily confidentiality.

3.1 AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N
4.0 AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N

Primary rating from GitHub Advisory.

CVSS VectorGitHub Advisory

Attack Vector
Network
Attack Complexity
Low
Privileges Required
None
User Interaction
None
Scope
Unchanged
Confidentiality
High
Integrity
None
Availability
None

Lifecycle Timeline

3
Analysis Generated
Jul 23, 2026 - 19:14 vuln.today
Patch available
May 12, 2026 - 23:03 EUVD
CVE Published
May 12, 2026 - 21:56 nvd
HIGH 7.5

DescriptionGitHub Advisory

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 Digest authentication implementation in arduino-esp32 computes the authentication hash using the URI field from the client's Authorization header, without verifying that it matches the actual requested URI. This allows an attacker who possesses any valid digest response (computed for URI-A) to authenticate requests to a completely different protected URI (URI-B), bypassing per-resource access control. This vulnerability is fixed in 3.3.8.

AnalysisAI

Digest authentication bypass in Espressif's arduino-esp32 WebServer (all versions prior to 3.3.8) lets an attacker who holds any single valid digest response replay it to reach a different protected endpoint, defeating per-resource access control. The flaw is CWE-287 (improper authentication) because the server trusts the URI value inside the client's Authorization header instead of binding the hash to the actually-requested resource. There is no public exploit identified at time of analysis, EPSS is very low (0.04%, 13th percentile), and CISA SSVC marks exploitation as none but automatable.

Technical ContextAI

The affected component is the WebServer library shipped in the arduino-esp32 core, which targets ESP32, ESP32-S2/S3, ESP32-C3/C6 and ESP32-H2 microcontrollers (CPE cpe:2.3:a:espressif:arduino-esp32). HTTP Digest Access Authentication (RFC 2617/7616) requires the client to fold several fields - including the request URI - into an MD5/SHA response hash so that a captured response cannot be replayed against a different resource. Here the server recomputes and validates the hash using the URI string supplied in the client's Authorization header rather than the URI on the actual request line, so the cryptographic binding between the credential and the specific resource is broken. This is a classic CWE-287 improper-authentication defect where a security-relevant input is taken from an attacker-controlled field without cross-checking it against the trusted request context.

RemediationAI

Vendor-released patch: upgrade the arduino-esp32 core to 3.3.8 or later and rebuild/reflash affected firmware, per advisory GHSA-28hv-fwm3-rpcq (https://github.com/espressif/arduino-esp32/security/advisories/GHSA-28hv-fwm3-rpcq). Where immediate reflashing of fielded devices is impractical, compensating controls include: restricting network reachability of the device's WebServer to a trusted management VLAN or via firewall/ACL so digest responses cannot be captured or replayed by outside parties (trade-off: breaks any legitimate remote access); avoiding reliance on per-URI digest authorization for privilege separation and instead requiring the same credential for all protected endpoints so cross-URI replay grants nothing extra (trade-off: coarser access model); and placing a reverse proxy in front of the device that re-validates the request URI against the Authorization header URI before forwarding (trade-off: added component and latency on constrained deployments). If Digest auth is not required, disabling it or switching the endpoint to a properly URI-bound auth scheme also removes the exposure.

Share

CVE-2026-42855 vulnerability details – vuln.today

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy