|
通過綜合采用用戶級別的top、ps等系統(tǒng)工具以及Linux內(nèi)核防護技術(shù),我們可以從用戶/內(nèi)核兩個層次全方位地保護Linux系統(tǒng)中重要系統(tǒng)進程以及用戶進程的安全性。
經(jīng)典的信息保密性安全模型Bell-LaPadula模型指出,進程是整個計算機系統(tǒng)的一個主體,它需要通過一定的安全等級來對客體發(fā)生作用。進程在一定條件下可以對諸如文件、數(shù)據(jù)庫等客體進行操作。如果進程用作其他不法用途,將給系統(tǒng)帶來重大危害。在現(xiàn)實生活當中,許多網(wǎng)絡(luò)黑客都是通過種植“木馬”的辦法來達到破壞計算機系統(tǒng)和入侵的目的,而這些“木馬”程序無一例外的是需要通過進程這一方式在機器上運行才能發(fā)揮作用的。另外,許多破壞程序和攻擊手段都需要通過破壞目標計算機系統(tǒng)的合法進程尤其是重要系統(tǒng)進程,使得系統(tǒng)不能完成正常的工作甚至無法工作,從而達到摧毀目標計算機系統(tǒng)的目的。作為服務(wù)器中占絕大多數(shù)市場份額的Linux系統(tǒng),要切實保證計算機系統(tǒng)的安全,我們必須對其進程進行監(jiān)控和保護。
用戶級進程監(jiān)控工具
Linux系統(tǒng)提供了who、w、ps和top等察看進程信息的系統(tǒng)調(diào)用,通過結(jié)合使用這些系統(tǒng)調(diào)用,我們可以清晰地了解進程的運行狀態(tài)以及存活情況,從而采取相應(yīng)的措施,來確保Linux系統(tǒng)的安全。它們是目前在Linux下最常見的進程狀況查看工具,它們是隨Linux套件發(fā)行的,安裝好系統(tǒng)之后,用戶就可以使用。
1、who命令:該命令主要用于查看當前在線上的用戶情況。系統(tǒng)管理員可以使用who命令監(jiān)視每個登錄的用戶此時此刻的所作所為。
2、w命令:該命令也用于顯示登錄到系統(tǒng)的用戶情況,但是與who不同的是,w命令功能更加強大,它不但可以顯示有誰登錄到系統(tǒng),還可以顯示出這些用戶當前正在進行的工作,w命令是who命令的一個增強版。
3、ps命令:該命令是最基本同時也是非常強大的進程查看命令。利用它可以確定有哪些進程正在運行及運行的狀態(tài)、進程是否結(jié)束、進程有沒有僵死、哪些進程占用了過多的資源等。ps命令可以監(jiān)控后臺進程的工作情況,因為后臺進程是不和屏幕鍵盤這些標準輸入/輸出設(shè)備進行通信的,如果需要檢測其情況,可以使用ps命令。
4、top命令:top命令和ps命令的基本作用是相同的,顯示系統(tǒng)當前的進程及其狀態(tài),但是top是一個動態(tài)顯示過程,可以通過用戶按鍵來不斷刷新當前狀態(tài)。如果在前臺執(zhí)行該命令,它將獨占前臺,直到用戶終止該程序為止。比較準確地說,top命令提供了實時的對系統(tǒng)處理器的狀態(tài)監(jiān)視。它可以顯示系統(tǒng)中CPU最“敏感”的任務(wù)列表。該命令可以按CPU使用、內(nèi)存使用和執(zhí)行時間對任務(wù)進行排序,而且它的很多特性都可以通過交互式命令或者在個人定制文件中進行設(shè)定。
需重點監(jiān)控的一些進程
由上面的介紹可知,Linux提供的這些命令都能提供關(guān)于進程的一些信息,可以通過它們查看系統(tǒng)當前的進程狀況,也可以找出那些占用了過多系統(tǒng)資源的進程并結(jié)束該進程。它們的優(yōu)點在于速度快,透明性好,直觀明了。下表給出了Linux系統(tǒng)中較為常見的重要的進程(沒有完全列出,用戶可以參考相應(yīng)的資料),用戶可以采用上述工具來實時的監(jiān)測這些重要進程的情況,并采取相應(yīng)的防護措施。
系統(tǒng)調(diào)用存在缺點
我們上述所介紹的進程監(jiān)控方法和工具都是基于調(diào)用操作系統(tǒng)給我們提供的相應(yīng)的API接口函數(shù)或者系統(tǒng)調(diào)用來實現(xiàn)的。我們所得到的只是接口函數(shù)處理后的結(jié)果,不能夠主動地從操作系統(tǒng)內(nèi)核的進程數(shù)據(jù)結(jié)構(gòu)當中獲取我們需要的信息。因而,它們具有如下缺點:
1、傳統(tǒng)的進程監(jiān)控方法運行效率比較低,同時反應(yīng)時間也比較長,實時性能差。
2、不能夠?qū)崟r、高效地向用戶報告當前系統(tǒng)運行的安全狀況,就算系統(tǒng)中有不法進程在運行,系統(tǒng)也不能識別出來。
3、不能給用戶捕捉不法進程的行為提供證據(jù)和進程的活動軌跡。當一個不法進程運行并對系統(tǒng)產(chǎn)生破壞時,用戶即使通過察看進程列表找到了不合法的進程,也不清楚到底從進程開始運行直到捕捉到這樣一個不法進程這樣一段時間內(nèi),進程都對系統(tǒng)造成了哪些破壞,比如說,訪問、修改了哪些重要的系統(tǒng)文件,占用了哪些系統(tǒng)資源等等。這些都給以后的恢復(fù)和處理工作帶來了很大的問題。 |
|
【收藏】【打印】【進入論壇】 |
|
|
|
|
|
|
|