惡意軟件加密通信概要分析
惡意加密流量是當(dāng)前流量安全檢測(cè)的痛點(diǎn)和難點(diǎn)。在未解密的情況下如何檢測(cè)惡意加密流量,機(jī)器學(xué)習(xí)可提供頗為有效的解決方案。傳統(tǒng)機(jī)器學(xué)習(xí)依賴于訓(xùn)練數(shù)據(jù)集和特征工程,而搜集的各類惡意加密流量種類繁多,且可能含有“雜質(zhì)”,如果對(duì)這些數(shù)據(jù)不加區(qū)分,直接進(jìn)行訓(xùn)練,將會(huì)影響模型檢測(cè)的準(zhǔn)確率和誤報(bào)率。
我們把些惡意加密流量分為三類:惡意軟件使用加密通信、加密通道中的行為、惡意或非法加密應(yīng)用。本文主要針對(duì)“惡意軟件使用加密通信”進(jìn)行分析,接下來將從三個(gè)方面進(jìn)行闡述:
- 惡意軟件使用加密通信要素統(tǒng)計(jì);
- 使用加密通信的惡意軟件分類;
- 惡意軟件加密通信方式分析。
一、惡意軟件使用加密通信要素統(tǒng)計(jì)
為從宏觀上總結(jié)惡意軟件加密通信規(guī)律,我們對(duì)加密流量(十萬(wàn)個(gè)有效的惡意樣本)的眾多要素進(jìn)行了統(tǒng)計(jì)分析。本文對(duì)其中四個(gè)要素:通信端口、SSL協(xié)議版本、客戶端支持的加密套件個(gè)數(shù)和提供的擴(kuò)展個(gè)數(shù)進(jìn)行統(tǒng)計(jì)分析,從統(tǒng)計(jì)結(jié)果來看,惡意軟件加密通信的要素存在一定的規(guī)律:
1. 通信端口
惡意軟件加密通信使用的端口較為廣泛,不僅包括TCP443、TCP465等標(biāo)準(zhǔn)端口,還包括部分非標(biāo)準(zhǔn)端口。整體來看采用TCP443端口最多,占85%以上;其他三個(gè)使用比較多的端口為TCP449、TCP9001、TCP465,分別占5.48%、3.71%、1.96%。
圖1 惡意加密流量端口分布
2. TLS/SSL協(xié)議版本
在惡意軟件的加密流量中,使用TLSv1.2協(xié)議通信的占53.56%。早期的幾類TLS/SSL版本仍在廣泛使用,如
TLSV1.2占56.24%,TLSV1.0占36.26%,SSLV3占6.97%,TLSv1.1和SSLV2占的比重極小。
圖2 惡意加密流量TLS協(xié)議分布
3. 客戶端支持的加密套件個(gè)數(shù)
從統(tǒng)計(jì)結(jié)果看到,有將近35%的惡意軟件支持12個(gè)加密套件,將近25%的惡意軟件支持21個(gè),約10%的惡意軟件支持36個(gè)。
圖3 客戶端支持的加密套件個(gè)數(shù)統(tǒng)計(jì)
4. 客戶端提供的擴(kuò)展個(gè)數(shù)
通過統(tǒng)計(jì)發(fā)現(xiàn),超過98%的惡意軟件客戶端提供的TLS擴(kuò)展個(gè)數(shù)小于7;其中占比較大的擴(kuò)展個(gè)數(shù)是5、3、0,分別占38%、32%、11%。
圖4 惡意軟件客戶端提供的擴(kuò)展個(gè)數(shù)
二、使用加密通信的惡意軟件分類
我們監(jiān)測(cè)發(fā)現(xiàn),使用加密通信的惡意軟件家族超過200種,所有惡意軟件中使用加密通信占比超過40%,平均每天新增使用加密通信的惡意軟件數(shù)量超過1000個(gè),使用加密通信的惡意軟件幾乎覆蓋了所有常見類型,如:特洛伊木馬、勒索軟件、感染式、蠕蟲病毒、下載器等,其中特洛伊木馬和下載器類的惡意軟件家族占比較高。
圖5 加密通信的惡意軟件分類
六大類惡意軟件TOP5的病毒家族如下(微軟殺毒引擎):
圖6 典型加密通信惡意軟件Top5
三、惡意軟件加密通信方式
通過對(duì)惡意加密流量的分析,我們把惡意軟件產(chǎn)生加密流量的用途分為以下六類:C&C直連、檢測(cè)主機(jī)聯(lián)網(wǎng)環(huán)境、母體正常通信、白站隱蔽中轉(zhuǎn)、蠕蟲傳播通信、其它。惡意加密流量用途與各類惡意軟件的對(duì)應(yīng)關(guān)系如下:
下面,我們將對(duì)各類加密通信方式進(jìn)行闡述:
1. C&C直連
惡意軟件在受害主機(jī)執(zhí)行后,通過TLS等加密協(xié)議連接C&C(黑客控制端),這是最常見的直連通訊方式?;谖覀儽O(jiān)測(cè)的數(shù)據(jù)統(tǒng)計(jì)結(jié)果,C&C地理位置分布統(tǒng)計(jì)情況如下:
圖7 C&C地理位置
2. 檢測(cè)主機(jī)聯(lián)網(wǎng)環(huán)境
部分惡意軟件在連接C&C服務(wù)器之前,會(huì)通過直接訪問互聯(lián)網(wǎng)網(wǎng)站的方式來檢測(cè)主機(jī)聯(lián)網(wǎng)情況,這些操作也會(huì)產(chǎn)生TLS加密流量。通過統(tǒng)計(jì)發(fā)現(xiàn):使用查詢IP類的站點(diǎn)最多,約占39%;使用訪問搜索引擎站點(diǎn)約占30%,其它類型站點(diǎn)約占31%。
圖8 檢測(cè)主機(jī)聯(lián)網(wǎng)環(huán)境站點(diǎn)
3. 母體程序正常通信
感染式病毒是將惡意代碼嵌入在可執(zhí)行文件中,惡意代碼在運(yùn)行母體程序時(shí)被觸發(fā)。母體被感染后產(chǎn)生的流量有母體應(yīng)用本身聯(lián)網(wǎng)流量和惡意軟件產(chǎn)生的流量?jī)深悺S捎诳杀桓腥镜哪阁w程序類別較多,其加密通信流量與惡意樣本本身特性基本無關(guān),本文就不做詳細(xì)闡述。
4. 白站隱蔽中轉(zhuǎn)
白站是指相對(duì)于C&C服務(wù)器,可信度較高的站點(diǎn)。黑客將控制命令載荷隱藏在白站中,惡意軟件運(yùn)行后,通過SSL協(xié)議訪問白站獲取相關(guān)惡意代碼或信息。通過統(tǒng)計(jì)發(fā)現(xiàn),最常利用的白站包括Amazonaws、Github、Twitter等。
圖9 白站隱蔽中轉(zhuǎn)站點(diǎn)排行
隱藏惡意代碼的中轉(zhuǎn)文件類型包括圖片、腳本、二進(jìn)制數(shù)據(jù)等,如下三個(gè)實(shí)例:
5. 蠕蟲傳播通信
蠕蟲具有自我復(fù)制、自我傳播的功能,一般利用漏洞、電子郵件等途徑進(jìn)行傳播。監(jiān)測(cè)顯示近幾年活躍的郵件蠕蟲已經(jīng)開始采用TLS協(xié)議發(fā)送郵件傳播,如Dridex家族就含基于TLS協(xié)議的郵件蠕蟲模塊。我們對(duì)36個(gè)蠕蟲家族樣本進(jìn)行分析,有5個(gè)家族使用加密通信協(xié)議與C&C服務(wù)器建立連接:
圖10蠕蟲樣本加密通信占比
6. 其他通信
除以上幾類、還有一些如廣告軟件、漏洞利用等產(chǎn)生的惡意加密流量。
四、總結(jié)
我們將常見的惡意軟件使用加密通信方式總結(jié)如下圖:
圖11 惡意軟件加密通訊示意圖
我們利用上述分類方法,對(duì)前期流量數(shù)據(jù)進(jìn)行分類處理,將惡意加密流量中的雜質(zhì)進(jìn)行過濾、并對(duì)其進(jìn)行分類,再進(jìn)行特征工程和模型訓(xùn)練調(diào)參。數(shù)據(jù)分類處理的細(xì)度和準(zhǔn)確度,將直接影響最終模型檢出的準(zhǔn)確率和誤報(bào)率。
【本文是51CTO專欄作者“李少鵬”的原創(chuàng)文章,轉(zhuǎn)載請(qǐng)通過安全牛(微信公眾號(hào)id:gooann-sectv)獲取授權(quán)】