CVE-2026-1527

Published: March 13, 2026Last modified: June 16, 2026

Description

ImpactWhen an application passes user-controlled input to the upgrade option of client.request(), an attacker can inject CRLF sequences (\r\n) to: * Inject arbitrary HTTP headers * Terminate the HTTP request prematurely and smuggle raw data to non-HTTP services (Redis, Memcached, Elasticsearch) The vulnerability exists because undici writes the upgrade value directly to the socket without validating for invalid header characters: // lib/dispatcher/client-h1.js:1121 if (upgrade) { header += `connection: upgrade\r\nupgrade: ${upgrade}\r\n` }

Severity score breakdown

ParameterValue
Base score4.6
Attack VectorNETWORK
Attack complexityLOW
Privileges requiredLOW
User interactionREQUIRED
ScopeUNCHANGED
ConfidentialityLOW
Integrity impactLOW
Availability impactNONE
VectorCVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:U/C:L/I:L/A:N

Status

ProductReleasePackageStatus
Alpaquita Linux23 LTSnodejsFixed (20.20.2-r0)
25 LTSnodejsFixed (22.22.2-r0)
StreamnodejsFixed (24.16.0-r0)
Hardened Containers23 LTSnodejsFixed (20.20.2-r0)
25 LTSnodejsFixed (22.22.2-r0)
StreamnodejsFixed (24.16.0-r0)

References

ON THIS PAGE