压在透明的玻璃上c-国产精品国产一级A片精品免费-国产精品视频网-成人黄网站18秘 免费看|www.tcsft.com

NSC2015冷風:特種木馬攻擊與溯源

郭勇生:大家好!我是天融信阿爾法實驗室的”冷風”。這次我給大家帶來的議題是特種木馬的攻擊,以及特種木馬的溯源。主要介紹兩個方面:

1、特種木馬的特性。

2、攻擊溯源的一些思路,溯源主要是兩個簡單的案例。

我們怎么樣定義特種木馬,電控網絡上特別多,比如黑鴿子、黑洞、Gost(音),大家也用過,一旦被公開大家都在用的遠控那么它不能稱之為特種木馬了,我認為特種木馬是針對特定目的開發定制的繞過沙箱的軟件木馬,不光是遠控,還有其他的軟件也是這樣的。作為后門或惡意程序有兩大點是最主要的,它進入木馬網絡后怎么樣穿透網絡,能連接出來,這一點是很重要的。第二是它和殺毒軟件的對抗,現在每臺電腦都有殺毒軟件,如何避過殺毒軟件查殺是要點所在。

特種木馬對網絡的穿透性。分為五個方面:

1、代理的穿透性,早期的遠控是直連的,TCP、UDP,直連就可以控制上線,中間經過大型網絡的上線,比如微軟ISA的代理,上網之前回彈出一個框讓你輸入用戶名、密碼,驗證成功才能上網,代理的程序大部分遠控無法做到,它的方法,完全模仿用戶的操作,比如用戶用IE瀏覽器,用HTTP協議出來,它模仿HTTP在網關驗證,然后再連接出來。HTTP實驗的時候通過拆解密碼或用其他的方式,比如用戶上網時彈出框來讓你輸入密碼,它也彈出讓你輸入密碼,它這樣偽裝獲得你的帳號密碼,再進行穿透。

2、繞過流量監控和惡意地址檢測。管理員往往看到流量監控和惡意地址,比如一般訪問的是國內網站,突然有一天連接從來沒有連接過的地址,這時候網絡管理員會有異察。惡意的攻擊進入到網絡內部,重要的還是你的數據,它會把你的數據脫走,脫數據的時候這個數據有可能大也可能小,大也可能是百G甚至上T的,這樣就會產生很大的流量。惡意軟件它怎么避開這個檢測呢?如果它使用公有的網絡環境,比如JoBox或者Google的云,或者網盤數據,最大程度上迷惑管理員和運維,讓他們看不清這個數據被人惡意脫走,還是用戶自己上傳的云數據。

3、采用多種協議穿透。有時候在滲透過程中有很多情況,你可以進去,但是上不了網,也Ping不通,通過DNS可以解析,這種情況有時候可以束手無策,有時候可以通過DNS隧道,通過DNS隧道進行數據傳輸。而惡意程序和特種遠程控制軟件會在內部集成幾種協議,比如同時支持TMP、DNS、ICMP等等,會檢測那些會被網絡協議識別出來,會自適應網絡協議進行連接,它做到只要用戶數據能出來它就出來,穿透性就有很大的提高。

4、協議加密繞過IPS/IDS防火墻。這種防火墻是把很多通信特征,把病毒通信特征庫,采集大量通信特征加進去,你的程序通訊時一般會被通信特征攔下來。而惡意的攻擊者會采用一種新的方式,在每次生成時,配置惡意程序時會采用不同的加密方式或者不同的密鑰,這樣兩邊進行匹配,每次生成的通信特征不一樣,這樣繞過IPS/IDS。

5、插入白名單程序繞單機防火墻。這些惡意程序繞過用戶電腦,用戶電腦裝著單機防火墻,比如科莫多(音),單機防火墻彈性是非常大的,如果高級用戶對每一個進程,專家記的都會了解,而大多數用戶是使用默認狀態,因為他不希望自己在上網時有各種提示彈出來,所以惡意程序會采用把自己注入到一些白名單程序里,通過它來通訊,一是迷惑用戶,二是對反病毒軟件是有效果的,至于怎么樣把自己注入白名單程序里,殺毒軟件會攔截,這個攔截方法我們后面再分析。

一些惡意程序與殺毒軟件的對抗。

1、對抗虛擬機檢測。

2、對抗啟發式檢測。

3、目前普遍殺毒軟件的軟肋,比較容易被攻破的地方。

對抗虛擬機環境檢測,比如搜索虛擬環境中的進程,文件系統、注冊表,修改文件,當它發生這樣的行動就政策它是惡意的,你可以自測所運行的環境不是用戶真實的環境。既然它是虛擬機就不可能完全模擬到用戶的操作,假設這個程序你執行完之后等著用戶點擊鼠標交寫和真實的鍵盤交寫。真實的情況下點擊之后可以進行惡意操作,而虛擬機有可能模擬不到這種操作,他可能認為你這個程序沒有惡意行為就放行、繞過,針對這種檢測,主要是上面四條:

