Skip to main content
← All vulnerabilities
CVE-2026-55553GHSA-HQ3H-G68C-HP78

urllib: Cross-origin redirects preserve credential-bearing request headers, leading to potential credential leakage

Published
Last modified
published
Not listed in CISA KEV
Fix
Fixed in 4.9.1, 2.44.1
None on Exploit-DB, Metasploit or GitHub
  • Exploitation: poc
  • Automatable: yes
  • Technical impact: partial

Summary

urllib is an HTTP client for Node.js that supports authentication, redirects, timeouts, and other request features. Prior to 4.9.1 and 2.44.1, urllib follows redirects through followRedirect but reuses caller-supplied options across origins. In src/HttpClient.ts, #requestInternal recursively calls this.#requestInternal(nextUrl.href, options, requestContext), causing options.headers and auth or digestAuth values to be reused when the redirect target has a different scheme, host, or port. Authorization, Cookie, Proxy-Authorization, x-api-key, x-auth-token, and x-access-token can therefore be sent to an attacker-controlled redirected origin, exposing credentials intended for the original origin and potentially allowing reuse against the original partner API or related services. No user interaction is required. This issue is fixed in versions 2.44.1 and 4.9.1.

Timeline

  1. CVE published
  2. CISA SSVC assessment

    Exploitation: poc · Automatable: yes · Technical impact: partial

  3. Record last updated

Affected versions

  • node-modules urllib

    From 3.0.0 · fixed in 4.9.1; fixed in 2.44.1

  • urllibnpm

    From 3.0.0 · fixed in 4.9.1

  • urllibnpm

    fixed in 2.44.1

References 7

GitHub · node-modules/urllib