Urulu 2.1 Blind SQL Injection Vulnerability (CVE-2008-0385)
#############################################################
#
# COMPASS SECURITY ADVISORY http://www.csnc.ch/
#
#############################################################
#
# Product: Urulu
# Vendor: USystems
# Subject: Blind SQL Injection Vulnerability
# Risk: High
# Author: Daniel Roethlisberger
# Date: 2008-02-25
# CVE Name: CVE-2008-0385
#
#############################################################
Introduction
------------
An AJAX based Blind SQL Injection vulnerability exists in
the Web 2.0 CMS framework Urulu [1]. A remote, anonymous
attacker can retrieve arbitrary data from the SQL database.
In addition, depending on the database setup, an attacker
may upload and execute arbitrary PHP code.
Affected Product
----------------
Vulnerable:
* Urulu 2.1 and closed-source version as of 2008-02-05.
Not vulnerable:
* Urulu 2.1.1 and closed-source version as of 2008-02-19.
Not tested:
* Other versions.
Technical Description
---------------------
An SQL injection vulnerability exists in the connectionId
argument to asynchronious XML requests. Affected are POST
requests to at least the following URIs:
/index.php/statprt/js/request
/index.php/dyn/js/request
Even though there is no client-visible feedback from the
affected SQL statements, arbitrary data can be extracted
from the database using a timing based blind SQL injection
attack. Possible targets include Urulu account passwords
or other sensitive data stored in the database.
If the Urulu database user has the FILE permission granted,
it is possible to write arbitrary PHP code to writable and
web-accessible Urulu directories using the INTO OUTFILE
syntax of MySQL.
Proof of concept code exists for both the timing-based
data extraction and the arbitrary code execution via INTO
OUTFILE and PHP.
Workaround / Patch
------------------
Upgrade to Urulu 2.1.1 or apply this uuencoded patch:
begin 644 conid-fix-urulu-2.1.diff.gz
M'XL(`*&@O4<``\U3T6K;,!1]EB'_<`F%.CARY*1>-H^%=*U+`UT*L4<?QAY4
M64D$GNW)TD89_??9DLVZD:UKV<->?`7GZNB<<Z\SL=T"EGH-6NI<XZD?^*44
MNTDMV:3F\@N7DZ\BVW%%\[QD5)72K_;5C^Y'&AV,\=.H4;K7<*IW,"-`@HB0
MZ"2`*2%SQ_.\OWX7)53!!;\%F$(PC\)9%(8MRTMGN00<GLS'<_!L62X=0`A=
M;*[?#<P)950US(+FHJ9*E`6<)I`&%KRYC#?QP,%M7QKXK"Q$!F_@>`@^O$_N
MBB@21:UHP;@[P@L+^S`\'CC>H2OG;W^^P&M&*^[^AFG4435"AJ/7IDJNM"S@
M2.DJYQ_(QZ:S4+``8N#[@?7[@HR#66/8UF<XAO_(\J\$GS67=^[0JCV/K^(T
MAC]X.^#JJ9;^J9_[]E/IVUPPV.J"F?R;?3ZC;,^S&[/;JZQV1_"MF^:KT&RO
M*=TL$5JMDWB3PFJ=7G?&#XS5-1K&8/^81DW?FC2QG:5='`@]&D2[():KBZ2[
M\YPP'G)UPIN=Z26V:'_N\0?3-28MSMK`6A%':B]JO/ADLS,YM@_U2_T=,H/P
%_/0$````
`
end
Disclosure Timeline
-------------------
2008-02-25: Coordinated public disclosure date
2008-02-19: Unilateral release of fixed Urulu 2.1.1
2008-02-05: Initial vendor response
2008-02-05: Initial vendor notification with patch
2008-01-21: Assigned CVE-2008-0385
2008-01-20: Discovery by Daniel Roethlisberger
References
----------
[1] http://www.urulu.org/
[2] http://www.csnc.ch/en/downloads/advisories.html
--
Daniel Roethlisberger <daniel.roethlisberger@xxxxxxx>
Compass Security Network Computing AG, Rapperswil, Switzerland
http://www.csnc.ch/ - Tel: +41 55 214 41 77 - PGP: 0x69292CBA
Security Review - Penetration Testing - Computer Forensics