WordPress · Report #230234
[mercantile.wordpress.org] Reflected XSS via AngularJS Template Injection
Validstatus
mediumseverity
29upvotes
14 Jun 2017disclosed
Summary
In a follow-up to resolved report #221893, it was possible to achieve reflected XSS on mercantile.wordpress.org with an AngularJS injection payload. This was confirmed in the latest stable Firefox and Safari builds.
How it was found
Hi,
By injecting a crafted AngularJS payload into the search endpoint on the WordPress Swag Store, it was possible to achieve reflected XSS further to resolved report #221893.
I came across a potential exploitation vector after noticing that a search query for {{2*2}} returned 4 in the site title response.
Conditions Verified In
- Firefox 52.0.3 – stable
- Safari 10.1 – stable
Proof of Concept URL
https://mercantile.wordpress.org/search/{{constructor.constructor('alert(document.domain)')()}}
Screenshot
{F186517}
Thanks!