案例描述 html
早上接到IDC的電話,說咱們的一個網段IP不停的向外發包,應該是被攻擊了,具體哪一個IP不知道,讓咱們檢查一下。 數據庫
按理分析及解決辦法 c#
首先咱們要先肯定是哪臺機器的網卡在向外發包,還好咱們這邊有zabbix監控,我就一臺一臺的檢查,發現有一臺的流量跑滿了,問題應該出如今這臺機器上面。 tomcat
我登陸到機器裏面,查看了一下網卡的流量,個人天啊,竟然跑了這個多流量。 oracle
這臺機器主要是運行了一個tomcat WEB服務和oracle數據庫,問題不該該出如今WEB服務和數據庫上面,我檢查了一下WEB日誌,沒有發現什麼異常,查看數據庫也都正常,也沒有什麼錯誤日誌,查看系統日誌,也沒有看到什麼異常,可是系統的登陸日誌被清除了,我趕忙查看了一下目前運行的進程狀況,看看有沒有什麼異常的進程,一查看,果真發現幾個異常進程,不仔細看還真看不出來,這些進程都是不正常的。 ssh
這是個什麼進程呢,我每次ps -ef都不同,一直在變更,進程號一一直在變更中,我想看看進程打開了什麼文件都行,一時無從下手,想到這裏,我忽然意識到這應該都是一些子進程,由一個主進程進行管理,因此看這些子進程是沒有用的,即使我殺掉他們還會有新的生成,擒賊先擒王,咱們去找一下主進程,我用top d1實時查看進程使用資源的狀況,看看是否是有異常的進程佔用cpu內存等資源,發現了一個奇怪的進程,平時沒有見過。這個應該是咱們尋找的木馬主進程。 spa
我嘗試殺掉這個進程,killall -9 ueksinzina,但是殺掉以後ps -ef查看仍是有那些子進程,難道沒有殺掉?再次top d1查看,發現有出現了一個其餘的主進程,看來殺是殺不掉的,要是那麼容易殺掉就不是木馬了。 日誌
咱們看看他究竟是什麼,"which obgqtvdunq"發現這個命令在/usr/bin下面,屢次殺死以後又從新在/usr/bin目錄下面生成,想到應該有什麼程序在監聽這個進程的狀態也可能有什麼定時任務,發現進程死掉在從新執行,我就按照目前的思路查看了一下/etc/crontab定時任務以及/etc/init.d啓動腳本,均發現有問題。 htm
能夠看到裏面有個定時任務gcc4.sh,這個不是咱們設定的,查看一下內容更加奇怪了,這個應該是監聽程序死掉後來啓動的,咱們這邊把有關的配置所有刪掉,而且刪掉/lib/libudev4.so。 進程
在/etc/init.d/目錄下面也發現了這個文件。
裏面的內容是開機啓動的信息,這個咱們也給刪掉。
以上兩個是一個在開機啓動的時候啓動木馬,一個是木馬程序死掉以後啓動木馬,可是目前咱們殺掉木馬的時候木馬並無死掉,而是馬上更換名字切換成另外一個程序文件運行,因此咱們直接殺死是沒有任何用處的,咱們目的就是要阻止新的程序文件生成,首先咱們取消程序的執行權限並把程序文件成成的目錄/usr/bin目錄鎖定。
1
2
|
chmod 000 /usr/bin/obgqtvdunq
chattr +i /usr/bin
|
而後咱們殺掉進程"killall -9 obgqtvdunq",而後咱們在查看/etc/init.d/目錄,看到他又生成了新的進程,而且目錄變化到了/bin目錄下面,和上面同樣,取消執行權限並把/bin目錄鎖定,不讓他在這裏生成,殺掉而後查看他又生成了新的文件,此次他沒有在環境變量目錄裏面,在/tmp裏面,咱們把/tmp目錄也鎖定,而後結束掉進程。
到此爲止,沒有新的木馬進程生成,原理上說是結束掉了木馬程序,後面的工做就是要清楚這些目錄產生的文件,通過我尋找,首先清除/etc/init.d目錄下面產生的木馬啓動腳本,而後清楚/etc/rc#.d/目錄下面的鏈接文件。
後來我查看/etc目錄下面文件的修改時間,發現ssh目錄下面也有一個新生成的文件,不知道是否是有問題的。
清理差很少以後咱們就要清理剛纔生成的幾個文件了,一個一個目錄清楚,好比"chattr -i /tmp",而後刪除木馬文件,以此類推刪除/bin、/usr/bin目錄下面的木馬,到此木馬清理完畢。
快速清理木馬流程
假設木馬的名字是nshbsjdy,若是top看不到,能夠在/etc/init.d目錄下面查看
一、首先鎖定三個目錄,不能讓新木馬文件產生
1
2
3
4
|
chmod 000 /usr/bin/nshbsjdy
chattr +i /usr/bin
chattr +i /bin
chattr +i /tmp
|
二、刪除定時任務及文件以及開機啓動文件
1
2
3
|
刪除定時任務及文件
rm -f /etc/init.d/nshbsjdy
rm -f /etc/rc#.d/木馬鏈接文件
|
三、殺掉木馬進程
1
|
killall -9 nshbsjdy
|
四、清理木馬進程
1
2
|
chattr -i /usr/bin
rm -f /usr/bin/nshbsjdy
|
處理完成以後再一次檢查一下以上各目錄,尤爲是/etc目錄下面最新修改的文件。
若是是rootkit木馬,能夠用下面的軟件進行檢查
1
2
|
軟件chkrootkit:http://www.chkrootkit.org/
軟件RKHunter:https://rootkit.nl/projects/rootkit_hunter.html
|
安裝都很是簡單,我使用RKHunter簡單檢查了一下,沒有發現什麼重大問題,可是這也並不表示沒有什麼問題,由於咱們的檢測命令也是依賴一些系統的命令,若是系統的命令被感染那是檢測不出來的,最好是系統的命令備份一份檢查,再不行就備份數據重裝嘍。