LINUX系統取證

Linux系統取證主要包括使用現場勘驗和電子證據檢驗鑑定兩種方式。現場勘驗的目的主要是為了提取和保存易丟失數據,諸如網路連線信息、系統進程信息等。電子證據檢驗鑑定是在確保電子證據合法有效、不被惡意篡改的情況下,使用相關取證設備進行分析。

Linux取證程式

Linux系統取證程式和普通Windows系統取證程式並無差異,主要還是使用現場勘驗和電子證據檢驗鑑定兩種方式。現場勘驗的目的主要是為了提取和保存易丟失數據,諸如網路連線信息、系統進程信息等。電子證據檢驗鑑定是在確保電子證據合法有效、不被惡意篡改的情況下,使用相關取證設備進行分析。

現場勘驗(易丟失數據取證)

現場取證對伺服器及網路環境做出勘驗,對易丟失證據優先取證是現場取證的最主要的工作,現場取證可以加快取證工作進度,特別針對非法入侵這類案件,必須在這項工作完成後才能斷開網路或關閉伺服器。易丟失數據有系統用戶登錄記錄、進程記錄、網路連線記錄、臨時檔案備份等工作,具體取證方法在後面會詳細介紹。

電子證據檢驗鑑定

電子證據檢驗鑑定(通過唯讀鎖等方式接入分析)可以將證據硬碟通過唯讀鎖進行連線,使用linux系統掛載Linux分區或者使用ftkimg等軟體將Linux分區掛載在Windows系統下,然後再進行分析取證。

Linux系統通用取證方法

Linux系統被非法入侵

在非法入侵案件中,犯罪嫌疑人會替換系統內的一些指令執行程式,如ls、ps、su等,因此現勘驗時必須採用獨立、乾淨、可靠來源的指令,以保證指令執行結果的正確性。非法入侵後易留下的痕跡:修改系統進程,添加非法用戶、啟動非法服務、修改配置檔案、安裝後門等。

檢查系統進程

犯罪嫌疑人在入侵Linux系統後必然要在系統中留有後門,或者植入非法程式,通過查看進程的方式可以發現非法進程的線索。查看系統中是否有可疑進程,可以通過如下2個指令進行:

ps aux

pstree

取證時,可以採用重定向功能將顯示內容寫入到檔案中,便於分析及保存當前系統狀態(注意:檔案需不能保存在證據硬碟上)。

ps aux > ps aux 20100126.txt

pstree > pstree20100126.txt

檢查非法用戶

犯罪嫌疑人進入系統後,可能會為了日後再次登錄方便,為自己開設賬戶,因此有必要對可疑、非法賬戶進行檢查。與用戶相關的主要是/etc目錄passwd、shadow、group這三個檔案。

passwd保存的是用戶屬性信息,格式為“用戶名:密碼:用戶ID:組ID:用戶信息:用戶目錄:用戶shell許可權”,檢查是否有新增用戶及用戶屬性,檢查用戶的目錄屬性和組屬性是否被改變。

shadow保存的用戶密碼信息,格式為“用戶名:密碼:口令最後修改時間距1970年1月1日的天數:其它屬性”,檢查用戶的密碼是否為空,以及口令修改時間的天數。

group保存的是用戶組信息,格式為“組名:密碼:組ID:組成員列表”,檢查組ID是否被改變,組成員列表是否增加。

檢查用戶登錄

Linux是多任務、多用戶作業系統,該系統對用戶登錄有詳細的記錄,為了及時發現嫌疑人是在線上,案發前那些用戶登錄過作業系統,有必要對用戶登錄進行檢查。檢查用戶在系統上的當前登錄及過去登錄的情況,通過以下2個指令:

w指令:檢查當前系統中有哪些用戶正在登錄到系統中

last指令:檢查當前系統的登錄信息。

檢查操作日誌

根據用戶登錄情況的檢查結果,可以對用戶的操作日誌檔案“用戶目錄/.bash_history”進行檢查,查看犯罪嫌疑人做了哪些操作,及時取證。

檢查網路連線狀態

犯罪嫌疑人入侵系統雖然有不同的動機和目的,但最重結果都是為了非法獲得數據。而數據必然要通過相關途徑進行回傳,因此有必要檢查網路連線狀態,也需要因此來判定是否能夠斷網取證。查看系統中網路連線狀態以及網路服務對應的進程,通過以下2個指令:

netstat-lnp

netstat na

做取證工作時,可以採用重定向功能將顯示內容寫入到檔案中,便於分析及保存當前系統狀態(注意:檔案需不能保存在證據硬碟上)。

netstat lnp > netstat-lnp 20100126.txt

netstat na > netstat-na 20100126.txt

檢查系統配置檔案

檢查系統配置檔案的目的是,犯罪嫌疑人設定系統自動啟動非法服務或後門程式,保證犯罪嫌疑人可以再次登錄系統。根據前幾項檢查工作的結果,對系統配置檔案或目錄 /etc/inet.conf、 /etc/inittab、/etc/rc.d/rc3.d/、 /etc/rc.d/init.d/、/etc/rc.d/rc.local進行檢查,檢查檔案是否被修改或有新增檔案,上述檔案或目錄均為系統啟動過程中所要調用的內容。

檢查系統日誌

根據前幾項的檢查結果,有針對性的對日誌檔案進行檢查,發現日誌異常情況。特別是在沒有現場勘驗條件,只能通過電子證據檢驗鑑定時,就需要對以下日誌檔案進行分析,分析用戶登錄等數據。

