curl vulnerability

A vulnerability in libcurl caused the HTTP `Referer:` header to persist even when explicitly cleared. While the documentation states that passing NULL to `CURLOPT_REFERER` suppresses the header, the option failed to clear the internal state. As a result, the previous referrer string was erroneously reused and sent in subsequent requests, potentially leaking sensitive information to unintended servers.

Published 3 Jul 2026Updated 15 Sep 20266 sources
CVSS 7.5 ✓ VERIFIED REFERENCE

What happened

A vulnerability in libcurl caused the HTTP `Referer:` header to persist even when explicitly cleared. While the documentation states that passing NULL to `CURLOPT_REFERER` suppresses the header, the option failed to clear the internal state. As a result, the previous referrer string was erroneously reused and sent in subsequent requests, potentially leaking sensitive information to unintended servers.

Affected versions

curl: 8.18.0 through before 8.20.1 (semver); 2cb868242dc2ac9cd52ee64987ef51d5964a56f9 through before 862e8a74a84478d82973471b4f49dc2746c1780e (git); 8.20.0; 8.19.0; 8.18.0 Fixed: See vendor advisory.

Why it matters

Review the vendor advisory and exposure of the affected product to determine operational impact.

Detection & mitigation

  • Apply vendor-provided updates or mitigations.
  • Review affected product exposure and access logs.

Public PoC references

RepositoryAuthorFirst seenReference
hackerone.comNVD reference2026-07-03Verified