CVE-2026-113440 PUBLISHED

HTTP/1.1 and HTTP/2 redirects resend basic_auth and cookie to a different scheme or port in hackney

Assigner: EEF
Reserved: 26.10.2026 Published: 26.10.2026 Updated: 26.10.2026

Insufficiently Protected Credentials vulnerability in hackney in benoitc hackney allows a redirecting server to obtain the basic_auth and cookie credentials of a request via a same-host redirect to another scheme or port. With follow_redirect enabled, hackney:follow_redirect/10 in src/hackney.erl reissues the request to the Location target after hackney:maybe_strip_auth_on_redirect/3, which compared only the hostname of the current and the redirect URL. A redirect from https to http on the same host resent the Authorization and Cookie headers in cleartext, where an on-path attacker can read them, and a redirect to another port on the same host handed them to a different service. location_trusted forwards credentials to any target by design and is unchanged.

This issue affects hackney: from 2.0.0 before 4.9.0.

Metrics

CVSS Vector: CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:P/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N
CVSS Score: 6

Product Status

Vendor benoitc
Product hackney
Versions Default: unaffected
  • affected from 2.0.0 to 4.9.0 (excl.)
Vendor benoitc
Product hackney
Versions Default: unaffected
  • affected from 8f944559bdb83da60b5c06f6cf6d842591278364 to 6548384b22ea196023a1963e2967d5715b6d9564 (excl.)

Affected Configurations

The request is made with follow_redirect enabled and the basic_auth or cookie option set, over HTTP/1.1 or HTTP/2, without location_trusted. Credentials passed as explicit request headers are not forwarded on redirects and are not affected.

Workarounds

Disable follow_redirect and handle the Location header in the application, or pass the credentials as explicit Authorization and Cookie request headers instead of the basic_auth and cookie options. hackney:follow_redirect/10 issues the redirected request with an empty header list, so explicit headers reach the first server only.

Credits

  • Martin Karrer finder
  • Martin Karrer remediation developer
  • Benoit Chesneau remediation developer
  • Jonatan Männchen / EEF coordinator

References

Problem Types

  • CWE-522 Insufficiently Protected Credentials CWE

Impacts

  • A server that answers a credentialed request with a same-host redirect to plain HTTP exposes the client's Authorization and Cookie headers to anyone on the network path, and a redirect to another port delivers them to whatever service listens there. The captured values can be replayed against the original origin.