Advisory report: https://security.dxw.com/advisories/comment-form-csrf-allows-admin-impersonation-via-comments-in-wordpress-4-2-2/
CVE: Awaiting assignment
CVSS: 4.3 (Medium; AV:N/AC:M/Au:N/C:N/I:P/A:N)
Comment form CSRF in WordPress 4.2.2 allows admin impersonation via comments
When posting comments,WordPress does not require a nonce value (unless posting unfiltered HTML). This means that an attacker can force a logged-in user to post arbitrary comments.
For this to happen, the logged-in userwould have to be tricked into clicking on a link controlled by the attacker. It is easy to make these links very convincing.
The line which verifies the nonce when using unfiltered HTML is line 154 of wp-comments-post.php.
EDIT: this issue has been known about since 2009, but it appears that no fix is planned https://core.trac.wordpress.org/ticket/10931
Proof of concept
Log in, visit an URL containing the following (replacing localhost as appropriate, replacing 1 with the ID of a post), click submit:
<form method=\"POST\" action=\"http://localhost/wp-comments-post.php\">
<input type=\"text\" name=\"comment_post_ID\" value=\"1\">
<input type=\"text\" name=\"comment\" value=\"UH OH\">
Disable commentsuntil a new version is released that fixes this bug
dxw believes in responsible disclosure. Your attention is drawn to our disclosure policy: https://security.dxw.com/disclosure/
Please contact us on email@example.com to acknowledge this report if you received it via a third party (for example, firstname.lastname@example.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.
2009-10-19: Ticket raised by mtdewvirus
2014-03-20:Discovered independently by dxw
2015-07-14: Reported to email@example.com
2015-07-14: Requested CVE
2015-07-17: Response firstname.lastname@example.org
Discovered by dxw:
Please visit security.dxw.com for more information.