1、搜索虛擬環境中的進程、文件系統、注冊表。

2、搜索虛擬環境中的內存。

3、搜索虛擬環境中的特定虛擬硬件。

4、搜索虛擬環境中特定的處理器指令和功能。

對抗啟發式檢測。

啟發式軟件,分析惡意程序和正常程序,惡意程序和正常程序會有差別,惡意程序會有操作界面,會有文件大小,惡意程序只有10K、20K,會有網絡鏈接,會修改系統目錄等等,它是根據每一條特性設定一個閾值,綜合判斷程序的閾值,比如達到60分就說明這個程序很可能是有害的,真正的用戶應用程序不可能具有專門的特性。通過這個思路,你繞過他們時可以程序盡量少調用一些API,使用動態的方式加載,做成Shellcode方式,或者找個比較大的開源程序,這個開源程序如果用啟發式進行查的話,它的閾值就會比較低,把你的惡意程序插入到其中的某一部分,這樣就起到了很大的迷惑作用。

關于目前大多數殺毒軟件軟肋問題。現在殺毒軟件和前些年已經有了本質上的不一樣,原來通過修改特征碼,惡意程序通過修改特征碼,幾個跳轉就可以做到免殺,現在這樣基本是行不通了,不管虛擬機、啟發式、云還是沙箱都非常嚴格。它們的軟肋在于白名單機制,因為殺毒軟件它必有的一種機制,必然要有一些機制,要有白名單,要有一些程序放行的,這一塊成為最大的問題。

360有個比較嚴格的機制”非白即黑”,意思是我不能判斷你這個程序是無害的程序那么我就認為你是有害的程序,這是非常極端的機制做法。如果要這樣的做法必然要排除第三方軟件和共享軟件。問題就在于,白名單程序你怎么樣能確定它確確實實是白名單程序呢?這個東西你肯定也要有病毒分析師分析這個程序,它究竟是不是白名單,有沒有危害,這個工作量是相當巨大的。360病毒分析師的工作量基本13分鐘要判斷一個文件是白是黑或者是灰。就13分鐘來判斷,如果是一個有針對性的攻擊者自己去寫一套軟件,找一套開源的程序做一定的修改,加入一定的惡意程序,提交到這個組,你去分析時很難確保我肯定能給你分析出這個東西有惡意的情況。不只是他,所有的都有這樣的問題。

最早殺毒軟件有個問題,幫用戶優化啟動項,讓機器跑得更快,有時候你可能會發現,優化完以后你的網銀用不了了,炒股軟件用不了,總之很多和錢相關的東西就出問題了,而這個時候用戶就會面臨一個選擇,我是用你這個殺毒軟件還是用我這個網銀呢?到后來殺毒軟件公司他們也可能發現這個問題,凡是和網銀類、插件類的默認就不會顯示在你的啟動項域化里,這時候就給惡意攻擊者一些機會,他們可以分析網銀插件,找一些問題可以利用的,比如DLL劫持等問題,通過它啟動一個惡意程序,這樣即便殺毒軟件認為它有危害也是給它放行的權值會比較高。也不排除某些人購買數字簽名加到這個軟件上達到繞過的目的,數字的簽名成本很低,也就幾千元,而且這方面的驗證也不是特別嚴格。

特種木馬的溯源。

1、溯源之難。

真正做過溯源的人,如果你沒有去做過可能有一些思路,真正要去做的話會發現特別難,因為網絡上的隱藏成本是非常低的,如果他稍稍有些反偵查意識,做一些保護手段你很難去追查。現在國外的VPN你可以輕輕松松買到辦理,如果去溯源,查到一個惡意IP在境外,得到它了想進一步走怎么辦?你境外協調這個事情是協調不了了的,國家和國家之間這個機制是不完善的。當然,在國內,比如你自己入侵了一個國內的站,掛了一個國內的VPN,這樣想抓你是分分鐘的事情,沒這么困難的。因為你用VPN服務器,它直接用機房或者相應VPN提供商就能查到你各種鏈接。

在溯源時要考慮一個問題,我們的對手是誰,這是蘭德報告里一小段,他把黑客分為頂級黑客、一流黑客、二流黑客,他說頂級黑客的數目可能不會太多,大多數黑客會把局勢搞亂,可能行動會驚動敵人,并把目標暴露給目標集合。對二流黑客來說,他們最合適的工作是繪制目標網絡拓撲和翻查對方用戶文件。我們遇到頂級黑客不是特別多,關于頂級黑客也是個傳說。即便是二流黑客,你對他的溯源也不是那么容易。

2、如何發現特種木馬。

