APT攻防的溯源與反溯源技術(shù)
作者|高尉峰,單位:中移雄安產(chǎn)業(yè)研究院智慧城市平臺(tái)部
?Labs 導(dǎo)讀
近年來,高級(jí)可持續(xù)性威脅(APT)大幅增加,多個(gè)國家都受到了來自APT組織的攻擊,網(wǎng)絡(luò)戰(zhàn)也愈演愈烈,對(duì)企業(yè)安全和國家安全造成了重大威脅。APT溯源與反溯源技術(shù)對(duì)于APT攻擊的防御有著舉足輕重的作用,攻擊事件發(fā)生后,溯源是應(yīng)急響應(yīng)過程中的核心環(huán)節(jié),對(duì)攻擊行為能否準(zhǔn)確溯源,直接決定應(yīng)急響應(yīng)的安全加固措施是否有效。知己知彼才能百戰(zhàn)不殆,所以本文針對(duì)APT攻擊的特征、溯源和反溯源技術(shù)做一個(gè)全面的講解。
1什么是APT攻擊?
高級(jí)可持續(xù)性威脅(APT),是指隱匿而持久的主機(jī)入侵過程,通常出于商業(yè)或政治動(dòng)機(jī),由某些人員精心策劃,然后針對(duì)特定組織或國家進(jìn)行攻擊,該攻擊的主要特征是能夠持續(xù)監(jiān)控靶機(jī),并從靶機(jī)獲取數(shù)據(jù)。
1.1 APT攻擊與傳統(tǒng)攻擊的區(qū)別
- 組織性:APT攻擊通常是由一個(gè)組織發(fā)起的攻擊,可能具有軍事或政治目的,會(huì)與國家關(guān)聯(lián)在一起,背后往往有雄厚的資金支持;而傳統(tǒng)的攻擊通常是由黑客個(gè)人發(fā)起,沒有嚴(yán)密的組織。
- 目標(biāo)針對(duì)性:APT組織不會(huì)盲目攻擊,通常會(huì)針對(duì)性的選擇一個(gè)攻擊目標(biāo),該目標(biāo)往往具有軍事、政治、經(jīng)濟(jì)上的較高價(jià)值。而傳統(tǒng)的攻擊通常采用“大水漫灌”式的無差別攻擊手段。
- 攻擊戰(zhàn)術(shù):APT攻擊的樣本變種多且升級(jí)頻繁,同時(shí)利用零日漏洞進(jìn)行樣本的投遞,使得基于特征匹配的傳統(tǒng)防御技術(shù)很難有效檢測(cè)出攻擊;而傳統(tǒng)的攻擊大多使用流量泛洪或者已知漏洞進(jìn)行攻擊。
- 隱蔽性:APT攻擊使用加密隧道進(jìn)行通信,具有較強(qiáng)的隱蔽能力,基于流量檢測(cè)的防御很難發(fā)揮作用;而傳統(tǒng)的攻擊未使用加密隧道進(jìn)行敏感信息竊取。
- 持續(xù)時(shí)間:APT攻擊往往會(huì)持續(xù)數(shù)年的時(shí)間。而傳統(tǒng)的攻擊持續(xù)時(shí)間較短,漏洞利用成功后不會(huì)給靶機(jī)留下后門程序。
下圖表示APT攻擊常用的戰(zhàn)術(shù):
1.2 APT攻擊步驟
- 情報(bào)收集:攻擊者使用魚叉式釣魚攻擊、google搜索引擎、掃描工具、社會(huì)工程學(xué)手段尋找靶機(jī)的信息,該信息包含域名,子域名,ip地址,已知漏洞等等。
- 資源開發(fā):攻擊者會(huì)購買、租賃可使用的基礎(chǔ)設(shè)施。包括物理或云服務(wù)器、域名和第三方Web服務(wù)、僵尸網(wǎng)絡(luò)等等。
- 初始訪問:攻擊者利用0 day漏洞、N day漏洞攻擊軟件供應(yīng)鏈,達(dá)到利用靶機(jī)漏洞的目標(biāo)。
- C2通信:給靶機(jī)投遞樣本,從而使得C2服務(wù)器和靶機(jī)建立通信加密隧道。
- 橫向移動(dòng):攻擊者通過C2服務(wù)器對(duì)內(nèi)網(wǎng)中的主機(jī)進(jìn)行橫向滲透,最終拿下內(nèi)網(wǎng)主機(jī)的控制權(quán),同時(shí)給靶機(jī)留下后門程序,便于持續(xù)攻擊。
- 資產(chǎn)發(fā)現(xiàn):使用掃描工具掃描內(nèi)網(wǎng)主機(jī)的指紋信息,比如ip,開放端口,未修復(fù)的已知漏洞。
- 數(shù)據(jù)泄露:攻擊者會(huì)將靶機(jī)敏感信息壓縮、加密,然后通過加密隧道竊取。
下圖展示了橫向運(yùn)動(dòng)的過程,V代表C2服務(wù)器,紅線左側(cè)代表公網(wǎng),紅線右側(cè)代表內(nèi)網(wǎng),內(nèi)網(wǎng)中的四臺(tái)主機(jī)只有192.73.1.19可以與公網(wǎng)通信,其他三臺(tái)主機(jī)均與公網(wǎng)隔離,但是C2服務(wù)器通過打通內(nèi)網(wǎng)路由的方式成功控制了內(nèi)網(wǎng)的四臺(tái)主機(jī)。
2什么是APT攻擊溯源?
通過攻擊溯源,我們可以確定源IP或媒介IP,及其對(duì)應(yīng)的攻擊路徑,從而制定更有針對(duì)性的防護(hù)或?qū)Σ撸瑢?shí)現(xiàn)主動(dòng)防御。安全業(yè)界常見的溯源方式是基于防火墻和流量檢測(cè)技術(shù),但是這種溯源方式存在誤報(bào)率高,單點(diǎn)安全告警無法聯(lián)動(dòng),無法還原完整攻擊鏈的問題,但是APT攻擊溯源能夠解決上述問題。APT攻擊溯源主要分析以下三個(gè)問題:
- Why:黑客為什么能攻擊進(jìn)來,黑客采用了哪些攻擊手段,哪些黑客工具。
- Who:確定攻擊者的身份、個(gè)人信息以及網(wǎng)絡(luò)指紋。
- Where:發(fā)現(xiàn)安全事件的軌跡,找出攻擊者的歷史軌跡。
3如何實(shí)現(xiàn)APT攻擊的溯源?
APT溯源的過程類似警方破案的過程,溯源需要證據(jù),不能靠猜測(cè)。常見的溯源技術(shù)如下:
3.1 對(duì)APT組織畫像
3.2 通過IOC(特征值)進(jìn)行攻擊溯源
- 0 day,N day漏洞,web漏洞,主機(jī)漏洞,容器漏洞等等;
- 異常流量;
- 樣本(病毒,蠕蟲,木馬等等);
- 攻擊ip地址,受害ip地址;
- 高危端口;
- 惡意進(jìn)程及其調(diào)用鏈;
- 主機(jī)日志;
- DNS解析歷史;
3.3 通過沙箱進(jìn)行攻擊溯源
為解決特征匹配對(duì)新型攻擊的滯后性而產(chǎn)生的解決方案。其原理是將實(shí)時(shí)流量先引入沙箱,通過對(duì)沙箱的文件系統(tǒng)、進(jìn)程、注冊(cè)表、網(wǎng)絡(luò)行為實(shí)施監(jiān)控,判斷流量中是否包含惡意代碼。同傳統(tǒng)的特征匹配技術(shù)相比,沙箱方案對(duì)未知惡意代碼具有較好的檢測(cè)能力,但其難點(diǎn)在于模擬的客戶端類型是否全面,如果缺乏合適的運(yùn)行環(huán)境,會(huì)導(dǎo)致流量中的惡意代碼在檢測(cè)環(huán)境中無法觸發(fā),造成漏報(bào)。
3.4 通過異常行為進(jìn)行攻擊溯源
其原理是通過對(duì)網(wǎng)絡(luò)中的正常行為模式建模。核心技術(shù)包括元數(shù)據(jù)提取、正常行為建模和異常檢測(cè)算法。該方案同樣能夠檢測(cè)未知攻擊。
3.5 通過全流量審計(jì)進(jìn)行攻擊溯源
其原理是對(duì)鏈路中的流量進(jìn)行深層次的協(xié)議解析和應(yīng)用還原,識(shí)別其中是否包含攻擊行為。檢測(cè)到可疑攻擊行為時(shí),在全流量存儲(chǔ)的條件下,回溯分析相關(guān)流量,例如可將包含的http訪問、下載的文件、及時(shí)通信信息進(jìn)行還原,協(xié)助確認(rèn)攻擊的完整過程。這種方案具備強(qiáng)大的事后溯源能力和實(shí)時(shí)檢測(cè)能力,是將安全人員的分析能力、計(jì)算機(jī)強(qiáng)大的存儲(chǔ)能力和運(yùn)算能力相結(jié)合的解決方案。
3.6 樣本溯源
樣本的靜態(tài)特征有語言、pdb、字符串等,pdb文件主要存儲(chǔ)了VS調(diào)試程序時(shí)所需要的基本信息,主要包括源文件名、變量名、函數(shù)名、FPO(幀指針)、對(duì)應(yīng)的行號(hào)等等。可以通過樣本的聚類和同源分析,ip、domain、url、md5等的關(guān)聯(lián)實(shí)現(xiàn)溯源。
3.7 溯源案例分析
WannaCry勒索攻擊是2017年5月由WannaCry蠕蟲發(fā)起的全球網(wǎng)絡(luò)攻擊,該攻擊通過加密數(shù)據(jù)并要求以比特幣加密貨幣支付贖金。
通過樣本溯源和流量分析就能準(zhǔn)確定位WannaCry勒索攻擊,分析方法如下:
- 對(duì)比WannaCry1.0和WannaCry2.0的樣本信息,可以確定樣本歸屬于同一攻擊組織。
- 如果內(nèi)網(wǎng)主機(jī)的445端口建立了大量連接,說明WannaCry蠕蟲正在橫向移動(dòng),從而證明內(nèi)網(wǎng)已經(jīng)被WannaCry蠕蟲感染。
4如何實(shí)現(xiàn)APT攻擊的反溯源?
“道高一尺,魔高一丈”,既然有溯源技術(shù),那就肯定有反溯源技術(shù)。對(duì)于APT組織來說,通信信道的隱蔽性直接決定了是否能夠持續(xù)攻擊,如果缺少隱蔽性,就需要不斷開發(fā)樣本,因此會(huì)提高攻擊成本,下面介紹一種通過端口映射隱藏攻擊ip的方法。
- 通過隧道將C2服務(wù)器回連端口映射到其他公網(wǎng)地址,從而隱藏C2服務(wù)器真實(shí)ip,隧道最好采用https,可以加強(qiáng)通信的隱蔽性。
- 通過CS軟件控制內(nèi)網(wǎng)靶機(jī),下圖表示靶機(jī)已經(jīng)被控制。
- 在靶機(jī)上通過網(wǎng)絡(luò)連接查看攻擊ip,發(fā)現(xiàn)C2服務(wù)器的ip已經(jīng)被隱藏,靶機(jī)顯示的目標(biāo)ip是偽造的公網(wǎng)ip。
5如何防御APT攻擊?
目前安全業(yè)界比較流行的防御APT思路如下:
- 采用機(jī)器學(xué)習(xí)和大數(shù)據(jù)分析技術(shù)來發(fā)現(xiàn)APT行為,典型的公司是FireEye;該方法的優(yōu)勢(shì)是能夠快速分析出同源樣本以及樣本的歸屬組織,劣勢(shì)是需要海量的樣本數(shù)據(jù)進(jìn)行模型訓(xùn)練,很多企業(yè)沒有海量的樣本數(shù)據(jù)來訓(xùn)練模型。
- 采用數(shù)據(jù)加密和數(shù)據(jù)防泄密(DLP)來防止敏感數(shù)據(jù)外泄,典型的公司是賽門鐵克;該方法的優(yōu)勢(shì)是可以最大程度的保證數(shù)據(jù)安全,而且容易操作,劣勢(shì)是敏感數(shù)據(jù)分類分級(jí)的標(biāo)準(zhǔn)不統(tǒng)一,導(dǎo)致防泄密策略不明確。
- 采用身份認(rèn)證和用戶權(quán)限管理技術(shù),嚴(yán)格管控內(nèi)網(wǎng)對(duì)核心數(shù)據(jù)和業(yè)務(wù)的訪問,典型的公司是RSA。該方法的優(yōu)勢(shì)是可以降低樣本橫向移動(dòng)的可能性,劣勢(shì)是網(wǎng)絡(luò)的微隔離可能影響業(yè)務(wù)訪問速度。
- 采用應(yīng)用程序白名單和域白名單,通過白名單控制網(wǎng)絡(luò)訪問的域以及用戶安裝的應(yīng)用程序,該方法對(duì)防御樣本在靶機(jī)上的執(zhí)行非常有效。該方法的優(yōu)勢(shì)是可以有效防止樣本執(zhí)行,劣勢(shì)是可能導(dǎo)致正常的程序無法運(yùn)行。