CVE-2026-63481 — hurl
Fix: Orange-OpenSource/hurl@ed91c89CVE-2026-63481 is a CWE-201 vulnerability in hurl. No vendor fix is recorded yet; mitigation options are listed below.
Hurl: Cookies in Cookies section leak when redirecting to a different host
Exploitation Status
No confirmed exploitation observed yet
- CISA assesses this as automatable — exploitation doesn’t require manual, per-target effort, which raises the odds of mass scanning and opportunistic attacks.
- CISA’s own triage has not observed active exploitation or public proof-of-concept code for this CVE as of its last assessment.
Exploitation and automatability from CISA’s SSVC triage for CVE-2026-63481.
EPSS Exploitation Probability
Probability of exploitation in the next 30 days, from FIRST.org EPSS.
Real-World Exposure
hurlReal-time download stats are indexed for npm and PyPI packages. This vulnerability affects crates.io packages — download data is not available via public APIs for these ecosystems.
Description
The Bug
Hurl <= 8.0.1 lets you define cookies two ways in a .hurl file:
- As a raw Cookie: header in the [Header]/headers area
- In a dedicated [Cookies] section (parsed into RequestSpec.cookies)
When following a redirect to a different host, Hurl correctly strips security-sensitive data (Authorization, Cookie header, and basic-auth user) to avoid leaking credentials cross-host — mirroring libcurl's default behavior. But it only stripped the cookie that came in as a header. Cookies declared in the [Cookies] section were carried over to the new host unchanged — a credential-leak bug.
Hurl file that leaks cookies:
GET http://localhost:8000/follow-redirect-basic-auth?change_host=true
[Cookies]
fruit: lemon
HTTP 200
Hurl file that doesn't leak cookie:
GET http://localhost:8000/follow-redirect-basic-auth?change_host=true
Cookie: fruit=lemon
HTTP 200
Patch
With Hurl <= 8.0.1, user can use Cookie header instead of the dedicated [Cookies] section.
Affected Packages
| Ecosystem | Package | Vulnerable range | Fix |
|---|---|---|---|
| 🦀crates.io | hurl | all versions | No fix |
Detection & mitigation playbook
Open-source dependencyDetect
Scan your dependency tree (package-lock.json, pnpm-lock.yaml, requirements.txt, go.sum, etc.) for hurl, including transitive dependencies — a direct dependency you never call can still pull in a vulnerable version.
Remediation status
No patched version of hurl has shipped for CVE-2026-63481 yet. Where your build allows, override or pin the dependency away from the vulnerable range, and apply any maintainer-recommended mitigation.
Mitigate without a patch
If you can't upgrade right away: gate or disable the affected feature, validate untrusted input at the boundary, and avoid passing attacker-controlled data into the vulnerable path. O3's runtime protection blocks exploitation in production as an interim safeguard until the upgrade lands.
Frequently Asked Questions
Is CVE-2026-63481 in your dependencies?
Find it across crates.io, including transitive dependencies.