如果沒有樣本怎么得到特種木馬呢?原來我配合一些特定的目標去一些受害單位做單機檢查,這基本上是大海撈針,因為真正的攻擊肯定在整體數量上不是那么多,而且針對性特別強,你做個網絡,到這家單位檢查,到那家單位檢查,能找到的幾率是非常小的。目前來看,最好的方法還是大數據的方式,剛才方興前面說他們不再做盒子了,而是使用大數據,其實趨勢就是這樣的。比如國內大型殺毒軟件部署的量特別大,他們采集樣本肯定沒有問題,只有在這個基礎上再去做大數據分析,找特種攻擊相對來說還是比較有勝算的。比如前段時間報出來的海蓮花,大數據里要有大數據,而是對大數據要有甄別能力,這時候你的思維要多維度考慮這個事情,你針對特種木馬,它的特性就是沒有特性,凡是有類似行為,但非常隱蔽,只部署在某一些部門里,而且連接也不頻繁,數據量也不太大,把這些揪出來進行分析的話可能成功率就非常高,如果排序的話,把這些惡意程序行為做倒序排,研究量不多,數量也不大,研究點也不多,類似這樣的你可以作為重點觀察對象。

3、基于調試信息的溯源。

往上有篇文章分析木馬作者分析得特別細,都能查到這個人叫什么,在哪里工作,哪里畢業的,工作是什么?他是怎么做到的呢?其實他就是拿到了這個病毒樣本,拿到病毒樣本之后去做二進制分析發信編譯其留下的調試路徑,而這個調試路徑包含了它的用戶名,也就是說它把原代碼編譯時放到了桌面上,編譯以后他桌面上的用戶名被編譯到了里面。就這么一點就能把它徹底暴露出來。這個問題看似非常簡單,如果不暴露出這種事件或問題時有誰能知道編譯器能進入你的路徑,發布的時候在里面呢?大家是不是都喜歡把自己的東西放到桌面上,你的用戶名又是什么呢?是不是和你自身的名字和單位放在一起呢?相信80%都是這樣的。

4、基于IP的一個溯源案例。

還有一次拿到惡意軟件的樣本,它回鏈一個地址,處于非激活狀態,IP已經連不通了,你通過二進制分析不出來東西時怎么辦?它通過反連的IP地質到DomainTools去發行,它的曾經對域名解析到了一個IP地址,有了這個域名之后你可以對域名進行溯源,有了注冊人信息,有了注冊人信息你可以再一步步走,這依賴于DomainTools國外一個服務商,它號稱12年的注冊記錄,包括域名的所有權、域名注冊記錄、托管數據、截圖和其他DNS記錄等信息。你覺得這個域名把它解析到了IP地址,之后解析到別處,認為是安全的,其實不是,你做的過程很可能被這樣的服務商給記錄下來。

5、基于蜜罐的分析。

如果發現了目標攻擊,這個攻擊正在進行的話,你可以通過設一些蜜罐獲取對方的真實地址,方法其實可以很簡單,在各種文檔中插入一些網絡的資源如圖片,把IP地址暴露出來,難的不是設蜜罐,難的是怎么樣讓他相信你,這是很難的。

6、一層VPN的溯源。

下面有討論,如果我剝了一層國外的VPN到國外的網站你能不能查到是我干的呢?左邊是攻擊者,右邊是被攻擊者,中間共同穿越了一個GFW防火墻,剝了一個境外的VPN再攻擊被攻擊者。被攻擊者網站上的日志是可以看到境外VPN這個地址的,假設這個網站的日志你可以看到,而攻擊者必然是在這個時刻的前后連接過境外的VPN,這也是有鏈接的,即便它是隧道,它加密了,但加密之前最初驗證時肯定是有驗證的,這時候你通過了GFW,它肯定能記錄下來,是沒有疑問的。這么一個理論就形成了,境外VPN攻擊了一個被攻擊的網站,而同時你又連了這個VPN,只要去防火墻上查一查,在網站被攻擊時,國內哪個IP連接了國外的VPN就可以知道是誰了,思路是這樣的也沒什么問題。

現在關鍵是在這里,入口這個地方會不會做這個記錄呢?有人說能,有人說不能。我覺得思路上來講是能的,但具體實現上是很難的,因為網絡的出口流量特別大,如果做這個記錄你得需要多大的存儲空間,事實上是很難的,即便你剝了一層VPN,會追溯到你的可能性也不會很大,當然剝了兩層和你這個思路就更行不通了。

7、基于日志的分析。

它難就難在大量的數據分析,大量設備日志聯動起來,形成一條攻擊鏈然后找到對方。成功的也有,比如多,有時候網站上大量日志都是境外IP進行掃描,結果突然斷了一下,又境內的IP,這時候VPN斷了,掃描功能還在繼續,這是存在的。

我的介紹就這么多。謝謝!

上一篇:NSC2015中國網絡安全大會盛大召開

下一篇:NSC2015馬坤:基于眾籌插件模式的分布式安全掃描平臺