CVE-2016-10516 Pallets Werkzeug cross-site scripting vulnerability

Medium 6.1 Published Updated

Remote attackers can inject arbitrary web script or HTML via exception messages in the Werkzeug debugger, requiring the debugger to be enabled.

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-2016-10516?

CVE-2016-10516 is a medium-severity cross-site scripting vulnerability in n/a, published on 23 Oct 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

Cross-site scripting (XSS) vulnerability in the render_full function in debug/tbtools.py in the debugger in Pallets Werkzeug before 0.11.11 (as used in Pallets Flask and other products) allows remote attackers to inject arbitrary web script or HTML via a field that contains an exception message.

Weakness: CWE-79

Which versions are affected by CVE-2016-10516?

3 open source packages ship an affected version, including werkzeug and Werkzeug. It affects 1 product.

PackageAffectedFixed in
werkzeug PyPIAll versions0.11.11
werkzeug PyPIAll versions0.11.11
Werkzeug PyPIAll versions0.11.11

Products include Palletsprojects Werkzeug.

How do I fix CVE-2016-10516?

Upgrade werkzeug to 0.11.11 or later.

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-2016-10516 being exploited?

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

Sources

Also known as DEBIAN-CVE-2016-10516, DLA-1191-1, GHSA-h2fp-xgx6-xh6f, PYSEC-2017-43, UBUNTU-CVE-2016-10516, USN-3463-1.

Is CVE-2016-10516 in your software?

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

Check your SBOMs for free