攻防對抗中的加密惡意流量分析技術
摘要:隨著網絡的不斷發展,安全需求的不斷提升,加密技術成為保障流量安全的首選,但同時也帶來了加密惡意流量的激增,面對復雜多變的網絡環境,如何在不解密條件下快速識別其中的惡意流量對提升網絡安全防護能力具有重要的意義。以惡意流量分類為研究基礎,梳理目前比較流行的加密惡意流量分析識別技術,聚焦基于單維特征和多維特征的流量識別方法,探討前沿技術在加密惡意流量分析領域的應用研究,為后續研究指出了方向。
內容目錄:
1 研究現狀
2 惡意流量分類
3 關鍵識別技術
3.1 基于單維特征流量分析
3.1.1 證書特征
3.1.2 數據包特征
3.1.3 協議特征
3.2 基于多維特征流量分析
4 前沿技術
4.1 基于密碼學的特征分析
4.2 基于人工智能的特征分析
加密是保護隱私的一個重要手段,能夠保護數據不被窺視,阻止攻擊者竊取信息、應用或口令。近年來,流量加密被視為互聯網發展的一個重要風向標,尤其是 2020 年新冠肺炎疫情全球蔓延爆發,遠程居家辦公、遠程教學和遠程會議等一系列場景的高頻次亮相,加劇了對流量加密的需求。通常情況下認為加密即安全,這個觀點具有相對性,在復雜的互聯網環境中,易遭受外部攻擊,簡單的加密方式無法保障信息的機密性、完整性、可用性等屬性的安全。在面對流量時,攻擊者會借助加密流量實施惡意攻擊,產生更具破壞性的行為。國際研究機構 Gartner 認為,截至 2020 年,超過 60% 的企業將無法有效解密超文本傳輸安全協議(Hyper Text Transfer Protocol over SecureSocket Layer,HTTPS)流量,而對抗這些威脅的手段將會受制于反解密系統,加密流量中將隱藏超過 70% 的網絡惡意軟件。根據 Cybersecurity Ventures 調查顯示,與 2019 年企業每 14 秒遭受一次勒索軟件攻擊相比,2021 年該時間縮短至 11 秒,這使勒索軟件成為增長最快的網絡犯罪類型。2021 年,全球因勒索軟件造成的損失預計達到 200 億美元,遠高于 2015 年的 3.25 億美元。因此,及時、快速地識別、分析加密惡意流量,對提升網絡安全韌性、凈化網絡空間具有重要意義。
1 研究現狀
針對加密流量,目前主流的攻擊分析手段包括解密后分析和不解密分析。由于在解密過程中會受到隱私保護相關法律法規的嚴格限制,當前,業界主要使用不解密流量的方法分析攻擊行為,并且在不解密直接從加密流量中檢測惡意流量方面,已經取得了一些研究成果。潘吳斌等人總結了加密流量識別的架構體系,詳述了加密流量識別的類型,如協議、應用和服務,概述已有加密流量識別技術,并從多個角度進行分析對比;王瑛等人通過建立加密流量檢測框架,運用關鍵技術和相關方法對加密流量監測進行了剖析;駱子銘等人介紹了傳輸層安全協議(Transport Layer Security,TLS)的特點和流量識別方法,提出了一種基于機器學習的分布式自動化的加密惡意流量檢測體系,利用多個流量特征進行深入分析,并通過實驗對相關算法的性能做了對比;曾勇等人綜述了多種識別加密惡意流量的方法,包括基于機器學習、密碼學等多領域方法,對識別加密惡意流量有著重要的指導作用。以上專家學者對加密流量的研究都有自己的見解,本文梳理了加密流量識別技術現狀,以惡意流量特征分析為主線,聚焦加密惡意流量特征的多種識別方法,探討前沿技術在加密惡意流量分析領域的應用,為后續研究工作指出了方向。
2 惡意流量分類
從總體來看,加密流量可以分為加密正常流量和加密異常流量,在絕大多數情況下,加密異常流量又可分為良性的加密異常流量(如某個參數的改動或某種訪問的增加導致的流量異常)和惡意的加密流量,在加密流量的分類中,加密惡意流量是最難也是最具危險性的流量,其中隱藏了許多已知或未知的威脅。通過對流量的細化區分,能夠有針對性地采取控制措施,有效地識別、分析、阻斷加密惡意流量,對提升網絡安全防護能力具有重大意義。惡意流量按照攻擊行為可歸納為以下 3 種類型。
(1)惡意軟件使用加密通信。這一類主要是指惡意代碼、惡意軟件為逃避安全產品和人工的檢測,使用加密通信來偽裝或隱藏明文流量特征。例如,用加密的方式來偽裝或隱藏攻擊行為的特洛伊木馬、感染式病毒、蠕蟲病毒、惡意下載器等。
(2)加密通道側的惡意攻擊行為。這一類主要是指攻擊者利用已建立好的加密通道發起攻擊。攻擊行為包括掃描探測、暴力破解等。
(3)惡意或非法加密應用。這一類主要是指使用加密通信的一些惡意、非法應用。相比按照惡意流量攻擊行為劃分,學術界更側重于根據惡意流量的內容特征、數據流特征及網絡連接行為特征等具體特征進行劃分。不同的特征有各自典型的特點,內容特征包括惡意流量協議段中特有的值以及負載中含有的特殊字符序列,數據流特征和網絡連接行為特征都是通過對采集的數據進行統計分析得到的,可統稱為統計特征。數據流特征可以從網絡層、傳輸層和應用層的切片中提取,提取過程通常是先計算流量統計值,再從這些統計值中提取惡意流量特征。
此外,加密惡意流量的劃分也有根據行業特點來進行細分的,如物聯網、工業互聯網、車聯網等,每個行業會根據自身行業涉及的流量進行細粒度的劃分。總之,加密惡意流量的劃分沒有絕對的標準與統一的規則,無論哪種劃分方式都離不開惡意流量的特征、行為等關鍵的評判基礎,隨著網絡的不斷演進,技術的不斷發展,加密惡意流量的監測分析手段越來越多樣,誤報率、漏報率等關鍵指標可靠性越來越高,但同時也應該看到,在加密惡意流量監測分析方面的研究任重道遠,攻與防相互對立且依存。
3 關鍵識別技術
加密流量中使用何種方法來檢測惡意流量至關重要,其中,特征是分析的關鍵,按照流量產生的路徑,從源端到目的端,從數據產生、封裝到流量傳輸,涉及多種特征,如數據包大小、方向、協議、流量的分類(服務、應用)等。使用的分析方法包括統計、分類、機器學習及混合方法,在面對復雜多樣、數據種類繁多、終端設備各異的網絡環境時,需要結合實際情況選取合適的分析方法,從特征分析的特點可分為基于單維的特征和基于多維的特征,單維特征顧名思義是指聚焦數據的某一個特征,而多維特征涉及多個特征,目的均是提高識別的準確性。
3.1 基于單維特征流量分析
3.1.1 證書特征
證書在網絡中廣泛應用,是進行信息交互的第一道門檻,是保障網絡安全的重要手段之一。服務器證書是安全套接層協議(Secure Socket Layer,SSL,該協議位于 TCP/IP 協議與各種應用層協議之間,為數據傳輸提供安全支持)中用來對服務器身份進行驗證的文件,目前,證書頒發機構按照驗證級別將證書分成 3 種類型,即域名型(Domain Validation,DV)證書、企業型(Organization Validation,OV)證書和增強型(Extended Validation,EV)證書。其相應的服務器身份認證證書就是 DV SSL 證書、OV SSL證書和 EV SSL 證書,其中,DV SSL 證書是給網站頒發的證書,審核不是很嚴格,一般免費居多;OV SSL 證書一般收費,面向申請的企業做審核;EV SSL 證書指遵循全球統一的嚴格身份驗證標準頒發的 SSL 證書,是目前業界最高安全級別的 SSL 證書。按照客戶端與服務器會話建立的流程,正常會話會傳輸證書,惡意的會話絕大多數不會傳輸證書或者利用證書來隱藏惡意活動,這給網絡安全帶來了一定的威脅與挑戰。結合本文研究的方向,目前,通過證書來識別加密惡意流量的基本思路是通過比對惡意證書特征庫,快速識別惡意的加密流量。具體來說,在惡意操作過程中依然會用到加解密及信任證書,通過搜集匯總大量已知的惡意流量的證書特征,對其版本號、名稱、簽發時間等信息做詳細記錄并進行大數據分析,如惡意證書的常見特征包括自簽名、長期的證書有效期及證書擴展數目等,在檢測惡意流量時,通過比對惡意證書特征庫,來驗證其是否為惡意流量。此外,基于證書文本數據進行手工特征提取也是識別惡意證書的熱點研究方向。
3.1.2 數據包特征
除了上述提到的證書特征,數據包特征也是加密惡意流量識別的重要技術,在流量中,數據包屬于較小單位,通過對加密流量中的數據包特征進行提取,能夠實現對加密流量中載荷內容的分類和識別。數據單元統計特征包括數據包大小、到達時間序列和字節分布等。數據包數量在正常通信和惡意軟件在通信時是不同的,瀏覽網頁時客戶端向服務端的請求數據包通常較少,而服務端回復客戶端的響應數據包非常多,但是惡意軟件完全相反,服務端僅向客戶端發送少量的控制命令,而客戶端因為進行數據回傳會向服務端發送大量的數據包。由于數據包體量特征不受數據加密的影響,所以非常適合用于加密流量的檢測。此外,還可以從數據流量大小來看,上下行流量通常情況下存在下行遠大于上行,惡意流量則相反,當出現上行流量比較大時,需要結合網絡情況綜合研判其是良性的流量增長還是惡意的流量攻擊。這種方法較為復雜,有時候需要結合外部的情報分析,但數據包中的信息是豐富且復雜的,某一字段的增加或者更改都可能是一種惡意行為的特征,基于數據包的加密惡意流量特征分析能力也需要更多的技術手段來提升。
3.1.3 協議特征
為保障網絡安全,搭建了很多互聯網加密協議,如傳輸層安全協議 TLS、安全外殼協議(Secure Shell,SSH)和安全電子交易協議(Secure Electronic Transaction,SET)等。其中,TLS 協議是當前業界常用的加密通信協議之一,TLS 協議位于傳輸層和應用層之間,用于兩個通信應用程序之間保障其保密性和數據完整性。其相應的基于 TLS 協議的加密流量也成為業界主流,但在增強安全性的同時也帶來了網絡安全風險。很多惡意流量借助 TLS 協議隱藏在加密流量中,對網絡和業務的安全帶來了極大的威脅。TLS 協議是由握手協議、記錄協議、更改密文協議和警報協議組成。TLS 一個握手流程如圖 1 所示,該流程主要包含 client hello、server hello、client_key_exchange、encrypted_handshake_message 等類型的消息。這幾個階段包括協議版本協商、密碼算法協商、身份認證以及密鑰交換、會話密鑰等信息的確定,目前TLS1.3 版本以下在握手階段都是明文傳輸,這也成為了很多攻擊者利用的對象。加密惡意流量通常包括以下 3 類特征:內容特征、數據流特征和網絡連接行為特征,根據不同的特征可以從流量中識別出來。正常的加密流量和加密惡意流量在密碼算法使用、密鑰長度使用等方面具有很大的區別。在密碼算法使用上,惡意流量中通常使用已經過時的或者已被證明不再安全的算法,如 MD5、RC4 等;在密鑰長度使用上,正常的加密流量可能采用基于橢圓曲線的 256 位密鑰長度,而惡意流量中則使用基于RSA 的 2048 位密鑰長度;在簽名方式上,惡意流量通常采用自簽名的方式,缺乏信任。因此,通過檢測 TLS 協議交互的報文信息,根據其特征,可以識別加密惡意流量。

