CVE-2019-19919 Prototype Pollution in handlebars

Critical 9.8 Published Updated

Attackers can execute arbitrary code via prototype pollution in Handlebars templates, affecting applications using the library.

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

What is CVE-2019-19919?

CVE-2019-19919 is a critical code injection vulnerability in n/a, published on 20 Dec 2019. An attacker can exploit it over the internet without logging in, with no action from the victim.

Official description

Versions of handlebars prior to 4.3.0 are vulnerable to Prototype Pollution leading to Remote Code Execution. Templates may alter an Object's __proto__ and __defineGetter__ properties, which may allow an attacker to execute arbitrary code through crafted payloads.

Weakness: CWE-1321

Which versions are affected by CVE-2019-19919?

6 open source packages ship an affected version, including handlebars and bootstrap-wysihtml5-rails. It affects 2 products.

PackageAffectedFixed in
handlebars npmAll versions3.0.8
handlebars npmAll versions3.0.8
handlebars npmFrom 4.0.04.3.0
handlebars npmFrom 4.0.04.3.0
bootstrap-wysihtml5-rails RubyGemsFrom 0.3.3.5 to 0.3.3.8None
bootstrap-wysihtml5-rails RubyGemsFrom 0.3.3.5 to 0.3.3.8None

Products include Handlebars.js Project Handlebars.js, Tenable Tenable.sc.

How do I fix CVE-2019-19919?

Upgrade handlebars to a fixed version for your release line: 3.0.8 or 4.3.0.

Upgrade, and never evaluate templates, expressions or code built from user input. More about Code injection.

Is CVE-2019-19919 being exploited?

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

Public exploit code: 1 proofs of concept on GitHub.

Sources

Also known as DEBIAN-CVE-2019-19919, GHSA-w457-6q6x-cgp9, MINI-7qwq-2gxf-8262, MINI-8h6q-4jm9-qf24, ROOT-APP-NPM-CVE-2019-19919, UBUNTU-CVE-2019-19919.

Is CVE-2019-19919 in your software?

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

Check your SBOMs for free