一、HIPS簡(jiǎn)介
HIPS是英文“Host Intrusion Prevent System”的縮寫(xiě),通常被翻譯為“主機(jī)入侵防御系統(tǒng)”。HIPS如何防御入侵?一般來(lái)說(shuō),HIPS通過(guò)應(yīng)用程序控制AD、文件保護(hù)FD、注冊(cè)表保護(hù)RD、網(wǎng)絡(luò)訪(fǎng)問(wèn)控制ND來(lái)實(shí)現(xiàn)。
(一)應(yīng)用程序控制類(lèi) AD
應(yīng)用程序控制功能,也就是我們通常描述HIPS軟件時(shí)所提到的AD(Application Defend)功能,是HIPS軟件最重要也是最基本的功能。在Windows系統(tǒng)上,應(yīng)用程序的行為是造成Windows系統(tǒng)威脅的根本原因。計(jì)算機(jī)感染病毒、被植入木馬等問(wèn)題的核心都是應(yīng)用程序被執(zhí)行且產(chǎn)生了惡意行為。
應(yīng)用程序控制功能需要對(duì)應(yīng)用程序可能對(duì)操作系統(tǒng)帶來(lái)危害的主要行為進(jìn)行控制,使用戶(hù)在使用HIPS后可以及時(shí)發(fā)現(xiàn)這些行為并及時(shí)阻止。高級(jí)些的HIPS還需要對(duì)應(yīng)用程序的執(zhí)行進(jìn)行控制,對(duì)可執(zhí)行文件的完整性進(jìn)行校驗(yàn),已知程序運(yùn)行控制,未知程序運(yùn)行控制,已更改程序運(yùn)行控制,自啟動(dòng)程序控制,創(chuàng)建子進(jìn)程控制,打開(kāi)進(jìn)程控制,DLL注入控制,打開(kāi)網(wǎng)絡(luò)連接控制,OLE對(duì)象控制等。
(二)文件控制類(lèi) FD
文件控制功能就是通常所說(shuō)的FD(File Defend)功能。HIPS對(duì)操作系統(tǒng)的文件讀寫(xiě)進(jìn)行控制。這種控制包括兩個(gè)方面:
首先是對(duì)未知應(yīng)用程序試圖進(jìn)行文件讀寫(xiě)操作的行為進(jìn)行控制。
其次是對(duì)關(guān)鍵路徑進(jìn)行保護(hù)。未知程序向Windows、Windows\system32、Documents and Settings等目錄寫(xiě)文件都是非常危險(xiǎn)的動(dòng)作。
(三)注冊(cè)表控制類(lèi) RD
注冊(cè)表控制類(lèi)通常被成為HIPS的RD(Registry Defend)功能。注冊(cè)表是應(yīng)用程序運(yùn)行的重要入口,在Windows系統(tǒng)中預(yù)留了類(lèi)似于Run、RunOnce等特殊注冊(cè)表項(xiàng),用以在操作系統(tǒng)啟動(dòng)時(shí)自動(dòng)運(yùn)行相應(yīng)的應(yīng)用程序,此外注冊(cè)表還決定了應(yīng)用程序的引導(dǎo)方式,如作為驅(qū)動(dòng)引導(dǎo)、作為服務(wù)引導(dǎo)還是作為一般應(yīng)用程序引導(dǎo),引導(dǎo)順序也可以指定。HIPS對(duì)操作系統(tǒng)的注冊(cè)表讀寫(xiě)進(jìn)行控制,這種控制包括兩個(gè)方面:
首先是未知應(yīng)用程序讀寫(xiě)注冊(cè)表的行為,HIPS軟件應(yīng)該可以及時(shí)進(jìn)行控制,木馬通常會(huì)在運(yùn)行后將自身寫(xiě)入自動(dòng)運(yùn)行鍵以開(kāi)啟后門(mén)。
其次是對(duì)關(guān)鍵注冊(cè)表項(xiàng)進(jìn)行保護(hù),防止惡意軟件通過(guò)正常應(yīng)用程序以授權(quán)權(quán)限寫(xiě)關(guān)鍵注冊(cè)表項(xiàng)。
(四)網(wǎng)絡(luò)控制類(lèi) ND
一般來(lái)說(shuō),在用戶(hù)擁有足夠進(jìn)程相關(guān)方面知識(shí)的情況下,3D聯(lián)防能非常有效的防止木馬或者病毒的偷偷運(yùn)行,這樣對(duì)于個(gè)人用戶(hù)來(lái)說(shuō),中毒插馬的可能性就基本上不大可能了。但是,3D聯(lián)防也不是最安全的,用戶(hù)穿上的只是個(gè)全透明防彈衣也還是會(huì)被某些別有用心的人偷窺去用戶(hù)的個(gè)人隱私的,所以,HIPS對(duì)網(wǎng)絡(luò)控制也很重要。
HIPS對(duì)網(wǎng)絡(luò)行為進(jìn)行控制,不僅需要完成主機(jī)、端口過(guò)濾,也需要對(duì)試圖訪(fǎng)問(wèn)網(wǎng)絡(luò)的應(yīng)用程序進(jìn)行控制,進(jìn)方向連接控制 ,出方向連接控制 ,狀態(tài)檢測(cè),IP監(jiān)控等。
二、HIPS“智能化”分析
(一)微點(diǎn)的“智能化”模式
對(duì)于智能化的HIPS尚沒(méi)有一個(gè)權(quán)威的定義。目前市面上以“智能化HIPS”自稱(chēng)的大概是微點(diǎn)主動(dòng)防御軟件。該軟件有四個(gè)模塊:已知病毒識(shí)別、未知病毒識(shí)別、可疑程序診斷、進(jìn)程來(lái)源分析。
官方介紹:
1、首創(chuàng)動(dòng)態(tài)仿真反病毒專(zhuān)家系統(tǒng):對(duì)病毒行為規(guī)律分析、歸納、總結(jié),并結(jié)合反病毒專(zhuān)家判定病毒的經(jīng)驗(yàn),提煉成病毒識(shí)別規(guī)則知識(shí)庫(kù)。模擬專(zhuān)家發(fā)現(xiàn)新病毒的機(jī)理,通過(guò)對(duì)各種程序動(dòng)作的自動(dòng)監(jiān)視,自動(dòng)分析程序動(dòng)作之間的邏輯關(guān)系,綜合應(yīng)用病毒識(shí)別規(guī)則知識(shí),實(shí)現(xiàn)自動(dòng)判定新病毒,達(dá)到主動(dòng)防御的目的。
2、自動(dòng)準(zhǔn)確判定新病毒:分布在操作系統(tǒng)的眾多探針,動(dòng)態(tài)監(jiān)視所運(yùn)行程序調(diào)用各種應(yīng)用編程接口(API)的動(dòng)作,自動(dòng)分析程序動(dòng)作之間的邏輯關(guān)系,自動(dòng)判定程序行為的合法性,實(shí)現(xiàn)自動(dòng)診斷新病毒,明確報(bào)告診斷結(jié)論;有效克服當(dāng)前安全技術(shù)大多依據(jù)單一動(dòng)作,頻繁詢(xún)問(wèn)是否允許修改注冊(cè)表或訪(fǎng)問(wèn)網(wǎng)絡(luò),給用戶(hù)帶來(lái)困惑以及用戶(hù)因難以自行判斷,導(dǎo)致誤判、造成危害產(chǎn)生或正常程序無(wú)法運(yùn)行的缺陷。
3、程序行為監(jiān)控并舉:在全面監(jiān)視程序運(yùn)行的同時(shí),智能分析程序行為,發(fā)現(xiàn)新病毒后,自動(dòng)阻止病毒行為并終止病毒程序運(yùn)行,自動(dòng)清除病毒,并自動(dòng)修復(fù)注冊(cè)表。
4、自動(dòng)提取特征值實(shí)現(xiàn)多重防護(hù):在采用動(dòng)態(tài)仿真技術(shù)的同時(shí),有效克服特征值掃描技術(shù)滯后于病毒出現(xiàn)的缺陷,發(fā)現(xiàn)新病毒后自動(dòng)提取病毒特征碼并自動(dòng)更新本地未知特征庫(kù),實(shí)現(xiàn)"捕獲、分析、升級(jí)"自動(dòng)化,更有效阻止同一個(gè)病毒的再次感染,使用戶(hù)系統(tǒng)得到安全高效的多重防護(hù)。
5、可視化顯示監(jiān)控信息:微點(diǎn)軟件對(duì)所監(jiān)控的程序行為,包括程序運(yùn)行、程序生成、網(wǎng)絡(luò)信息、攻擊日志等大量信息可視化顯示出來(lái),用戶(hù)能直觀(guān)掌握系統(tǒng)的運(yùn)行狀態(tài),并依據(jù)其分析系統(tǒng)的安全性。
從以上文字可以看出,該軟件一再?gòu)?qiáng)調(diào)通過(guò)病毒行為之分析、監(jiān)控病毒行為以達(dá)到主動(dòng)防御之目的。這的確符合HIPS的主動(dòng)防御是基于行為分析之原理。
但是,該說(shuō)明有一處應(yīng)引起大家注意“病毒識(shí)別規(guī)則知識(shí)庫(kù)”、“發(fā)現(xiàn)新病毒后自動(dòng)提取病毒特征碼并自動(dòng)更新本地未知特征庫(kù),實(shí)現(xiàn)‘捕獲、分析、升級(jí)’自動(dòng)化,更有效阻止同一個(gè)病毒的再次感染,使用戶(hù)系統(tǒng)得到安全高效的多重防護(hù)”等,那么微點(diǎn)究竟是基于“行為分析”還是“病毒特征碼分析”呢?還是兩個(gè)都有?這難免給人一種閃爍其詞的模糊感覺(jué)。
當(dāng)然,也有人認(rèn)為,“主動(dòng)防御將發(fā)展為病毒碼方法的一系分支,只不過(guò)它所根據(jù)的并非程序碼模式,而是‘行為’”。這句話(huà)有點(diǎn)不可思議,至少?gòu)倪壿嬌峡梢赃@么認(rèn)為:行為是行為,特征碼是特征碼,一個(gè)是動(dòng)態(tài)的事實(shí),一個(gè)是靜態(tài)的文本,二者不可同日而語(yǔ)。不能把行為分析歸入在病毒特征碼分析,二者還是有明顯的區(qū)別。無(wú)怪乎微點(diǎn)給我們第一印象是殺軟。
我們沒(méi)有必要一味強(qiáng)調(diào)“行為分析”而排斥“病毒特征碼分析”,也沒(méi)有必要一味強(qiáng)調(diào)“病毒特征碼分析”而降低“行為分析”的獨(dú)立性。盡管“病毒特征碼分析”和“行為分析”是有一定區(qū)別,但是并不排除HIPS磨合兩個(gè)模塊的可能,只是軟件開(kāi)發(fā)者在考慮到各種因素后而有所偏好或舍棄。
(二)HIPS“智能化”概念
微點(diǎn)有關(guān)程序(包括病毒)行為分析及其控制機(jī)制,為“智能化”之界定提供了一個(gè)比較清晰的模式:“動(dòng)態(tài)監(jiān)視所運(yùn)行程序調(diào)用各種應(yīng)用編程接口(API)的動(dòng)作,自動(dòng)分析程序動(dòng)作之間的邏輯關(guān)系,自動(dòng)判定程序行為的合法性”,“在全面監(jiān)視程序運(yùn)行的同時(shí),智能分析程序行為,發(fā)現(xiàn)新病毒后,自動(dòng)阻止病毒行為并終止病毒程序運(yùn)行,自動(dòng)清除病毒,并自動(dòng)修復(fù)注冊(cè)表”等。
可見(jiàn),“智能化”是指對(duì)程序行為的自動(dòng)判斷、控制和處理行為。然而,“智能化”只能建立在軟件開(kāi)發(fā)者等對(duì)各種程序行為分析、歸納、總結(jié)基礎(chǔ)上,得出的一般規(guī)律,制定默認(rèn)規(guī)則,做出普遍的安全控制。無(wú)論如何,HIPS軟件自身是不可能在預(yù)設(shè)規(guī)則之外自動(dòng)識(shí)別惡意行為的。“智能化”僅僅是預(yù)制規(guī)則的控制結(jié)果而已。
(三)智能化的尷尬
如上所述,“智能化”僅僅是預(yù)制規(guī)則的控制結(jié)果而已。預(yù)制規(guī)則僅僅是對(duì)一般危險(xiǎn)行為,比如“插入代碼”、“獲得系統(tǒng)優(yōu)先權(quán)”、“強(qiáng)制終結(jié)其他程序”等。如果某些安全程序也有如上行為,HIPS一樣攔截,或提示“危險(xiǎn)行為”。難怪有人說(shuō)HIPS誤報(bào),這就出現(xiàn)“智能化”不“智能”了。
因此,HIPS“智能化”的說(shuō)法不太嚴(yán)謹(jǐn)。真正的“智能化”還是人腦,不斷提高安全意識(shí)和安全知識(shí)才是王道。
HIPS向“智能化”發(fā)展,只能在“HIPS自身架構(gòu)”和“預(yù)制規(guī)則”上下功夫,其他的留給人腦吧。