Medium severity · published Oct 27, 2026
CVE-2026-116689
follow-redirects: Cross-realm sensitiveHeaders arrays are discarded and custom credentials can follow redirects
New
5.9
CVSS
–
EPSS
No
On KEV
Description
follow-redirects is a Node.js HTTP and HTTPS client wrapper that automatically follows redirects. From 1.16.0 until 1.16.2, the documented sensitiveHeaders option is checked with value instanceof Array, so an array created in another JavaScript realm is replaced with an empty list even though Array.isArray recognizes it. When a request then follows an attacker-controlled cross-origin redirect, a custom credential header named in that discarded list can be forwarded to the redirect destination. This issue is fixed in version 1.16.2.
CVSS vector
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N
Attack vector
Network
Complexity
High
Privileges
None
User interaction
None
Confidentiality
High
Integrity
None
Availability
None
Scope
Unchanged
Exploitation
Is it being used?
Exploited in the wildNo evidence yet
CISA KEVNot listed
Ransomware campaign useNot known
Affected products
Which versions
FO
follow-redirects · follow-redirects
>= 1.16.0, < 1.16.2 · source: vendor
References
NVD
https://nvd.nist.gov/vuln/detail/CVE-2026-116689
CVE.org
https://www.cve.org/CVERecord?id=CVE-2026-116689
github.com
https://github.com/follow-redirects/follow-redirects/commit/b0a7751e9cd64cd8eeb6ec67d2f206a9cc88d3f8
github.com
https://github.com/follow-redirects/follow-redirects/releases/tag/v1.16.2
github.com
https://github.com/follow-redirects/follow-redirects/security/advisories/GHSA-mrwp-f3q8-3g9p
More from follow-redirects
8.2
CVE-2026-111756
follow-redirects array-form headers bypass cross-origin credential stripping
8.2
CVE-2026-111755
follow-redirects sensitiveHeaders regex escaping can expose credential headers
7.5
CVE-2026-40895
follow-redirects: Custom Authentication Headers Leaked to Cross-Domain Redirect Targets
6.1
CVE-2023-26159
Versions of the package follow-redirects before 1.15.4 are vulnerable to Improper Input Validation due to the improper handling of URLs by the url.parse() function
