Skip to main content
VulnerabilityPublished Updated

CVE-2025-53007: espressif arduino-esp32 · HTTP Request/Response Splitting

Affects espressif arduino-esp32Source CVE Database V5

0

Public exploit available · CVSS 8.9 High : upgrade to 3.2.1 as a priority.

Data as of 26 Oct 2026, 13:47 UTC

CVSS 4.0 base score
8.9High
How severe the flaw is on the 0–10 CVSS scale.
EPSS
0.4% chance of exploitation in 30 days – higher than 40% of CVEsExploit Prediction Scoring System: the likelihood attackers will use this flaw soon.
Patch
Available – fixed in 3.2.1
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N/E:P

Exploitation evidence

  1. Disclosed: evidence found.

    CVE published 26 Jun 2025

  2. Detectable: no evidence on record.

    No public nuclei template indexed

  3. Weaponised: evidence found.

    CVSS exploit maturity: proof of concept public

  4. Exploited in the wild: no evidence on record.

    Not in CISA KEV and no source reports exploitation

  5. Observed by OffSeq Mirage: no evidence on record.

    No attack traffic recorded by OffSeq Mirage sensors

A missing step is not evidence of safety. Sources: cve.org (opens in a new tab), CVSS vector, the Metasploit, Exploit-DB and nuclei-templates index as of 26 Oct 2026.

What to do

Upgrade espressif/arduino-esp32 to 3.2.1.

Affected software

ProductAffectedFixed in
GitHubespressif/arduino-esp32pkg:github/espressif/arduino-esp32Other threatsAffected
  • <3.2.1
Fixed in
  • 3.2.1

Check your own hosts for these packages with threat-finder (opens in a new tab), our free open-source scanner.

AI-suggested

European organizations should take the following specific mitigation steps: 1) Immediately identify and inventory all ESP32 devices running vulnerable versions of arduino-esp32 firmware. 2) Upgrade all affected devices to arduino-esp32 versions 3.3.0-RC1 or 3.2.1 or later, where the vulnerability is patched. 3) If firmware upgrades are not immediately feasible, implement network-level protections such as web application firewalls (WAFs) or intrusion prevention systems (IPS) configured to detect and block HTTP header injection patterns, including CRLF sequences. 4) Employ strict input validation and sanitization on any user-controllable inputs that may be passed to the `sendHeader` function or similar HTTP header construction routines in custom firmware. 5) Monitor network traffic for anomalous HTTP responses that may indicate exploitation attempts, including unexpected header structures or duplicated HTTP responses. 6) For critical deployments, consider segmenting ESP32 devices on isolated network segments with limited external access to reduce exposure. 7) Engage with device manufacturers or vendors to ensure timely firmware updates and security patches. 8) Incorporate this vulnerability into incident response and vulnerability management workflows to ensure rapid detection and remediation.

Description

arduino-esp32 provides an Arduino core for the ESP32. Versions prior to 3.3.0-RC1 and 3.2.1 contain a HTTP Response Splitting vulnerability. The `sendHeader` function takes arbitrary input for the HTTP header name and value, concatenates them into an HTTP header line, and appends this to the outgoing HTTP response headers. There is no validation or sanitization of the `name` or `value` parameters before they are included in the HTTP response. If an attacker can control the input to `sendHeader` (either directly or indirectly), they could inject carriage return (`\r`) or line feed (`\n`) characters into either the header name or value. This could allow the attacker to inject additional headers, manipulate the structure of the HTTP response, potentially inject an entire new HTTP response (HTTP Response Splitting), and/or ause header confusion or other HTTP protocol attacks. Versions 3.3.0-RC1 and 3.2.1 contain a fix for the issue.

References

Community reviews

Loading reviews…