WordPress Paid Memberships Pro 1.8.4.2 Cross Site Scripting Vulnerability

2015-07-23T00:00:00
ID 1337DAY-ID-23922
Type zdt
Reporter High-Tech Bridge
Modified 2015-07-23T00:00:00

Description

WordPress Paid Memberships Pro plugin version 1.8.4.2 suffers from a cross site scripting vulnerability.

                                        
                                            Product: Paid Memberships Pro WordPress plugin
Vendor: Stranger Studios 
Vulnerable Version(s): 1.8.4.2 and probably prior
Tested Version: 1.8.4.2
Advisory Publication:  July 1, 2015  [without technical details]
Vendor Notification: July 1, 2015 
Vendor Patch: July 8, 2015 
Public Disclosure: July 22, 2015 
Vulnerability Type: Cross-Site Scripting [CWE-79]
CVE Reference: CVE-2015-5532
Risk Level: Medium 
CVSSv2 Base Score: 4.3 (AV:N/AC:M/Au:N/C:N/I:P/A:N)
Solution Status: Fixed by Vendor
Discovered and Provided: High-Tech Bridge Security Research Lab ( https://www.htbridge.com/advisory/ ) 

-----------------------------------------------------------------------------------------------

Advisory Details:

High-Tech Bridge Security Research Lab discovered vulnerability in Paid Memberships Pro WordPress plugin, which can be exploited to perform Cross-Site Scripting (XSS) attacks against website administrators.


1) Cross-Site Scripting (XSS) in Paid Memberships Pro WordPress plugin: CVE-2015-5532

1.1 Input passed via "s" HTTP GET parameter to "/wp-admin/admin.php" (when "page" is set to "pmpro-membershiplevels") is not properly sanitised before being returned to the user. A remote attacker can trick a logged-in administrator to open a specially crafted link and execute arbitrary HTML and script code in browser in context of the vulnerable website.

The exploitation example below uses the "alert()" JavaScript function to display "ImmuniWeb" word:

http://[host]/wp-admin/admin.php?page=pmpro-membershiplevels&s=%22%3E%3Cscript%3Ealert%28%27ImmuniWeb%27%29;%3C/script%3E

1.2 Input passed via "edit" HTTP GET parameter to "/wp-admin/admin.php" (when "page" is set to "pmpro-membershiplevels") is not properly sanitised before being returned to the user. A remote attacker can trick a logged-in administrator to open a specially crafted link and execute arbitrary HTML and script code in browser in context of the vulnerable website.

The exploitation example below uses the "alert()" JavaScript function to display "ImmuniWeb" word:

http://[host]/wp-admin/admin.php?page=pmpro-membershiplevels&edit=%22%3E%3Cscript%3Ealert%28%27ImmuniWeb%27%29;%3C/script%3E

1.3 Input passed via "s" HTTP GET parameter to "/wp-admin/admin.php" (when "page" is set to "pmpro-memberslist") is not properly sanitised before being returned to the user. A remote attacker can trick a logged-in administrator to open a specially crafted link and execute arbitrary HTML and script code in browser in context of the vulnerable website.

The exploitation example below uses the "alert()" JavaScript function to display "ImmuniWeb" word:

http://[host]/wp-admin/admin.php?l&page=pmpro-memberslist&s=%22%3E%3Cscript%3Ealert%28%27ImmuniWeb%27%29;%3C/script%3E

1.4 Input passed via "s" HTTP GET parameter to "/wp-admin/admin.php" (when "page" is set to "pmpro-orders") is not properly sanitised before being returned to the user. A remote attacker can trick a logged-in administrator to open a specially crafted link and execute arbitrary HTML and script code in browser in context of the vulnerable website.

The exploitation example below uses the "alert()" JavaScript function to display "ImmuniWeb" word:

http://[host]/wp-admin/admin.php?filter=all&start-month=1&start-day=1&start-year=2015&end-month=6&end-day=22&end-year=2015&predefined-date=This+Month&l=1&status&page=pmpro-orders&s=%22%3E%3Cscript%3Ealert%28%27immuniweb%27%29;%3C/script%3E

-----------------------------------------------------------------------------------------------

Solution:

Update to Paid Memberships Pro 1.8.4.3

More Information:
http://www.paidmembershipspro.com/2015/07/pmpro-updates-1-8-4-3-and-1-8-4-4/
https://github.com/strangerstudios/paid-memberships-pro/commit/add03e3ed90e9163e5a46e20e6c371a87ff5a677

#  0day.today [2018-01-08]  #