CVE-2014-6393 No Charset in Content-Type Header in express

Medium 6.1 Published Updated

Remote attackers can execute cross-site scripting attacks via non-standard encoding in Express framework error responses due to missing charset headers.

Exploited in the wild
Not known
Login needed
Not needed
Attackable
Over the internet
Victim action needed
A user has to click or open something
Fix
Available

What is CVE-2014-6393?

CVE-2014-6393 is a medium-severity cross-site scripting vulnerability in n/a, published on 9 Aug 2017. An attacker can exploit it over the internet without logging in, and only if a user opens a file or follows a link.

Official description

The Express web framework before 3.11 and 4.x before 4.5 for Node.js does not provide a charset field in HTTP Content-Type headers in 400 level responses, which might allow remote attackers to conduct cross-site scripting (XSS) attacks via characters in a non-standard encoding.

Weakness: CWE-79

Which versions are affected by CVE-2014-6393?

4 open source packages ship an affected version, including express. It affects 1 product.

PackageAffectedFixed in
express npmAll versions3.11.0
express npmAll versions3.11.0
express npmFrom 4.0.04.5.0
express npmFrom 4.0.04.5.0

Products include Openjsf Express.

How do I fix CVE-2014-6393?

Upgrade express to a fixed version for your release line: 3.11.0 or 4.5.0.

Escape output for the context it lands in and set a strict Content Security Policy. Upgrading the affected component is the real fix. More about Cross-site scripting.

Is CVE-2014-6393 being exploited?

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

Sources

Also known as DEBIAN-CVE-2014-6393, GHSA-gpvr-g6gh-9mc2, UBUNTU-CVE-2014-6393.

Is CVE-2014-6393 in your software?

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

Check your SBOMs for free