WordPress Robo Gallery 2.0.14 Code Execution

2016-04-12T00:00:00
ID PACKETSTORM:136657
Type packetstorm
Reporter ICG SEC
Modified 2016-04-12T00:00:00

Description

                                        
                                            `Document Title:  
===============  
Wordpress Robo Gallery v2.0.14 - Code Execution Vulnerability  
  
  
References (Source):  
====================  
http://www.vulnerability-lab.com/get_content.php?id=1822  
  
  
Release Date:  
=============  
2016-04-12  
  
  
Vulnerability Laboratory ID (VL-ID):  
====================================  
1822  
  
  
Common Vulnerability Scoring System:  
====================================  
8.9  
  
  
Product & Service Introduction:  
===============================  
Most Easy and Powerful plugin to create a gallery on WordPress. If you  
looking for fast, easy gallery with simple and very beautiful,  
highly customizable design here is it... Gallery where even newbie in  
WordPress will be able to create your first gallery in few minutes  
and at the same time WordPress professionals get advanced tools and  
freedom of creativity. Just download this Gallery and you'll not  
look for any other gallery any more!  
  
(Copy of the Homepage: https://wordpress.org/plugins/robo-gallery/ )  
  
  
Abstract Advisory Information:  
==============================  
An independent vulnerability laboratory researcher discovered a remote  
code execution vulnerability in the official Robo Gallery v2.0.14  
Wordpress Plugin.  
  
  
Vulnerability Disclosure Timeline:  
==================================  
2016-04-12: Public Disclosure (Vulnerability Laboratory)  
  
  
Discovery Status:  
=================  
Published  
  
  
Affected Product(s):  
====================  
Robosoft  
Product: Robo Gallery - Wordpress Plugin (Web-Application) 2.0.14  
  
  
Exploitation Technique:  
=======================  
Remote  
  
  
Severity Level:  
===============  
Critical  
  
  
Technical Details & Description:  
================================  
A remote php code execution vulnerability has been discovered in the  
official Robo Gallery v2.0.14 Wordpress Plugin web-application.  
The vulnerability allows remote attackers to execute own malicious php  
commands to compromise the web-application or connected dbms.  
  
The vulnerability is located in teh `function` value of the  
`rbs_gallery_ajax.php` file GET method request. Remote attackers are able  
to execute own codes by usage of the vulnerable function value in the  
`rbs_gallery_ajax.php` file. The request method to execute is  
GET and the attack vector of the issue is located to the server-side.  
The function is not secure parsed or encoded next to the module  
context execute. Thus finally results in a php code execution because of  
the wrong used parse context in the rbs_gallery_ajax.php file.  
  
The security risk of the code execution vulnerability is estimated as  
high with a cvss (common vulnerability scoring system) count of 8.9.  
Exploitation of the php code execution vulnerability requires no  
privileged web-application user account and low or medium user interaction.  
Successful exploitation of the vulnerability results in computer system,  
web-server or database management system -compromise.  
  
Request Method(s):  
[+] GET  
  
Vulnerable Module(s):  
[+] ./wp-content/plugins/robo-gallery/includes/  
  
Vulnerable File(s):  
[+] rbs_gallery_ajax.php  
  
Vulnerable Parameter(s):  
[+] function  
  
  
Proof of Concept (PoC):  
=======================  
The remote code execution vulnerability can be exploited by remote  
attackers without privileged web-application user account or user  
interaction.  
For security demonstration or to reproduce the vulnerability follow the  
provided information and steps below to continue.  
  
PoC: Exploitation  
http://localhost:8080/wp-content/plugins/robo-gallery/includes/rbs_gallery_ajax.php?function=phpinfo();[CODE  
EXECUTION VULNERABILITY!]  
  
  
PoC: Vulnerable Source  
<?php  
if ( ! defined( 'WPINC' ) ) die;  
  
if(!function_exists('rbs_gallery_ajax_callback')){  
add_action( 'wp_ajax_rbs_gallery', 'rbs_gallery_ajax_callback' );  
function rbs_gallery_ajax_callback(){  
if(isset($_POST['function']) && $_POST['function']){  
$functionName = 'rbs_ajax_'.$_POST['function'];  
if( function_exists( $functionName ) ) $functionName();  
}  
wp_die();  
}  
}  
  
  
Source: Wordpress Plugin  
wordpress.org/plugins/robo-gallery/  
  
  
Reference(s):  
http://localhost:8080/  
http://localhost:8080/wp-content/  
http://localhost:8080/wp-content/plugins/  
http://localhost:8080/wp-content/plugins/robo-gallery/  
http://localhost:8080/wp-content/plugins/robo-gallery/includes/  
  
  
Solution - Fix & Patch:  
=======================  
The vulnerability can be patched by a secure restriction of the  
vulnerable functions value in the rbs_gallery_ajax.php file GET method  
request.  
Disallow to include code that executes in the followup GET/POST method  
request. Deny script code tags and filter them by disallow the usage of  
special chars.  
  
  
Security Risk:  
==============  
The security risk of the remote code execution vulnerability in the  
wordpress plugin is estimated as critical. (CVSS 8.9)  
  
  
Credits & Authors:  
==================  
Iran Cyber Security Group - 0x3a (ICG SEC) [Iran-Cyber.Net]  
[http://www.vulnerability-lab.com/show.php?user=Iran%20Cyber%20Security]  
My Team: MOHAMAD-NOFOZI , root3r , sir.h4m1d , m0hamad.black , whitewolf  
, mr.s4jj4d , mr.turk , 0day , pi.hack , l3gi0n, nazanin_wild and 0xdevil  
  
  
Disclaimer & Information:  
=========================  
The information provided in this advisory is provided as it is without  
any warranty. Vulnerability Lab disclaims all warranties, either  
expressed or implied,  
including the warranties of merchantability and capability for a  
particular purpose. Vulnerability-Lab or its suppliers are not liable in  
any case of damage,  
including direct, indirect, incidental, consequential loss of business  
profits or special damages, even if Vulnerability-Lab or its suppliers  
have been advised  
of the possibility of such damages. Some states do not allow the  
exclusion or limitation of liability for consequential or incidental  
damages so the foregoing  
limitation may not apply. We do not approve or encourage anybody to  
break any licenses, policies, deface websites, hack into databases or  
trade with stolen data.  
  
Domains: www.vulnerability-lab.com - www.vuln-lab.com   
- www.evolution-sec.com  
Contact: admin@vulnerability-lab.com -  
research@vulnerability-lab.com - admin@evolution-sec.com  
Section: magazine.vulnerability-lab.com -  
vulnerability-lab.com/contact.php -  
evolution-sec.com/contact  
Social: twitter.com/vuln_lab -  
facebook.com/VulnerabilityLab -  
youtube.com/user/vulnerability0lab  
Feeds: vulnerability-lab.com/rss/rss.php -  
vulnerability-lab.com/rss/rss_upcoming.php -  
vulnerability-lab.com/rss/rss_news.php  
Programs: vulnerability-lab.com/submit.php -  
vulnerability-lab.com/list-of-bug-bounty-programs.php -  
vulnerability-lab.com/register.php  
  
Any modified copy or reproduction, including partially usages, of this  
file requires authorization from Vulnerability Laboratory. Permission to  
electronically  
redistribute this alert in its unmodified form is granted. All other  
rights, including the use of other media, are reserved by  
Vulnerability-Lab Research Team or  
its suppliers. All pictures, texts, advisories, source code, videos and  
other information on this website is trademark of vulnerability-lab team  
& the specific  
authors or managers. To record, list, modify, use or edit our material  
contact (admin@ or research@vulnerability-lab.com) to get a ask permission.  
  
Copyright © 2016 | Vulnerability Laboratory -  
[Evolution Security GmbH]™  
  
--   
VULNERABILITY LABORATORY - RESEARCH TEAM  
SERVICE: www.vulnerability-lab.com  
CONTACT: research@vulnerability-lab.com  
  
`