反病毒軟件江湖:排斥與兼容的戰(zhàn)爭(zhēng)(2) |
發(fā)布時(shí)間: 2012/7/4 13:47:27 |
防火墻的潛在兼容性問(wèn)題
目前反病毒產(chǎn)品普遍使用單機(jī)防火墻技術(shù)來(lái)過(guò)濾出入數(shù)據(jù),應(yīng)對(duì)來(lái)自網(wǎng)絡(luò)的威脅。
目前防火墻的實(shí)現(xiàn)方式包括:TDI 、NDIS 、IP Filter 、Windows Filtering Platform 、Winsock Kernel
在以Windows XP為主的時(shí)期,多數(shù)防火墻選擇前三者中的某一種或者某兩種結(jié)合的方式。在實(shí)際應(yīng)用的過(guò)程中,同樣存在多個(gè)共存無(wú)法同時(shí)生效的現(xiàn)象。其原因有:
1.過(guò)濾時(shí)出于效率考慮,直接將允許通過(guò)的包交給下層驅(qū)動(dòng)處理,而不是后續(xù)的防火墻驅(qū)動(dòng)。
2.由于NDIS和IP Filter比TDI更接近底層,前兩者實(shí)現(xiàn)的防火墻會(huì)對(duì)TDI層造成影響。
3.XP自帶的IP Filter存在誰(shuí)先設(shè)置誰(shuí)先生效的問(wèn)題。安天盾防火墻與金山防火墻某版本同時(shí)使用該方式,如果同時(shí)安裝在用戶的機(jī)器中,則出現(xiàn)誰(shuí)先啟動(dòng)誰(shuí)先生效的現(xiàn)象。
WFP和Winsock Kernel是自Vista之后引入的方式,兼容性相對(duì)而言更好,只要實(shí)現(xiàn)得當(dāng),一般沒(méi)有兼容性的問(wèn)題。特別是WFP針對(duì)防火墻和IDS類軟件做了設(shè)計(jì)上的考慮,兼容性問(wèn)題得到了較好的解決。這也說(shuō)明,操作系統(tǒng)提供相對(duì)規(guī)范的接口是解決安全產(chǎn)品沖突的較好方式。
瀏覽器防護(hù)的潛在兼容性問(wèn)題
瀏覽器防護(hù)多使用ring3 API HOOK。下面結(jié)合網(wǎng)頁(yè)防護(hù)類的主流產(chǎn)品分析其潛在的兼容性問(wèn)題。
使用ring3 api hook實(shí)現(xiàn)的瀏覽器保護(hù),不可避免的要遇到和文件監(jiān)控一樣的問(wèn)題。在實(shí)際對(duì)抗中,網(wǎng)馬不斷發(fā)展升級(jí),已經(jīng)開(kāi)始將瀏覽器中的ring3 hook摘除,為了對(duì)抗此類威脅,主流軟件多會(huì)采取不斷檢測(cè)自己的hook是否存在,發(fā)現(xiàn)不存在則重新將函數(shù)掛鉤。造成多款軟件爭(zhēng)搶一個(gè)API的現(xiàn)象,導(dǎo)致瀏覽器無(wú)響應(yīng)或者響應(yīng)緩慢。特別是與CreateProcesss相關(guān)的。
在瀏覽器防護(hù)軟件進(jìn)行行為分析的時(shí)候,由于其他瀏覽器防護(hù)軟件的參與會(huì)對(duì)瀏覽器的行為造成一定影響,這些影響可能是對(duì)堆棧的影響(由于多了一層Hook,實(shí)際調(diào)用的堆?赡軙(huì)增加一層)。以某瀏覽器防護(hù)軟件為例,其堆棧檢測(cè)只會(huì)向上追溯5層,如果同時(shí)共存3個(gè)軟件,那么其想要檢測(cè)的那層調(diào)用,則會(huì)由原來(lái)的第5層變?yōu)榈?層,原來(lái)的檢測(cè)方式就失效了。
例如:360和金山網(wǎng)盾共存時(shí),網(wǎng)馬在創(chuàng)建進(jìn)程時(shí)360進(jìn)行檢測(cè)。如果放行則會(huì)通過(guò)360的函數(shù)調(diào)用系統(tǒng)API,進(jìn)而再次調(diào)用金山的進(jìn)程創(chuàng)建檢測(cè),此時(shí)金山追溯堆棧會(huì)發(fā)現(xiàn)是360的模塊調(diào)用,而不是JS腳本解釋引擎調(diào)用,予以放行。
即使不考慮對(duì)堆棧的影響,由于不同瀏覽器防火軟件都進(jìn)行了攔截,對(duì)瀏覽器的行為也就產(chǎn)生了影響,造成相互的行為分析干擾,無(wú)法正確分析惡意行為,進(jìn)而出現(xiàn)漏報(bào)或者誤報(bào)的現(xiàn)象。
例如:金山網(wǎng)盾在腳本解釋層根據(jù)特征檢出了惡意腳本,構(gòu)筑在其上層的其他防護(hù)的行為分析就無(wú)法發(fā)現(xiàn)該惡意腳本的行為。
再例如:360網(wǎng)盾會(huì)不斷檢測(cè)監(jiān)控點(diǎn)是否存在,而檢測(cè)的機(jī)制是基于二進(jìn)制比較的,如果發(fā)現(xiàn)其他軟件進(jìn)行了HOOK,則用自己的進(jìn)行替換,導(dǎo)致其他軟件失效。 本文出自:億恩科技【prubsntakaful.com】 服務(wù)器租用/服務(wù)器托管中國(guó)五強(qiáng)!虛擬主機(jī)域名注冊(cè)頂級(jí)提供商!15年品質(zhì)保障!--億恩科技[ENKJ.COM] |