欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

記一次入侵Linux服務(wù)器和刪除木馬程序的經(jīng)歷

 更新時(shí)間:2016年02月15日 10:11:18   作者:wangzan18  
這篇文章主要介紹了記一次入侵Linux服務(wù)器和刪除木馬程序的經(jīng)歷的相關(guān)資料,需要的朋友可以參考下

一、背景

晚上看到有臺(tái)服務(wù)器流量跑的很高,明顯和平常不一樣,流量達(dá)到了800Mbps,第一感覺(jué)應(yīng)該是中木馬了,被人當(dāng)做肉雞了,在大量發(fā)包。
我們的服務(wù)器為了最好性能,防火墻(iptables)什么的都沒(méi)有開(kāi)啟,但是服務(wù)器前面有物理防火墻,而且機(jī)器都是做的端口映射,也不是常見(jiàn)的端口,按理來(lái)說(shuō)應(yīng)該是滿安全的,可能最近和木馬有緣吧,老是讓我遇到,也趁這次機(jī)會(huì)把發(fā)現(xiàn)過(guò)程記錄一下。

二、發(fā)現(xiàn)并追蹤處理

1、查看流量圖發(fā)現(xiàn)問(wèn)題

查看的時(shí)候網(wǎng)頁(yè)非???,有的時(shí)候甚至沒(méi)有響應(yīng)。


2、top動(dòng)態(tài)查看進(jìn)程

我馬上遠(yuǎn)程登錄出問(wèn)題的服務(wù)器,遠(yuǎn)程操作很卡,網(wǎng)卡出去的流量非常大,通過(guò)top發(fā)現(xiàn)了一個(gè)異常的進(jìn)程占用資源比較高,名字不仔細(xì)看還真以為是一個(gè)Web服務(wù)進(jìn)程。


4、結(jié)束異常進(jìn)程并繼續(xù)追蹤

復(fù)制代碼 代碼如下:

killall -9 nginx1
rm -f /etc/nginx1

干掉進(jìn)程之后,流量立刻下來(lái)了,遠(yuǎn)程也不卡頓了,難道刪掉程序文件,干掉異常進(jìn)程我們就認(rèn)為處理完成了么?想想也肯定沒(méi)那么簡(jiǎn)單的,這個(gè)是木馬啊,肯定還會(huì)自己生成程序文件(果然不出我所料,在我沒(méi)有搞清楚之前,后面確實(shí)又生成了)我們得繼續(xù)追查。

5、查看登錄記錄及日志文件secure

通過(guò)命令last查看賬戶登錄記錄,一切正常。查看系統(tǒng)文件message并沒(méi)有發(fā)現(xiàn)什么,但是當(dāng)我查看secure文件的時(shí)候發(fā)現(xiàn)有些異常,反正是和認(rèn)證有關(guān)的,應(yīng)該是嘗試連進(jìn)來(lái)控制發(fā)包?


7、更多異常文件的發(fā)現(xiàn)

查看定時(shí)任務(wù)文件crontab并沒(méi)有發(fā)現(xiàn)什么一次,然后查看系統(tǒng)啟動(dòng)文件rc.local,也沒(méi)有什么異常,然后進(jìn)入/etc/init.d目錄查看,發(fā)現(xiàn)比較奇怪的腳本文件DbSecuritySpt、selinux。

想到這里,替換的命令應(yīng)該很多,單靠我們?nèi)フ铱隙ㄊ墙鉀Q不了的,我的建議最好是重裝操作系統(tǒng),并做好安全策略,如果不重裝,我下面給一下我的方法,具體行不行有待驗(yàn)證。

三、木馬手動(dòng)清除

現(xiàn)在綜合總結(jié)了大概步驟如下:

1、簡(jiǎn)單判斷有無(wú)木馬

復(fù)制代碼 代碼如下:

#有無(wú)下列文件
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

2、上傳如下命令到/root下

復(fù)制代碼 代碼如下:

ps netstat ss lsof

3、刪除如下目錄及文件

復(fù)制代碼 代碼如下:

