CVE-2013-4170 Ember.js Potential XSS Exploit When Binding `tagName` to User-Supplied Data
Attackers can execute arbitrary JavaScript if applications bind user input to Ember.View tagName, requiring specific application coding practices.
- 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-2013-4170?
CVE-2013-4170 is a medium-severity cross-site scripting vulnerability in ember-source, published on 30 Jun 2022. 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
In general, Ember.js escapes or strips any user-supplied content before inserting it in strings that will be sent to innerHTML. However, the `tagName` property of an `Ember.View` was inserted into such a string without being sanitized. This means that if an application assigns a view's `tagName` to user-supplied data, a specially-crafted payload could execute arbitrary JavaScript in the context of the current domain ("XSS"). This vulnerability only affects applications that assign or bind user-provided content to `tagName`.
Weakness: CWE-79
Which versions are affected by CVE-2013-4170?
12 open source packages ship an affected version, including ember-source. It affects 1 product.
| Package | Affected | Fixed in |
|---|---|---|
ember-source RubyGems | All versions | 1.0.0.rc1.1 |
ember-source RubyGems | All versions | 1.0.0.rc1.1 |
ember-source RubyGems | From 1.0.0.rc2.0 | 1.0.0.rc2.1 |
ember-source RubyGems | From 1.0.0.rc2.0 | 1.0.0.rc2.1 |
ember-source RubyGems | From 1.0.0.rc3.0 | 1.0.0.rc3.1 |
ember-source RubyGems | From 1.0.0.rc3.0 | 1.0.0.rc3.1 |
6 more packages
ember-source RubyGems | From 1.0.0.rc4.0 | 1.0.0.rc4.1 |
ember-source RubyGems | From 1.0.0.rc4.0 | 1.0.0.rc4.1 |
ember-source RubyGems | From 1.0.0.rc5.0 | 1.0.0.rc5.1 |
ember-source RubyGems | From 1.0.0.rc5.0 | 1.0.0.rc5.1 |
ember-source RubyGems | From 1.0.0.rc6.0 | 1.0.0.rc6.1 |
ember-source RubyGems | From 1.0.0.rc6.0 | 1.0.0.rc6.1 |
Products include Emberjs Ember.js.
How do I fix CVE-2013-4170?
Upgrade ember-source to a fixed version for your release line: 1.0.0.rc1.1, 1.0.0.rc2.1, 1.0.0.rc3.1 or 1.0.0.rc4.1.
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-2013-4170 being exploited?
There is no known exploitation of CVE-2013-4170 in the wild and no public exploit code.
Other vulnerabilities in ember-source
- CVE-2015-1866 ember-source vulnerable to Cross-site Scripting
- CVE-2015-7565 ember-source Cross-site Scripting vulnerability
- CVE-2014-0013 Ember.js Cross-site Scripting vulnerability
- CVE-2014-0014 ember-source Cross-site Scripting vulnerability
- CVE-2014-0046 ember-source Cross-site Scripting vulnerability
Sources
Also known as GHSA-5m48-c37x-f792.