RubySec

Providing security resources for the Ruby community

OSVDB-132871 (mapbox-rails): mapbox-rails Content Injection via TileJSON Name

ADVISORIES

GEM

mapbox-rails

PATCHED VERSIONS

  • ~> 1.6.6
  • >= 2.2.4

DESCRIPTION

Mapbox.js versions 1.x prior to 1.6.6 and 2.x prior to 2.2.4 are vulnerable to a cross-site-scripting attack in certain uncommon usage scenarios.

If you use L.mapbox.map and L.mapbox.shareControl it is possible for a malicious user with control over the TileJSON content 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.

Such usage is uncommon. L.mapbox.shareControl is not automatically added to Mapbox.js maps and must be explicitly added. The following usage scenarios are not vulnerable:

  • the map does not use a share control (L.mapbox.sharecontrol)
  • only trusted TileJSON content is loaded