圖 1 TLS 握手流程
3.2 基于多維特征流量分析
隨著大數據的不斷發展,機器學習、深度學習等大數據分析方法得到崛起與普遍應用。利用自動化手段的識別技術可以極大地提升流量識別效率及使用便捷性,同時效果評價指標成為衡量各種方法的重要指標。其主要思想在于模型的選擇、優化和特征庫的建立,以及識別效率與準確率、漏報率與誤報率等關鍵指標。理解數據流基本特征是開展機器學習模型算法應用的重要基礎。圖 2 是常見的數據流特征,數據流中包括版本號、包頭長度、時間戳等多種信息,這些信息均可作為多維特征,利用機器學習的算法把各種特征聚合分析,得到一個好的模型,再通過不斷優化模型輸出好的結果。機器學習常用的數據流特征包括時空特征、頭部特征、負載特征和統計特征等,比較流行的方法包括基于支持向量機(Support Vector Machines,SVM)、隨機森林(利用多棵樹對樣本進行訓練并預測的一種分類器)、卷積神經網 絡(Convolutional Neural Networks,CNN) 和提升方法(Boosting 算法) 等。

圖 2 數據流特征
基于時空特征采用的識別方法常見的是CNN,主要目的在于利用深層次的神經網絡來學習原始流量數據的時空特征,時空特征包括流量的時間特征和空間特征,具體包括如數據包到達的時間、傳遞的方向等。
基于頭部特征采用的識別方法較多,如基于聚類、CNN 和隨機森林等,從小規模的數據集來看,機器學習和深度學習差異不大,但面對大規模的數據集時,深度學習表現出較好的優勢,也符合深度學習的本質。
基于負載特征采用的識別方法常見的是CNN、SVM,負載特征較為復雜,主要包括流量包中的有效載荷部分,如將流量數據轉化為可視化的圖像,再使用 CNN 對圖像進行分類,通過這種方法,可以實現端到端的惡意流量識別,并且能夠滿足實際應用的精度,此外,有的從元數據本身出發,提取上下文的特征;還有的是利用自然語言處理網絡流量文本語義檢測的方式進行惡意應用檢測。
基于統計特征采用的識別方法常見的是隨機森林和 C4.5(C4.5 算法是由 Ross Quinlan 開發的用于產生決策樹的算法),C4.5 算法應用 較 廣, 如 加 密 的 VoIP(Voice over Internet Protocol,基于 IP 的語音傳輸)包的長度可以用來識別通話中所說的短語,也可以利用 C4.5算法分析 TLS 的 6 個統計特征(上傳字節、下載字節大小等)和 HTTPS 流中的 4 個統計特征(用戶代理、請求統一資源定位符等),以識別出惡意應用流量。
除了機器學習與深度學習,近年來,集成學習成為大數據分析領域的熱門方法,它屬于機器學習的一種,但又不是一個單獨的機器學習算法,而是通過構建并結合多個機器學習器來完成學習任務。集成學習的代表Boosting 算法是從訓練數據集中先訓練得到一個基學習器,再根據基學習的性能調整訓練樣本分布,使得在前一個基學習器中識別錯誤的訓練樣本并在接下來的訓練過程中進行調整。下一次訓練迭代開始時,會使用新的樣本數據集來訓練下一個基學習器,訓練過程結束以基學習器的個數是否達到預定值為準,最后預測結果是所有基學習器預測結果的加權綜合。其算法的典型代表有梯度提升決策樹(Gradient Boosting Decision Tree,GBDT)、 極 端 梯 度 提 升(eXtreme Gradient Boosting,XGBoost)以及基于決策樹算法的分布式梯度提升框架(Light Gradient Boosting Machine,LightGBM)。
總之,無論使用哪種機器學習的方法,其核心思想均是圍繞特征展開,通過特征提取、算法模型建立與調優,能夠輸出有效的分析結果,最后對結果進行評估。當單一的方法無法滿足復雜環境下的流量數據分析時,需要使用混合的分析方法,基于混合方法的流量分析流程如圖 3 所示。流量采集主要是通過鏡像或分光等方式采集出口處的流量;流量清洗及預處理把流量清洗轉換,處理成為符合算法處理的數據流格式,同時也清除一些無效的數據流,提高數據集的質量;惡意特征識別分析則是構建分析模型的核心組件,針對不同的樣本特征,選取合適的多種算法進行惡意流量識別,最后輸出分析結果,其分析結果也會再次助力模型算法不斷優化,進一步提升各項評估指標。

