CVE-2026-44974
HIGH
7.7
CVSS 4.0
Description
@hapi/content provided HTTP Content-* headers parsing. Prior to 6.0.2, Content.disposition() retained the last occurrence of each duplicate parameter while Content.type() retained the first occurrence of duplicate charset and boundary parameters, creating a parameter-smuggling primitive when another component in the request-processing chain resolves duplicates the opposite way. This can allow an upload filename allowlist bypass in headers such as Content-Disposition: form-data; name="file"; filename="safe.txt"; filename="shell.php". This issue is fixed in version 6.0.2.
Metadata
Severity & Metrics
7.7
HIGH CVSS 4.0
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:L/VA:N/SC:N/SI:H/SA:N
Affected products (1)
| Vendor | Product | Platform | Versions |
|---|---|---|---|
| hapijs | content | — | < 6.0.2 |
Weakness (CWE)
| CWE | Source | Description |
|---|---|---|
| CWE-436 | cna | CWE-436: Interpretation Conflict |
CVSS scores (1)
| Score | Severity | Version | Source | Vector |
|---|---|---|---|---|
| 7.7 | HIGH | 4.0 | cna | CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:L/VA:N/SC:N/SI:H/SA:N |
References (2)
- https://github.com/hapijs/content/security/advisories/GHSA-36hh-x5p5-jgc8 https://github.com/hapijs/content/security/advisories/GHSA-36hh-x5p5-jgc8
- https://github.com/hapijs/content/commit/3850079550c191d25e3643dc82a6d61144db8c2f https://github.com/hapijs/content/commit/3850079550c191d25e3643dc82a6d61144db8c2f