Linux系統被入侵后的排查過程


摘自《Linux系統安全》

一、准備工作

1. 檢查人員應該可以物理接觸到可疑的系統。因為黑客可能會通過網絡監聽而檢測到你正在檢查系統,所以物理接觸比遠程控制更好。

2. 為了當作法庭證據,需要把硬盤做實體備份。如果需要,斷開所有與可疑機器的網絡連接。

3. 做入侵檢測時,檢查人員需要一台計算機專門針對檢查的過程進行檢查項目的結果記錄。

4. 請維護可疑服務器的人員來配合,以確定機器上安裝的軟件和運行的服務、賬戶等信息,以便於安全檢察人員提高檢查的效率、准確性和針對性。

二、步驟

檢測步驟如下:

1. 檢測常用程序是否被替換。確保檢測執行命令的結果是可信的

1).通常被替換的程序有login、ls、ps、ifconfig、du、find、netstat、ss等。執行一些命令參數,查看程序是否被替換。例如:

ls -alh
netsta -anp

2).通過檢查md5sum和文件大小,判斷是否被替換。例如:

md5sum /bin/netstat

3).上傳chkrootkit和rkhunter兩個工具,檢測一下是否有Rootkit,用兩個是可以互補。

4).使用ClamAV Antivirus檢查/sbin、/bin、/usr/sbin、/usr/bin。使用命令如下:

freshclam
clamscan -r PATH

2. 查找隱藏的目錄和文件

查找隱藏目錄和文件時使用的命令如下:
find / -name '...'
find / -name '..'
find / -name '.'
find / -name ' '

3. 檢測近期系統登錄

使用last命令檢測近期系統登錄,特別注意非正常來源IP地址或者用戶名的登錄記錄。

4. 檢測系統用戶

1.通過命令less /etc/passwd查看是否有新增用戶

2.通過命令grep ':0' /etc/passwd 查看是否有特權用戶(root權限用戶)

3.通過命令stat /etc/passwd 查看passwd最后修改事件

4.通過命令awk -F: 'length($2)==0 {print $1}' /etc/shadow 查看是否存在空口令的用戶。

5. 查看進程

1.輸入ps -aux查看輸出信息,尤其注意有沒有以./xxx開頭的進程。如果有,則用kill -9 PID殺死該進程,然后再運行ps -aux查看該進程是否被殺死;如果此類進程出現結束后又重新啟動的現象,則證明系統同被人放置了自動啟動腳本,這個時候要進行仔細查找。使用如下命令:

find / -name 進程名 -print

2.通過命令lsof -p PID查看進程所打開的端口和文件。

3.檢查隱藏進程,使用的命令如下:

ps -ef| awk '{print $2}' | sort -n | uniq>1
ls /proc | sort -n | uniq>2
diff 1 2

6. 檢查網絡連接和監聽端口

2.通過netstat -lntp查看所有監聽端口。

3.通過netstat -antp查看所有已經建立的連接。特別注意本機主動連接到外部地址的連接,這可能是反彈shell。

4.通過arp -an查看arp記錄是否正常。

7. 檢查計划任務

1.通過命令crontab -u root -l查看root用戶的計划任務。

2.通過命令cat /etc/crontab查看有無異常條目。

3.通過命令ls /var/spool/cron查看有無異常條目。

4.通過命令ls -l/etc/cron.*查看cron詳細文件變化。

8. 檢查開機啟動項

1.檢查開機啟動項/etc/rc.local的內容

2.使用systemctl或者chkconfig檢查開機啟動項。

9. 檢查日志中的異常

注:為了防止對原始日志的損壞,建議檢查前最好先做好日志備份。

1.需要檢查的日志類型如下:

系統日志:message、secure、cron、mail等日志。
應用程序日志:apache日志、nginx日志、ftp日志、mysql、oracle等日志。
自定義日志:很多程序開發過程中會自定義程序日志,這些日志也是很重要的數據,能夠幫助我們分析入侵途徑等信息。
bash_history:這是bash執行過程中記錄的bash日志信息,能夠幫我們查看bash執行了哪些命令。
其他安全事件相關的日志記錄。

2.分析異常時的注意事項如下:

用戶在非常規的事件登錄。
不正常的日志記錄,比如殘缺不全的日志或者注入wtmp這樣的日志文件,無故的缺少了中間的記錄文件。
用戶登錄系統的IP地址和以往的不一樣。
用戶登陸失敗的日志記錄,尤其是那些一再連續嘗試、進入失敗的日志記錄。
非法使用或不正當使用超級用戶權限su的指令。
無故或者非法重新啟動各項網絡服務的記錄。

10. webshell檢測

檢查web目錄下是否存在webshell網頁木馬,重點檢查類似upload目錄。使用D盾或者LMD、安全狗等。

三、檢測注意項

1.如果這台機器業務很重要而不能被切斷網絡,那么一定要備份所有重要的資料,以避免黑客注意到正在進行檢測而刪除文件。

2.如果這台機器業務不是很重要,那么建議切斷網絡連接做物理隔離,將整個硬盤進行外置存儲復制鏡像,工具可以使用dd。

3.嘗試找出黑客活動的證據:

找到攻擊者使用過什么文件,包括被刪除的文件(使用取證工具),查看這些文件做了什么,了解它的功能。

檢查最近被存取的所有檔案

查找是否又遠程控制或者后門之類的傳播

嘗試找出攻擊者如何進入系統,所有可能都要考慮到

修復攻擊者利用的漏洞

四、修復

1.無論系統被入侵到什么程度以及安全人員檢查的情況如何,只要是被滲透過,最好的修復方法就是重裝系統,並打上所有補丁,同時按照基線要求進行配置。

2.改變所有系統相關賬號的密碼。(包括數據庫連接字符串)

3.嘗試檢查、恢復那些已經被攻擊者篡改的文件

五、出具檢測報告

檢測報告一般要包括以下內容:

1. 檢測的概要步驟

2. 檢測結果

3. 指出什么地方出了問題

4. 入侵事件對業務造成了什么影響

5. 應對改進的建議


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM