GHSA-q69p-5h74-w36f
Content Injection via TileJSON Name in mapbox.js
Packages
| Ecosystem | Package | Affected | Fixed in |
|---|---|---|---|
| npm | mapbox.js | < 1.6.6 | 1.6.6 |
| npm | mapbox.js | >= 2.0.0, < 2.2.4 | 2.2.4 |
| RubyGems | mapbox-rails | >= 1.0.0, < 1.6.6 | 1.6.6 |
| RubyGems | mapbox-rails | >= 2.0.0, < 2.2.4 | 2.2.4 |
Details
As written in the advisory (Markdown source, shown as plain text).
Versions 1.x prior to 1.6.6 and 2.x prior to 2.2.4 of `mapbox.js` are vulnerable to a cross-site-scripting attack in certain uncommon usage scenarios.
If `L.mapbox.map` or `L.mapbox.shareControl` are used in a manner that gives users control of the TileJSON content, it is possible to inject script content into the name value of the TileJSON. After clicking on the share control, the malicious code will execute in the context of the page using Mapbox.js.
## Recommendation
Version 1.x: Update to version 1.6.6 or later.
Version 2.x: Update to version 2.2.4 or later.
References
External links from the advisory. They lead to third-party sites.
- https://nvd.nist.gov/vuln/detail/CVE-2017-1000043
- https://hackerone.com/reports/99245
- https://github.com/advisories/GHSA-q69p-5h74-w36f
- https://github.com/rubysec/ruby-advisory-db/blob/master/gems/mapbox-rails/CVE-2017-1000043.yml
- https://nodesecurity.io/advisories/74
- https://www.npmjs.com/advisories/74