2008-10-17

淺談:為何我們需要反滲透能力(AntiLeak)?

這是繼續前兩天關於ESS的AntiLeak測試的話題
什麼是反滲透?為什麼我們需要反滲透功能?

反滲透是最近三年才開始流行的一種概念
它存在的目的為彌補傳統網路防火牆的不足!


傳統防火牆最典型的就是像Windows XP SP2中所內建的
它提供了基本的網路防禦,對連入(inbound)的需求進行過濾,並阻擋不良的連入(outbound)需求
但是這種典型防火牆它對於連外的連線需求並沒有特別去限制它
意思就是我們使用瀏覽器上網這類的防火牆
我們不需要為它特別去設置規則(Rule)或策略(policy)
就可以隨意存取網路資源,所以一旦我們中了木馬或者是蠕蟲
傳統的典型防火牆是無法防範的!

再好一點的防火牆它可以針對連外做限制
例如限制IE不能存取網路,或不能存取特定IP位置或連結阜(Port)
這類型的防火牆它可以當發現連外需求的時候,會提示目標位置的IP以及連線阜等資訊
我們可以利用這些資訊來判斷這是否為必要或不必要的連線
加上適當的規則或是策略,我們可以限制瀏覽器無法瀏覽某些IP位址的網站
但不是被限制的網站卻可以隨意瀏覽,規則與測率經過適當的限制
我們可以把explorer.exe或者svchost.exe病毒常利用的兩個住要系統元件做限制
這樣子如果中了會利用這兩個元件連外的病毒,我們可以免於帳密落入惡人之手
但是如果只有這樣子其實還是不太夠的!

因為病毒的連外不但可以靠自己本身,還可以藉由其它系統程式對外連出!
我們把病毒對外連出的這個過程稱做"滲透"
大部分的傳統防火牆,只會告訴你是什麼程式要連出以及要連到哪裡的資訊
但是並不會讓你知道這個連線是由用戶本身發起還是病毒透過調用發起的!

為了讓用戶知道程式彼此之間的調用或行為,現在新一代的防火牆都包含了
HIPS模組利用SSDT Hook系統上的API,來監測額外的軟體行為
我們的防火牆就可以為我們提供更詳細的程式行為,以分辨是否為不良的連線!


下面我用Matousec的測試程式模擬病毒經過調用後外連的情形
在ESS的提示裡我們只能看到explorer.exe有連外需求




從ESS的提示中我們不知道病毒是誰,或是它透過了什麼樣的行為導致explorer.exe需要連外?
再來我們看Comodo Firewall V3它基於HIPS模組的提示


CFP3發現了直接操作螢幕的行為


偵測到試圖修改已受保護的註冊表


偵測到試圖修改用戶操作介面


經過前面的修改後explorer.exe莫名其妙的要連外了!



經過以上的提示,我們可以經楚的知道explorer.exe的連外是由breakout2.exe這的程式發起
經過一連串的行為,導致explorer.exe出現連外需求
詳細的程式行為提示幫助我們能夠輕鬆判斷該程式是否屬帶有惡意行為!
以上就是反滲透過程的一個簡單示範

1 則留言: