CVE-2026-44974 Parameter smuggling in @hapi/content header parser allows upload-filter bypass via duplicate parameters

High 7.7 Published Updated

Attackers can bypass upload filename allowlists by exploiting inconsistent duplicate parameter handling in HTTP header parsing, potentially leading to remote code execution.

Exploited in the wild
Not known
Login needed
Not needed
Attackable
Over the internet
Victim action needed
Not needed
Fix
Available

What is CVE-2026-44974?

CVE-2026-44974 is a high-severity vulnerability in hapijs content, published on 17 Jul 2026. An attacker can exploit it over the internet without logging in, with no action from the victim.

Official 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.

Weakness: CWE-436

Which versions are affected by CVE-2026-44974?

2 open source packages ship an affected version, including @hapi/content.

PackageAffectedFixed in
@hapi/content npmAll versions6.0.2
@hapi/content npmAll versions6.0.2

How do I fix CVE-2026-44974?

Upgrade @hapi/content to 6.0.2 or later.

Is CVE-2026-44974 being exploited?

There is no known exploitation of CVE-2026-44974 in the wild and no public exploit code.

Sources

Also known as ECHO-366e-1401-9fd9, GHSA-36hh-x5p5-jgc8, MINI-2w83-5fqj-34jw, MINI-4r9w-7qh8-v7gh, MINI-79c9-fgvc-8q3m, MINI-8mp8-2ccg-jxvg and 11 more.

Is CVE-2026-44974 in your software?

Upload an SBOM and sbomify checks it against every vulnerability here, every day.

Check your SBOMs for free