rm -rf /usr/bin/dpkgd (ps netstat lsof ss)
rm -rf /usr/bin/bsd-port #木馬程序
rm -f /usr/bin/.sshd #木馬后門(mén)
rm -f /tmp/gates.lod
rm -f /tmp/moni.lod
rm -f /etc/rc.d/init.d/DbSecuritySpt(啟動(dòng)上述描述的那些木馬變種程序)
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(默認(rèn)是啟動(dòng)/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

4、找出異常程序并殺死

5、刪除含木馬命令并重新安裝(或者把上傳的正常程序復(fù)制過(guò)去也行)

我自己重新安裝好像不行,我是找的正常的機(jī)器復(fù)制的命令。

復(fù)制代碼 代碼如下:

#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
#ss
/root/chattr -i -a /usr/sbin/ss && rm /usr/sbin/ss -f
yum -y reinstall iproute 或 cp /root/ss /usr/sbin

四、殺毒工具掃描

1、安裝殺毒工具clamav

復(fù)制代碼 代碼如下:

yum -y install clamav clamav-milter

2、啟動(dòng)服務(wù)

復(fù)制代碼 代碼如下:

service clamd restart

3、更新病毒庫(kù)

由于ClamAV不是最新版本,所以有告警信息。可以忽略或升級(jí)最新版本。

復(fù)制代碼 代碼如下:

[root@mobile ~]# freshclam
ClamAV update process started at Sun Jan 31 03:15:52 2016
WARNING: Can't query current.cvd.clamav.net
WARNING: Invalid DNS reply. Falling back to HTTP mode.
Reading CVD header (main.cvd): WARNING: main.cvd not found on remote server
WARNING: Can't read main.cvd header from db.cn.clamav.net (IP: 185.100.64.62)
Trying again in 5 secs...
ClamAV update process started at Sun Jan 31 03:16:25 2016
WARNING: Can't query current.cvd.clamav.net
WARNING: Invalid DNS reply. Falling back to HTTP mode.
Reading CVD header (main.cvd): Trying host db.cn.clamav.net (200.236.31.1)...
OK
main.cvd is up to date (version: 55, sigs: 2424225, f-level: 60, builder: neo)
Reading CVD header (daily.cvd): OK (IMS)
daily.cvd is up to date (version: 21325, sigs: 1824133, f-level: 63, builder: neo)
Reading CVD header (bytecode.cvd): OK (IMS)
bytecode.cvd is up to date (version: 271, sigs: 47, f-level: 63, builder: anvilleg)

4、掃描方法

可以使用clamscan -h查看相應(yīng)的幫助信息

復(fù)制代碼 代碼如下:

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/

5、查看日志發(fā)現(xiàn)

把發(fā)現(xiàn)的命令刪掉替換正常的


附錄:Linux.BackDoor.Gates.5

經(jīng)過(guò)查詢資料,這個(gè)木馬應(yīng)該是Linux.BackDoor.Gates.5,找到一篇文件,內(nèi)容具體如下:
某些用戶有一種根深蒂固的觀念,就是目前沒(méi)有能夠真正威脅Linux內(nèi)核操作系統(tǒng)的惡意軟件,然而這種觀念正在面臨越來(lái)越多的挑戰(zhàn)。與4月相比,2014年5月Doctor Web公司的技術(shù)人員偵測(cè)到的Linux惡意軟件數(shù)量創(chuàng)下了新紀(jì)錄,六月份這些惡意軟件名單中又增加了一系列新的Linux木馬,這一新木馬家族被命名為L(zhǎng)inux.BackDoor.Gates。

在這里描述的是惡意軟件家族Linux.BackDoor.Gates中的一個(gè)木馬:Linux.BackDoor.Gates.5,此惡意軟件結(jié)合了傳統(tǒng)后門(mén)程序和DDoS攻擊木馬的功能,用于感染32位Linux版本,根據(jù)其特征可以斷定,是與Linux.DnsAmp和Linux.DDoS家族木馬同出于一個(gè)病毒編寫(xiě)者之手。新木馬由兩個(gè)功能模塊構(gòu)成:基本模塊是能夠執(zhí)行不法分子所發(fā)指令的后門(mén)程序,第二個(gè)模塊在安裝過(guò)程中保存到硬盤(pán),用于進(jìn)行DDoS攻擊。Linux.BackDoor.Gates.5在運(yùn)行過(guò)程中收集并向不法分子轉(zhuǎn)發(fā)受感染電腦的以下信息:

CPU核數(shù)(從/proc/cpuinfo讀?。?br />

CPU速度(從/proc/cpuinfo讀?。?br />

CPU使用(從/proc/stat讀?。?/p>

Gate'a的 IP(從/proc/net/route讀取)。

Gate'a的MAC地址(從/proc/net/arp讀取)。

網(wǎng)絡(luò)接口信息(從/proc/net/dev讀取)。

網(wǎng)絡(luò)設(shè)備的MAC地址。

內(nèi)存(使用/proc/meminfo中的MemTotal參數(shù))。
發(fā)送和接收的數(shù)據(jù)量(從/proc/net/dev讀?。?。
操作系統(tǒng)名稱和版本(通過(guò)調(diào)用uname命令)。

啟動(dòng)后,Linux.BackDoor.Gates.5會(huì)檢查其啟動(dòng)文件夾的路徑,根據(jù)檢查得到的結(jié)果實(shí)現(xiàn)四種行為模式。
如果后門(mén)程序的可執(zhí)行文件的路徑與netstat、lsof、ps工具的路徑不一致,木馬會(huì)偽裝成守護(hù)程序在系統(tǒng)中啟動(dòng),然后進(jìn)行初始化,在初始化過(guò)程中解壓配置文件。配置文件包含木馬運(yùn)行所必須的各種數(shù)據(jù),如管理服務(wù)器IP地址和端口、后門(mén)程序安裝參數(shù)等。

根據(jù)配置文件中的g_iGatsIsFx參數(shù)值,木馬或主動(dòng)連接管理服務(wù)器,或等待連接:成功安裝后,后門(mén)程序會(huì)檢測(cè)與其連接的站點(diǎn)的IP地址,之后將站點(diǎn)作為命令服務(wù)器。

木馬在安裝過(guò)程中檢查文件/tmp/moni.lock,如果該文件不為空,則讀取其中的數(shù)據(jù)(PID進(jìn)程)并“干掉”該ID進(jìn)程。然后Linux.BackDoor.Gates.5會(huì)檢查系統(tǒng)中是否啟動(dòng)了DDoS模塊和后門(mén)程序自有進(jìn)程(如果已啟動(dòng),這些進(jìn)程同樣會(huì)被“干掉”)。如果配置文件中設(shè)置有專門(mén)的標(biāo)志g_iIsService,木馬通過(guò)在文件/etc/init.d/中寫(xiě)入命令行

#!/bin/bash\n<path_to_backdoor>將自己設(shè)為自啟動(dòng),然后Linux.BackDoor.Gates.5創(chuàng)建下列符號(hào)鏈接:

復(fù)制代碼 代碼如下:

ln -s /etc/init.d/DbSecuritySpt /etc/rc1.d/S97DbSecuritySpt
ln -s /etc/init.d/DbSecuritySpt /etc/rc2.d/S97DbSecuritySpt
ln -s /etc/init.d/DbSecuritySpt /etc/rc3.d/S97DbSecuritySpt
ln -s /etc/init.d/DbSecuritySpt /etc/rc4.d/S97DbSecuritySpt

如果在配置文件中設(shè)置有標(biāo)志g_bDoBackdoor,木馬同樣會(huì)試圖打開(kāi)/root/.profile文件,檢查其進(jìn)程是否有root權(quán)限。然后后門(mén)程序?qū)⒆约簭?fù)制到/usr/bin/bsd-port/getty中并啟動(dòng)。在安裝的最后階段,Linux.BackDoor.Gates.5在文件夾/usr/bin/再次創(chuàng)建一個(gè)副本,命名為配置文件中設(shè)置的相應(yīng)名稱,并取代下列工具:

復(fù)制代碼 代碼如下:

/bin/netstat
/bin/lsof
/bin/ps
/usr/bin/netstat
/usr/bin/lsof
/usr/bin/ps
/usr/sbin/netstat
/usr/sbin/lsof
/usr/sbin/ps

木馬以此完成安裝,并開(kāi)始調(diào)用基本功能。

執(zhí)行另外兩種算法時(shí)木馬同樣會(huì)偽裝成守護(hù)進(jìn)程在被感染電腦啟動(dòng),檢查其組件是否通過(guò)讀取相應(yīng)的.lock文件啟動(dòng)(如果未啟動(dòng),則啟動(dòng)組件),但在保存文件和注冊(cè)自啟動(dòng)時(shí)使用不同的名稱。

與命令服務(wù)器設(shè)置連接后,Linux.BackDoor.Gates.5接收來(lái)自服務(wù)器的配置數(shù)據(jù)和僵尸電腦需完成的命令。按照不法分子的指令,木馬能夠?qū)崿F(xiàn)自動(dòng)更新,對(duì)指定IP地址和端口的遠(yuǎn)程站點(diǎn)發(fā)起或停止DDoS攻擊,執(zhí)行配置數(shù)據(jù)所包含的命令或通過(guò)與指定IP地址的遠(yuǎn)程站點(diǎn)建立連接來(lái)執(zhí)行其他命令。

此后門(mén)程序的主要DDoS攻擊目標(biāo)是中國(guó)的服務(wù)器,然而不法分子攻擊對(duì)象也包括其他國(guó)家。下圖為利用此木馬進(jìn)行的DDoS攻擊的地理分布:


相關(guān)文章

最新評(píng)論