CVE-2019-19919 Prototype Pollution in handlebars
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.
| Package | Affected | Fixed in |
|---|---|---|
handlebars npm | All versions | 3.0.8 |
handlebars npm | All versions | 3.0.8 |
handlebars npm | From 4.0.0 | 4.3.0 |
handlebars npm | From 4.0.0 | 4.3.0 |
bootstrap-wysihtml5-rails RubyGems | From 0.3.3.5 to 0.3.3.8 | None |
bootstrap-wysihtml5-rails RubyGems | From 0.3.3.5 to 0.3.3.8 | None |
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.
Other vulnerabilities in n/a
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.