圖 3 基于混合方法的流量分析流程
4 前沿技術
隨著網絡安全技術能力的不斷增強,新技術的融合創新,面對大數據環境下的加密惡意流量分析技術的能力也在大幅提升,雖然現有的一些技術手段也能有效地處理這種惡意流量,但是技術手段體系需要不斷的完善,對惡意流量特征識別精準率需要進一步提升。目前,較為前沿的技術包括密碼學、AI、黑客畫像等,新技術在流量檢測領域的融入讓檢測能力換發風采。
4.1 基于密碼學的特征分析
利用密碼學來分析加密惡意流量是目前業界和學術界研究的重點方向。基于密碼學來分析加密惡意流量有難點,但同時具有前瞻性與可靠性,加密流量本身就涉及密碼技術,通過分析惡意流量中使用密碼技術應用的特征,比對正常流量,能夠有效地識別出惡意流量,為此,研究密碼學中的關鍵技術是有必要的。其中,基于公鑰密碼體制的密文檢索和密文計算是主要研究的熱點,如密文檢索可以通過檢索關鍵詞的方式直接對密文數據進行訪問,通過單個關鍵詞、多個關鍵詞、模糊關鍵詞和區間檢索識別惡意流量的關鍵詞的方式識別惡意流量。而密文計算是在密文形式數據上的任意計算,其核心包括同態加密與安全多方計算,主要實現對密文的安全訪問與處理,結合密文檢索技術,在保護用戶數據隱私的前提下,利用檢索加密流量上的惡意關鍵詞的方式識別惡意流量,從而讓惡意流量無所遁形。
4.2 基于人工智能的特征分析
在一定程度上,利用單維及多維特征方法可以識別加密流量中的惡意流量。但這類方法缺乏從全局出發,結合外部資源如威脅情報、用戶行為分析等更深層次的技術分析,難以最大限度地提取加密流量中的惡意流量。隨著人工智能(Artificial Intelligence,AI)技術的發展,通過大量的測試驗證,基于人工智能的加密流量安全檢測將是一種新的技術手段。該技術手段以 AI 技術賦能惡意流量檢測,通過 AI 建模、解析和檢測,基于 AI 的靈活與高效,檢測效果獲得了顯著的提高,充分展現了基于 AI 的加密惡意流量檢測具有高度的可行性和良好的應用前景。例如,基于人工智能引擎,實時分析網絡全流量,結合威脅情報數據及網絡行為分析技術,深度檢測可疑行為,有助于清晰地掌握攻擊者所處的攻擊鏈階段和成功概率。基于 AI的加密惡意流量分析是未來發展的重要方向,將 AI 技術與現有網絡不斷融合,例如,引入了TLS/SSL 數據流的上下文信息,其中,域名系統(Domain Name System,DNS) 在 TLS/SSL 通信中占據重要地位,通過提取 DNS 上下文的統計特征,能夠提高 AI 模型的準確性。同時,可利用的上下文還包括 HTTP(HyperText Transfer Protocol,超文本傳輸協議)上下文,通過不斷探索,相信基于 AI 的加密惡意流量檢測將越來越及時有效。
4.3 基于黑客畫像的特征分析
目前,大多數的技術手段都是具有策略性質的,在網絡安全攻防對抗中,人才是最關鍵且重要的因素,用戶畫像在不同的領域中具有不同的側重點。例如,在金融領域側重分析消費者資金理財特點,在電商領域側重分析消費者消費習慣,用戶畫像技術在網絡安全領域的網絡預警、溯源等方面有著不可替代的作用,隨著應用越來越廣,現已成為網絡安全防護的一種重要輔助技術。結合本文的研究,構建基于黑客畫像的加密惡意流量分析模型,事前能夠有較好的預警效應,事后助力溯源定位,豐富惡意特征庫。其核心思想是根據分析現有黑客攻擊的偏好特征(攻擊 IP、時間段、攻擊方式等),提取黑客畫像特征,采用機器學習、深度學習等方法,把黑客畫像與加密流量數據特征參與計算并輸出分析結果。通過基于黑客畫像的特征分析,構建加密流量分析的預警機制,增強“防”的能力,實現對加密惡意流量的及時預警、追蹤,根據分析結果不斷豐富惡意特征庫,形成閉環效應,更加有效地阻斷惡意攻擊,增強網絡韌性。
5 結 語
本文通過梳理加密惡意流量分析識別技術現狀,聚焦大數據分析方法與前沿技術,總結加密惡意流量分析識別方法。隨著網絡安全相關法律法規體系的不斷完善,網絡流量作為當今社會重要的數據資源,每一位流量資源的擁有者、處理者都是這些資源的安全守護者。技術在不斷進步,科技日新月異,相信在未來網絡安全的發展道路上,加密惡意流量的檢測分析將不再是安全發展的絆腳石,智能、可靠、多元的技術將是流量安全守護的定心丸。