/var/log/lastlog記錄每個使用者最近登錄系統的時間,因此當使用者登錄時,就會顯示其上次登錄的時間。此檔可用/usr/bin/lastlog指令讀取。

/var/run/utmp:保存當前登錄每個使用者的信息,who,users,finger等指令會查這個檔案。

/var/log/wtmp:記錄每個使用者登錄及退出的時間,last這個指令會查這個檔案。這個檔案也記錄shutdown及reboot的動作。檢查在這個檔案中記錄的可疑連線,可以幫助你確定牽扯到這起入侵事件的主機,找出系統中的哪些帳戶可能被侵入了。

/var/log/secure:記錄IP位址的訪問及訪問失敗。通過檢查這個日誌檔案,可以發現一些異常服務請求,或者從陌生的主機發起的連線。

/var/log/maillog:記錄電子郵件的收發記錄,通過檢查這個日誌檔案,可以發現伺服器上的郵件往來信息。

/var/log/cron:記錄系統定時運行程式的指令,通過檢查這個檔案,可以發現伺服器上有哪些定時運行的指令。

/var/log/xferlog:記錄那些地址使用ftp上傳或下載檔案這些信息可以幫助你確定入侵者向你的系統上載了哪些工具,以及從系統下載了哪些東西。

/var/log/messages:記錄系統大部份的信息,包括login,checkpassWord,failedlogin,ftp,su等,可以從這個檔案中發現異常信息,檢查入侵過程中發生了哪些事情。

檢查臨時檔案

有些犯罪嫌疑人會將檔案寫入/temp目錄,/temp目錄為系統臨時快取目錄,所有用戶均對該目錄有寫許可權,當伺服器關閉或重新啟動後該目錄會被清空,因此在取證的時候要通用“ls-alF”指令對/temp目錄進行檢查,對非法檔案進行備份。指令ls的-a參數是列出全部檔案,防止以“.”開頭的檔案名稱預設不顯示的情況。

Linux系統伺服器提供非法服務

檢查系統開放的服務

通過檢查網路連線狀態可以看到系統開放的服務及對應的連線埠號。例如:開放了80連線埠,證明有可能提供了Web服務,開放了3306連線埠,可能提供Mysql服務。

檢查web日誌和數據

當確認Linux系統是提供Web服務套用後,緊跟著重要的任務就是分析Web服務等詳細組成部分,分析網站的結構,找到能夠證實犯罪嫌疑人違法犯罪的關鍵數據。檢查Apache配置檔案,確定非法網站域名與檔案目錄的對應關係:

/etc/httpd/conf

此目錄為系統自帶Apache安裝包的配置檔案目錄,可以檢查httpd.conf配置檔案內容。

/usr/local/apache/conf

此目錄為手動編譯安裝Apache源程式的配置檔案目錄,可以檢查httpd.conf和子目錄extra中的配置檔案內容。檢查Apache日誌檔案,查看瀏覽非法網站的訪問記錄:

/var/log/httpd/access.log記錄httpd服務的訪問信息及IP位址。

/var/log/httpd/error.log記錄httpd服務出錯的訪問信息及IP位址。

Redhat預設安裝的httpd服務的日誌在/var/log/httpd目錄,手工安裝的一般在/usr/local/apache2或/usr/local/apache目錄檢查Tomcat配置及日誌檔案:

/usr/local/tomcat/conf/server.xml,Tomcat的配置檔案,設定域名與檔案目錄的對應關係。

/usr/local/tomcat/logs/catalina.out,Tomcat的日誌檔案,記錄訪問域名的信息。

檢查資料庫日誌和數據(僅以Mysql為例)

檢查Mysql配置檔案:

/etc/my.cnf,Mysql的配置檔案,確定Mysql資料庫的存儲位置與資料庫日誌信息。

檢查Mysql日誌檔案:

/var/log/mysql.log,Mysql的日誌檔案,記錄Mysql運行的相關係統。

/usr/local/mysql/var,Mysql的資料庫檔案存儲目錄,存放資料庫檔案。

Linux被作為跳板,提供路由轉發

此類案件犯罪嫌疑人一般擁有較高計算機知識,作案時設定多個跳板,妄圖干擾偵查視線,逃避打擊。遇到此類案件進行偵查時,首先檢查網路連線和系統服務,然後再檢查應用程式。

檢查Iptables

檢查Iptables配置情況,查看是否有網路服務被重定向其它伺服器:檢查系統中的配置情況,檢查是否有部分服務被重定向到其它的伺服器上面,以下2個指令根據系統版本的不同,指令也不相同。

iptables--list ipchains--list做取證工作時,可以採用重定向功能將顯示內容寫入到檔案中,便於分析及保存當前系統狀態。

iptables--list > iptables-list 20100126.txt

ipchains--list > ipchains-list20100126.txt

檢查Iptables日誌檔案,記錄Iptables命令的相關信息:Iptables的日誌是放在/var/log/messages裡面的,可以搜尋ip_tables這個詞來查找相關信息。

檢查Squid

SquidCache是基於Linux的一款代理伺服器和Web快取伺服器軟體。在江蘇省鎮江市查辦的一起賭博案件中,犯罪嫌疑人通過建立Linux伺服器,安裝Squid,唆使參賭人員使用代理伺服器進行登錄,妄圖逃避打擊。檢查Squid的配置檔案:/etc/squid/squid.conf,配置Squid的代理或快取IP。/usr/local/squid/etc/squid.conf,配置Squid的代理或快取IP。檢查Squid的日誌檔案:/var/log/squid/access.log,記錄Squid的訪問記錄。

相關詞條

熱門詞條

聯絡我們