WP Maps <= 4.9.8 - Authenticated (Subscriber+) Stored Cross-Site Scripting via shapes_values Parameter
- Published
- Last modified
- Where the record stands: published, rejected by its publisher, or superseded by another id.What do these mean? →
- published
- Whether CISA lists it in its Known Exploited Vulnerabilities catalog: proof that attackers are using it.What do these mean? →
- Not listed in CISA KEV
- Whether working attack code is public (Exploit-DB, Metasploit, Nuclei or GitHub). Public code makes attacks easier.What do these mean? →
- None on Exploit-DB, Metasploit or GitHub
- Exploitation: none
- Automatable: no
- Technical impact: partial
Summary
The WP Maps – Google Maps,OpenStreetMap,Mapbox,Store Locator,Listing,Directory & Filters plugin for WordPress is vulnerable to Stored Cross-Site Scripting via shapes_values Parameter in all versions up to, and including, 4.9.8 due to insufficient input sanitization and output escaping. This makes it possible for authenticated attackers, with subscriber-level access and above, to inject arbitrary web scripts in pages that will execute whenever a user accesses an injected page. The fc-call-nonce nonce required by the endpoint is exposed to all frontend visitors who view a map page via window.wpgmp_local.nonce, enabling any authenticated subscriber to read the nonce and craft a valid request; additionally, the secondary _wpnonce check in the drawing handler can be bypassed by simply omitting the _wpnonce parameter from the request.
Timeline
- CVE published
- CISA SSVC assessment
Exploitation: none · Automatable: no · Technical impact: partial
- Record last updated
Affected versions
- flippercode WP Maps – Google Maps, OpenStreetMap, Mapbox, Store Locator with Search, Filters & Listings
through 4.9.8
References 12
plugins.trac.wordpress.org
- browser/wp-google-map-plugin/tags/4.9.5/assets/js/maps.js#L8477
- browser/wp-google-map-plugin/tags/4.9.5/modules/drawing/views/manage.php#L32
- browser/wp-google-map-plugin/tags/4.9.5/wp-google-map-plugin.php#L605
- browser/wp-google-map-plugin/tags/4.9.5/wp-google-map-plugin.php#L619
- browser/wp-google-map-plugin/tags/4.9.5/modules/shortcode/views/put-wpgmp.php#L1263
- browser/wp-google-map-plugin/tags/4.9.3/assets/js/maps.js#L8477
- browser/wp-google-map-plugin/tags/4.9.3/modules/drawing/views/manage.php#L32
- browser/wp-google-map-plugin/tags/4.9.3/wp-google-map-plugin.php#L605
- browser/wp-google-map-plugin/tags/4.9.3/wp-google-map-plugin.php#L619
- browser/wp-google-map-plugin/tags/4.9.3/modules/shortcode/views/put-wpgmp.php#L1263
- changeset?reponame=&old=3690856%40wp-google-map-plugin&new=3690856%40wp-google-map-plugin