相信每位系统管理所管理的LINUX服务器都中过WebShell之类的木马吧~~很不幸~~前两天我也中了一会奖~~~这里将查杀经验分享给大家
现象:服务器上的网页由一个到数个,慢慢全部打不开,输入网址后浏览器显示的是白屏
我当时就估计可能是文件被差异了而已代码,我打开WEB服务目录后发现很多htm、html、php文件的最后都被加了一段恶意代码(代码内容我就不发上来了)。最初想的比较简单,认为是有人通过论坛的上传附件功能以及DZ的HOMESHOW功能上传了恶意图片,就写了个PHP的程序清理了下WEB服务目录里所有的恶意代码。
但第二天早上有出现了同样的现象,之前只是怀疑服务器被挂马,但看到第二天早上又出现了同样的情况,我就确定服务器被人挂马了。我开始检查WEB服务器的访问日志,过滤其中的上传条目,从中寻找异常信息。发现在有些不可能存在PHP文件的目录被有IP上传了个PHP文件,找到这个文件件后VI一看,可不就是木马了。
找到木马后就好办了,为了防止服务器被利用这个木马上传了多个木马,我根据这个木马的一些关键字写在整个根做了几次文件内容搜索,过滤出有相关内容的文件,并逐一检查和删除。
最后,在PHP配置文件里打开了安全模式,并禁止在静态页面目录和非WEB服务目录运行PHP程序,以及禁止PHP执行相关系统名。
下面附上查找并替换文件中恶意代码的PHP程序
error_reporting(0);
set_time_limit(0);
function dirtree($path='./') {
$astr[] = '
e>';
$astr[] = '查找内容的关键字';
$exts = array('swf', 'attach', 'rar', 'bmp', 'zip', 'dat','log', 'psd', 'png', 'sql',
'tpl', 'txt', 'phtml', 'css', 'js', 'php', 'html', 'htm', 'inc', 'xml', 'dll', 'bak', 'gif
', 'jpg');
$d = dir($path);
while(false !== ($v = $d->read())) {
if($v == '.' || $v == '..' || $v == 'fix_file.php') continue;
$file = $d->path.'/'.$v;
$file = str_replace('//', '/', $file);
if (is_dir($file)) {
dirtree($file);
} else {
$files = explode('.', $file);
$ext = array_pop($files);
if (in_array($ext, $exts)) {
$tmp_content = file_get_contents($file);
if (strpos($tmp_content, 'jeiurui9') || strpos($tmp_content, '/j14/j14.htm
')) {
$safe_content = str_replace($astr, '', $tmp_content);
file_put_contents($file, $safe_content);
echo "fix $file ";
} else {
// echo "ok $file ";
}
}
}
}
$d->close();
}
dirtree(dirname(__FILE__));
?>
亿恩科技地址(ADD):郑州市黄河路129号天一大厦608室 邮编(ZIP):450008 传真(FAX):0371-60123888
联系:亿恩小凡
QQ:89317007
电话:0371-63322206
本文出自:亿恩科技【www.enkj.com】