linux服務器中木馬,手工清除方法
由於自己也碰到過這種情況,剛好看到這篇文章,先轉載過來。的確蠻有用的哦。
首先劇透一下後門木馬如下:
(當然這是事後平靜下來後慢慢搜出來的,那個時候喝著咖啡感覺像個自由人)
木馬名稱
Linux.BackDoor.Gates.5
http://forum.antichat.ru/threads/413337/
首先是下午14點左右有幾臺服務器出現流量超高,平時只有幾百M的流量,那時候發現流量上G了,達到這個量第一感覺就是遭受了DDOS流量攻擊,那時候手上的服務器比較多,出現幾臺並沒
有放在眼裏,覺得查查就可以出來結果。隨便說一句為了達到最好的性能,我們這些服務器都沒有開防火墻(包括硬件及iptables),也就是服務器一直處於裸奔的狀態。這些服務器裸奔了
幾年一直沒有出現問題,看來linux服務器安全這塊還是挺讓人滿意的。
開始也沒有什麽頭緒,就是ps查進程啊,netstat查端口號,iftop查流量,估計大家一開始出現這種情況都是這樣操作,又得劇透下(這樣做估計也是黑客希望的,顯然他們對我等非常了解
哈),一時也沒發現什麽異常,只是iftop發現我們的服務器一直向外大量發包,對某個IP的流量能到達600多M,這時我們意識到服務器被黑了,但是只是當成了肉雞,去攻擊別的服務器,當
然攻擊的IP也是一直在變化的,就好像有人在遠程控制一樣。
轉眼都快到下班時間了,這時大概有3臺服務器有這種的情況,此時大家把各自了解的情況匯總了一下:
a、/bin/ps,/bin/netsta程序都是1.2M的大小,顯然是被人掉包了
b、/usr/bin/.dbus-daemon--system 進程還帶了一個點,跟哪個不帶點的很像,但終歸是假的,你咋不給真的刪掉替換呢,看來寫這種程序的人法律意識很強,要不然程序推廣起來了,死了
一大片CIA會放過他嗎
c、/etc/rc.local權限改了,而且添加了一個開機啟動項
d、lsattr、chattr命令刪除了
e 、進程殺掉了立即又起來了這點很讓人頭痛
f、找到了一些最近修改的文件,顯然這些都是黑客留下的
g、開機自動啟動文件增加2個啟動項
剛開始進程殺了又起來,文件刪了又自動生成,線上環境又沒有防火墻配置,無奈之下只好想了一個怪招,把/bin/bash重命名一下,果然流量下來了,這種殺敵1萬自損8千的招果然有用。
其實這時候還沒有找到真正的木馬,但是已經有時間去分析查找病毒源了,這3臺其中兩臺修改了bash名字,突然斷開了,這樣就登陸不了,只好重裝系統了。後來這臺我就慢慢查找了,差不
多都找到了,然後刪除。這時心情大好,準備寫博文記錄一下,畢竟這是線上環境第一次遭遇木馬。
大概22點的時候,博文寫了一半,突然又接到故障,這次一下子又7臺服務器出故障了,好心情一下子沒了,原來那3臺只是個開場白,真正的戰鬥還沒有開始。所以後面的博客是續上的,調
調要是有些不一樣將就的看吧。
由於這段時間網上查了些資料,慢慢的對這個木馬熟悉起來了。這時我上傳了一些正常的二進制程序如:ls,netstat,chattr,lsattr這樣用自動的程序一下子就查到了木馬程序,我分析了一
下,這些木馬程序名字變著花樣來,但萬變不離其宗,名字都寫在/etc/rc.d/init.d/DbSecuritySpt和/etc/rc.d/init.d/selinux裏面,而且名字和正常的服務很像。
有/usr/local/zabbix/sbin/zabbix_AgentD、/usr/bin/bsd-port/getty、/usr /bin/dpkgd/ps、/usr/bin/.dbus-daemon--system、/usr/bin/.sshd、/usr/bin/sshd 反正你系統有什麽類似的
進程在運行,他就改成差不多的來迷惑你,其實他們都是一個程序大小也一樣。
現在就是刪除這些文件,殺死這些進程,說個小插曲由於某臺服務器漏掉了一些沒有刪,第二天有激活了,這些東西當你用上面的命令時就可以激活,所以要千萬小心仔細。在大概淩晨4點多
的時候這7臺服務器的木馬清理了差不多了,現在綜合總結了大概步驟如下:
0,簡單判斷有無木馬
有無下列文件
cat /etc/rc.d/init.d/selinux
cat /etc/rc.d/init.d/DbSecuritySpt
ls /usr/bin/bsd-port
ls /usr/bin/dpkgd
查看大小是否正常
ls -lh /bin/netstat
ls -lh /bin/ps
ls -lh /usr/sbin/lsof
ls -lh /usr/sbin/ss
1,上傳如下命令到/root下
lsattr chattr ps netstat ss lsof
2,刪除如下目錄及文件
rm -rf /usr/bin/dpkgd (ps netstat lsof ss)
rm -rf /usr/bin/bsd-port (木馬程序)
rm -f /usr/local/zabbix/sbin/zabbix_AgentD (木馬程序)
rm -f /usr/local/zabbix/sbin/conf.n
rm -f /usr/bin/.sshd
rm -f /usr/bin/sshd
rm -f /root/cmd.n
rm -f /root/conf.n
rm -f /root/IP
rm -f /tmp/gates.lod
rm -f /tmp/moni.lod
rm -f /tmp/notify.file 程序
rm -f /tmp/gates.lock 進程號
rm -f /etc/rc.d/init.d/DbSecuritySpt(啟動上述描述的那些木馬變種程序)
rm -f /etc/rc.d/rc1.d/S97DbSecuritySpt
rm -f /etc/rc.d/rc2.d/S97DbSecuritySpt
rm -f /etc/rc.d/rc3.d/S97DbSecuritySpt
rm -f /etc/rc.d/rc4.d/S97DbSecuritySpt
rm -f /etc/rc.d/rc5.d/S97DbSecuritySpt
rm -f /etc/rc.d/init.d/selinux(默認是啟動/usr/bin/bsd-port/getty)
rm -f /etc/rc.d/rc1.d/S99selinux
rm -f /etc/rc.d/rc2.d/S99selinux
rm -f /etc/rc.d/rc3.d/S99selinux
rm -f /etc/rc.d/rc4.d/S99selinux
rm -f /etc/rc.d/rc5.d/S99selinux
3,找出下列程序進程號並殺死
top 一眼就看到那個木馬cpu利用率特高
/root/ps aux |grep -i jul29(主要是最近開啟的進程)
/root/ps aux |grep -i jul30
/root/ps aux |grep -i jul31
/root/ps aux |grep sshd
/root/ps aux |grep ps
/root/ps aux |grep getty
/root/ps aux |grep netstat
/root/ps aux |grep lsof
/root/ps aux |grep ss
/root/ps aux |grep zabbix_Agetntd
/root/ps aux |grep .dbus
舉例如下:
/root/ps aux |grep getty
root 6215 0.0 0.0 93636 868 ? Ssl 20:54 0:05 /usr/bin/bsd-port/getty
kill 6215
/root/ps aux |grep zabbix_AgentD
root 2558 71.0 0.0 106052 1048 ? Ssl 20:54 117:29 ./zabbix_AgentD
kill 2558
/root/ps aux |grep "/dpkgd/ps"
root 11173 67.8 0.0 105924 1020 ? Ssl 01:39 8:00 /usr/bin/dpkgd/ps -p 11148 -o comm=
kill 11173
註意如果kill後刪除後還會再出現就這樣操作(破壞木馬程序)
>/usr/bin/dpkgd/ps && /root/chattr +i /usr/bin/dpkgd/ps
>/usr/bin/bsd-port/getty && /root/chattr +i /usr/bin/bsd-port/getty
4,刪除含木馬命令並重新安裝(或者把上傳的正常程序復制過去也行)
ps
/root/chattr -i -a /bin/ps && rm /bin/ps -f
yum reinstall procps -y
或
cp /root/ps /bin
netstat
/root/chattr -i -a /bin/netstat && rm /bin/netstat -f
yum reinstall net-tools -y
或
cp /root/netstat /bin
lsof
/root/chattr -i -a /bin/lsof && rm /usr/sbin/lsof -f
yum reinstall lsof -y
或
cp /root/lsof /usr/sbin
chattr && lsattr
yum -y reinstall e2fsprogs
ss
/root/chattr -i -a /usr/sbin/ss && rm /usr/sbin/ss -f
yum -y reinstall iproute
或
cp /root/ss /usr/sbin
修改下面兩個程序的權限,這個是意外發現有的改了這兩個程序的權限,讓你發現了木馬既不能下載正常程序也不能殺進程
/usr/bin/killall
/usr/bin/wget
另外他們還修改了DNS怕我們識別不了有的域名吧,想得很周到哈
cat /etc/resolv.conf
nameserver 8.8.8.8
nameserver 8.8.4.4
5,工具掃描
安裝殺毒工具
安裝
yum -y install clamav*
啟動
service clamd restart
更新病毒庫
freshclam
掃描方法
clamscan -r /etc --max-dir-recursion=5 -l /root/etcclamav.log
clamscan -r /bin --max-dir-recursion=5 -l /root/binclamav.log
clamscan -r /usr --max-dir-recursion=5 -l /root/usrclamav.log
clamscan -r --remove /usr/bin/bsd-port
clamscan -r --remove /usr/bin/
clamscan -r --remove /usr/local/zabbix/sbin
查看日誌發現
/bin/netstat: Linux.Trojan.Agent FOUND為病毒
grep FOUND /root/usrclamav.log
/usr/bin/.sshd: Linux.Trojan.Agent FOUND
/usr/sbin/ss: Linux.Trojan.Agent FOUND
/usr/sbin/lsof: Linux.Trojan.Agent FOUND
6,加強自身安全
但是此時還不知道系統入侵的原因,只能從兩個方面考慮:暴力破解和系統及服務漏洞
a、yum update 更新系統(特別是bash、openssh和openssl)
b、關閉一些不必要的服務
c、設置ssh普通用戶登陸並用hosts.all、hosts.deny限制登陸的網段
d、記錄登陸系統後操作的命令
發現有如下操作
Jul 31 00:26:37 CHN-LZ-131 logger: [euid=root]::[/root]echo > /var/log/messages
Jul 31 00:26:37 CHN-LZ-131 logger: [euid=root]::[/root]echo > /var/log/httpd/access_log
Jul 31 00:26:37 CHN-LZ-131 logger: [euid=root]::[/root]echo > /var/log/httpd/error_log
Jul 31 00:26:37 CHN-LZ-131 logger: [euid=root]::[/root]echo > /var/log/xferlog
Jul 31 00:26:37 CHN-LZ-131 logger: [euid=root]::[/root]echo > /var/log/secure
Jul 31 00:26:37 CHN-LZ-131 logger: [euid=root]::[/root]echo > /var/log/auth.log
Jul 31 00:26:37 CHN-LZ-131 logger: [euid=root]::[/root]echo > /var/log/user.log
Jul 31 00:26:37 CHN-LZ-131 logger: [euid=root]::[/root]echo > /var/log/wtmp
Jul 31 00:26:37 CHN-LZ-131 logger: [euid=root]::[/root]echo > /var/log/lastlog
Jul 31 00:26:37 CHN-LZ-131 logger: [euid=root]::[/root]echo > /var/log/btmp
Jul 31 00:26:37 CHN-LZ-131 logger: [euid=root]::[/root]echo > /var/run/utmp
Jul 31 00:26:37 CHN-LZ-131 logger: [euid=root]::[/root]echo > /var/spool/mail/root
Jul 31 00:26:37 CHN-LZ-131 logger: [euid=root]::[/root]echo > ./.bash_history
Jul 31 00:26:37 CHN-LZ-131 logger: [euid=root]::[/root]rm -rf /root/.bash_history
Jul 31 00:26:37 CHN-LZ-131 logger: [euid=root]::[/root]
linux服務器中木馬,手工清除方法