摘 要
隨著 5G 網絡與垂直行業的深度融合和大規模應用,保障 5G 網絡和系統的安全性愈發關鍵和重要。5G 網絡和系統安全涉及多個方面,檢驗 5G 網絡和系統安全的測試方法可以從 3 個方面展開:一是依據 3GPP 組織為保障 5G 網絡系統設備安全性提出的安全保障規范(SCAS 系列文件,這一系列規范的核心是 TS 33.501 5G 安全架構和流程中提出的 5G網絡安全要求)中的測試用例,對 5G 網絡設備做逐項安全測試;二是根據 5G 網絡應用的具體部署和相應網絡拓撲下的切片、下沉 MEC、網元和接口做安全協議一致性測試;三是針對 5G 網絡系統控制和用戶面中存在的異常消息與流程進行模糊測試和可編程協議棧測試,以挖掘 5G 網絡系統潛在的安全隱患和漏洞。SCAS 安全用例測試自動化和模糊測試與可編程協議棧測試自動化是面向 5G 設備安全測試市場需求提出的國產化測試工具集,可極大推動 5G 安全測試的實施和 5G 產業的發展。
作為最新一代移動通信網絡的標準,近兩年 5G 已大規模應用于我國國民經濟各領域,并且和垂直行業應用緊密結合,為政府、能源、金融、交通等各行業提供基礎的通信服務,各垂直行業業務的重要性在驅動 5G 網絡日益成為重要基礎設施的同時,5G 網絡系統和業務自身的安全性要求也被提到了前所未有的高度。
5G 網絡從誕生起即具備比前幾代移動網絡更高更強的起點和目標。5G 網絡技術不僅建立在前幾代移動網絡技術基礎之上,而且吸收了最新的基于服務的云架構思想和軟件定義網絡的設計理念,運用網絡功能虛擬化技術,提供基于服務化的網絡架構,可面向各垂直行業提供服務,是移動網絡經過 20 年發展和技術積累的結晶。正因為 5G 網絡系統是在前幾代移動通信網絡技術的基礎上采用了一系列的新技術而形成,所以其安全特性既有前幾代網絡安全技術的特性積累和提升,也有新技術帶來的安全挑戰。為此,要保障 5G 網絡系統的安全性,首先要對5G 網絡的安全需求盡可能做全面的分析,然后針對 5G 網絡的安全需求逐項展開安全測試的設計,最后實現安全測試自動化執行手段,由此達到并實現全面開展 5G 網絡安全測試從而全面保障 5G 系統安全的目的和效果。
5G 網絡系統安全測試的基礎是 5G 網元功能和接口協議的仿真,目前能夠提供 5G 網絡功能測試的廠家主要是國外的測試儀表設備廠商,但是在 5G 安全測試領域仍然存在多種局限和不足。針對這一安全測試市場的短板和空缺,近年來由國內廠家基于自主研發的 5G 網絡功能測試設備陸續提出開發的 5G 安全保障規范用例測試自動化、5G 系統安全模糊化測試和可編程協議棧測試自動化工具集,以彌補這一市場空缺。
1
5G 系統安全測試概述
5G 系統安全測試首先來源于 5G 系統架構帶來的變化和安全需求,即 5G 網絡中各網元的安全和各開放式接口的安全保障需求,從 5G 網絡架構來看,可分為控制信令面網元和接口的安全測試與用戶數據面網元和接口的安全測試;其次是不同垂直行業中具體的 5G 網絡系統的部署形態和特征決定了 5G 安全測試的核心要求,即特定網絡拓撲下的切片、邊緣計算技術(Mobile Edge Computing,MEC)、網元和接口的安全協議一致性測試;最后,從 5G 網絡協議層信令和消息以及應用層數據的異常性特征需求出發,根據 5G 系統中控制面信令業務和用戶面數據業務的安全性要求,進行針對異常消息、數據和流程的攻擊性安全測試。
5G 網絡中各網元的安全和各開放式接口的安全保障需求主要由 3GPP TS 33.501 安全架構和流程加以定義,測試規范主要由 TS 33.117 安全保障類型 和 TS 33.511 至 TS 33.522 以及 TS33.326 各網元安全保障規范(Security Assurance Specification,SCAS)來定義。第三代合作伙伴計劃(3rd Generation Partnership Project,3GPP)制定的 SCAS 系列設備安全保障規范是由全球移動通信協會和 3GPP 一起制定的網絡安全保障 計 劃(Network Equipment Security Assurance Scheme,NESAS)中所引用的測試評估標準,經過權威認證的第三方機構和實驗室根據 3GPP 定義的 SCAS 系列標準對由設備商提供、運營商將要入網的網絡設備的安全能力進行測試,并生成測試報告,目前在 5G 業界獲得了以華為為代表的設備供應商的大力支持。
特定網絡拓撲下的切片、MEC、網元和接口的安全協議一致性測試根據 3GPP TS 23.501、TS 23.502 中的身份加密認證和網絡加密完保算法需求來定義。這一測試來自 5G 網絡自身的安全特性和基本安全保障機制要求,與 SCAS 設備安全測試相比,更注重檢驗 5G 網絡整體端到端的安全協議與流程,即更加注重網元之間和級聯狀態下接口協議安全流程的完整性。
5G 系統中控制面信令業務和用戶面數據業務的安全性和攻擊性測試,根據對 5G 網絡中實際發生和存在的安全問題和現象,結合運用模糊測試和可編程協議棧測試技術加以定義。在安全測試中,模糊測試是對規范化安全測試的有力補充,可以有效地捕捉和挖掘因為異常消息的引入帶來的系統安全風險和漏洞,已越來越得到業界的認可。可編程協議棧測試是對模糊測試的進一步提升,可針對 5G 協議和流程順序加以變化,形成更為有力的安全檢測手段。通過對以上 3 種安全測試類型進行詳細的需求分析,并完成相應的測試設計和執行過程,可以較為全面地掌控與確保 5G 網絡系統運行時的安全性和可靠性。
2
5G 系統安全測試詳解
2.1 5G 設備安全保障測試
針對 5G 網絡中各網元的安全和各開放式接口的安全保障需求和測試需求,3GPP 提出了 TS33.501 5G 系 統 安 全 架 構 和 流 程、TS 33.117 通用安全保障需求分類、TS 33.511 至 33.522 各主要 5G 網元設備的安全保障規范(SCAS 安全系列規范,包含 gNB、AMF、UPF、UDM、SMF、AUSF、SEPP、NRF、NEF、N3IWF、NWDAF、SCP)以及相應網元的安全保障測試用例。
圖 1 展示了 TS 33.501 中定義的 5G 系統的安全架構,從圖中可見 5G 系統安全被分為應用安全層、網絡安全層和傳輸安全層。網絡安全層和傳輸安全層是 5G 網絡系統安全的重點,包括終端與接入網以及服務核心網與歸屬核心網之間的網絡訪問安全,網絡域信令與數據信息交互安全,用戶域安全,SBA 域安全等 5G 全領域安全。在 5G 安全架構下,5G 網絡中各網元設備的安全保障測試首先應依據由 TS 33.501 延伸的 SCAS 規范中定義的測試用例來完成。

圖 1 3GPP TS 33.501 提出的 5G 安全架構
5G SCAS 系列安全保障規范定義的內容如下:TS 33.511 定 義 了 gNB 網 絡 產 品 類 的 安全保障測試規范和測試用例 ;TS 33.512 定義了AMF 接入和移動管理功能的安全保障測試規范和測試用例 ;TS 33.513 定義了 UPF 用戶面功能的安全保障測試規范和測試用例 ;TS 33.514定義了 UDM 統一數據管理網絡產品類的安全保障測試規范和測試用例 ;TS 33.515 定義了SMF 會話管理功能網絡產品類的安全保障測試規范和測試用例 ;TS 33.516 定義了 AUSF 認證服務器功能網絡產品類的安全保障測試規范和測試用例 ;TS 33.517 定義了 SEPP 安全邊緣保護代理網絡產品類的安全保障測試規范和測試用例 ;TS 33.518 定義了 NRF 網絡存儲功能網絡產品類的安全保障測試規范和測試用例 ;TS 33.519 定義了 NEF 網絡曝光功能網絡產品類的安全保障測試規范和測試用例 ;TS 33.520 定義了 N3IWF 非 3GPP 網間功能的安全保障測試規范和測試用例 ;TS 33.521 定義了 NWDAF 網絡數據分析功能的安全保障測試規范和測試用例;TS 33.522 定義了 SCP 服務通信代理的安全保障測試規范和測試用例 ;TS33.326 定義了 NSSAAF 網絡切片特定認證和授權功能安全保障測試規范和測試用例 。
根據上述 SCAS 系列規范中定義的測試用例,利用相關的 5G 接入網和核心網測試儀器的作用,完成測試連接拓撲的搭建并執行定義的測試步驟,最后檢驗測試結果是否與預期要求相符合。測試連接拓撲必須符合 3GPP TS 23.501關于 5G 網絡系統架構規范的要求。
5G 網絡系統架構規范由 TS 23.501 4.2.3 節定義,以參考點表示的 5G 非漫游系統架構如圖 2 所示,5G 網絡設備安全保障測試連接圖與 5G 系統端到端接口安全協議一致性測試架構均以此為依據。

圖 2 以參考點表示的 5G 非漫游系統架構
5G SCAS 系列規范尤其注重驗證消息響應出錯或驗證失敗的情況,但這種出錯的情況是規范里包含的流程分支和很可能出現的易發常見現象,并非 5G 消息流程中出現的異常行為和 現 象, 例 如 TS 33.512 4.2.2.1 節定義的認證和密鑰協商過程中的兩個測試用例,分別是依據 TR 33.926 中 在 同 步 過 程 定 義 的 AMF/SEAF正確處理同步失敗的測試用例,以及依據 TS33.501 6.1.3.2.2 節定義的 RES* 驗證失敗的測試用例。
5G SCAS 系列規范定義的部分主要網元功能安全測試用例如表 1 所示。
表 1 5G SCAS gNodeB\AMF\UPF\SMF 等主要網元的測試用例要求

續表

由表 1 可見,對于 5G 系統安全需求,SCAS規范給出了 5G 網元設備主要安全功能保障的測試需求和范圍。但必須指出,僅僅 SCAS 中定義的安全測試規范并不能全面反映網元與網元之間接口消息傳遞和認證的安全要求,如 gNB 網元、AMF 網元、SMF 網元和 UPF 各接口安全測試等,還需要結合具體的網絡部署,將安全測試引申到特定網絡形態下的網元和網絡接口安全協議一致性測試,如 N2/N3/N4 接口安全的測試和異常信令消息與流程的測試。
2.2 5G 網絡接口安全協議一致性測試
5G 技術在現實場景中的廣泛應用尤其是與垂直行業的深度結合,客觀形成和產生了多種多樣的網絡部署方式和形態,在切片、MEC 等應用場景下,5G 網絡系統的安全檢驗和測試也需要隨著網絡應用的具體化部署而展開,并完成關鍵網絡接口的安全測試與防范。
3GPP 在 TS 23.501 和 TS 23.502 中 定義了5G 網絡系統在終端注冊時的身份加密、認證、鑒權、密鑰協商、核心網和接入網加密完保算法協商機制和過程、切片功能的安全接入、對MEC 功能的支持接口和支持方式等,為 5G 網絡安全協議一致性測試做了原則和規范性指導。
盡管在現實場景中 5G 網絡的部署形態千差萬別,但關鍵接口的安全特征始終遵循上述規范中的指導原則,在具體化的網絡部署形態中牢牢把握關鍵接口的安全需求和測試路線,從端到端網絡的架構入手,可以不變應萬變地完成空口、N2 接口、N3 接口、N4 接口、N6 接口、N9 接口、最新的 5GLAN N19 接口,以及 N5/N7/N8/N10/N11/N12/N13/N14/N15/N22 等服務化接口的安全測試功能。
在 上 述 接 口 協 議 中, 空 口 協 議 不 僅 包 括NR 空口接入協議層,即 PHY/MAC/RLC/PDCP/SDAP/RRC,也包括終端與核心網 AMF 網元交互的 NAS 層協議移動管理部分以及與核心網SMF 網元交互的 NAS 層協議會話管理部分,在現實網絡的空口消息交互中,極容易發生各種安全信息的泄露和安全運行的隱患,需要借助精密的終端仿真儀表完成相應的協議一致性安全檢測功能。
除 空 口 外,N2 接 口、N3 接 口、N4 接 口、N6 接口、N9 接口、最新的 5GLAN N19 接口,以及 N5/N7/N8/N10/N11/N12/N13/N14/N15/N22 等 服務化接口均屬于核心網管理架構中的成員,對于核心網中各接口的安全測試可以采用單網元或部分網元以至全部網元的全包圍測試的方式,將被測網元從整體核心網架構體系中隔離出來,再根據 TS 23.501 和 TS 23.502 中網元接口協議安全規范的要求完成測試過程,被測網元或部分被測網元連接仿真核心網網元的功能,需借助高性能核心網仿真測試設備實現。
MEC 連接接口在 TS 23.501 中定義為具有分流功能的 UPF 通過連接本地網絡的 N6 接口加以連接的方法,規定了 MEC 在具體網絡部署中的接口位置和參照,在下沉 UPF 和 MEC 的安全測試中應把握遠程 N4 接口和本地 N6 接口的安全要求以及 MEC 自身接入安全認證的需求進行定制化測試方法的制定和執行。
5G 端到端網絡系統接口安全協議一致性測試架構中關鍵的測試接口和連接方式同樣需要遵照 3GPP TS 23.501 4.2.3 節中定義的 5G 參考點式網絡架構來定位和進行,部分 5G 網絡接口安全協議一致性測試用例如表 2 所示。
表 2 部分 5G 網絡接口安全協議一致性測試用例

續表

5G 網絡端到端安全協議一致性測試的關鍵點有:
(1)空口信令與數據安全測試;
(2)核心網信令與數據加密完保安全測試;
(3)核心網 PCF 網元和 SMF 網元及本地 UPF網元與 MEC 信令數據交互加密完保安全測試;
(4)N4 接口 PFCP 協議偶聯和會話的初始化及建立過程測試;
(5)網絡切片安全測試等。
表 2 所示為部分根據 TS 23.501 和 TS 23.502關于 5G 網絡接口協議的要求而設計的網絡接口安全協議一致性測試用例。
2.3 5G 網絡異常消息和流程測試
5G 網絡中無論控制面的信令數據還是用戶面的業務數據,都會因為各種原因產生消息和數據傳遞的丟失、錯誤、流程的缺失、信令風暴等,以及來自網絡黑客的協議包和數據包的篡改及流量的攻擊等,這種由異常消息和流程的變化造成的網絡安全威脅往往比正常流程下給 5G 網絡造成的安全隱患要大得多,因此對于5G 網絡內部由于異常消息和流程造成的安全問題應加以高度重視,并能形成有效的測試手段提前防止 5G 網絡因類似的隱患發生但處理異常而導致重大安全事故。
5G 核心網控制面異常消息和流程通常由以下原因導致。
(1)核心網中的 bug 在特定情況下產生的異常信令消息,如 AMF 網元在同時處理來自終端和接入網的消息與來自 SMF 和其他核心網網元通過服務化接口發來的消息時,容易造成消息的排隊與丟失。
(2)網絡傳輸設備丟包,與核心網網元類似,部分信令消息的丟失導致異常流程。
(3)3GPP 技術規范存在定義不夠嚴謹的問題,使得不同廠商理解不一致,在異廠商設備對接時,可能因為某個特定字段解析失敗,導致無法響應而產生異常的信令流程。
(4)信令風暴引起的網絡系統資源消耗或耗盡而不能及時處理接收到的信令流程。
5G 核心網用戶面異常數據和流程通常由以下原因導致。
(1)用戶面數據傳輸過程面臨著重放攻擊和拒絕 / 分布式拒絕服務攻擊。
(2)用戶面存在大規模容易造成信令風暴的不連續小流量數據的威脅。
異常消息與流程可對 5G 網絡系統的正常運行造成不可預期的影響,如流程死鎖和死機等,是需要重點防范的網絡安全問題。在接入網端和互聯網端,空口消息和互聯網網絡數據也存在類似的異常消息與異常流程的安全隱患,可以采取統一的思路對核心網、接入網和互聯網端的信令與數據加以異常消息與流程的測試,以排除 5G 網絡系統對于異常消息與流程發生后面臨的處理障礙和系統故障。
針對 5G 網絡系統內部由異常消息與流程處理不當造成的安全漏洞,實踐證明模糊測試或可編程協議棧測試技術是可選擇的最有效和最佳的測試手段之一。
5G 網絡系統模糊測試的原理與拓撲如圖 3所示。通過模糊測試技術,可以在 5G 網絡的接口上截獲和編輯一方發往另一方的消息或數據,對 IE 消息或隧道數據的內容與字段加以更改,使得另一方接收到的消息和數據不再符合正常協議的規則,以此測試和檢驗網絡接口對端網元對于接收到的異常消息和數據的判斷與處理能力。

圖 3 5G 網絡異常消息模糊測試原理與拓撲
5G 網絡異常流程可編程協議棧測試的原理如圖 4 所示。標準的 5G 網絡仿真測試開放的主要是協議 / 消息配置能力,其內置的從底層協議棧狀態機到上層信令流程交互的邏輯是固化且標準的,交互邏輯依據來自 3GPP、較難構造異常的信令交互邏輯;而可編程協議棧實現了協議流程的動態編譯與生成,可以支持用戶靈活的自定義標準與非標準的協議交互行為與信令交互流程,對于開展安全測試或非標準流程測試至關重要。簡而言之,可編程協議棧測試技術可以改變消息和數據的發送順序,可以達到異常信令和數據流程的測試效果。

圖 4 5G 網絡異常流程可編程協議棧測試原理
2.4 5G 網絡安全測試工具和測試自動化
無論是 5G 網絡設備本身的安全保障測試或5G 網絡系統端到端安全協議一致性測試,還是5G 網絡系統異常消息與流程測試,5G 網絡系統的安全測試總歸需要建立在高性能的仿真測試工具的基礎上,并且所有測試均應能夠在相關配置完成后自動化執行而無需人工的中間干預。這一方面要求 5G 仿真測試工具能夠具備全面仿真和模擬 5G 系統網元設備和接口協議的功能,另一方面要求其具備高度流程化的測試配置并自動化執行測試步驟的能力和保證。
從 5G 端到端系統安全測試要求來看,5G端到端系統分為 5G 終端、5G 接入網、5G 核心網和本地數據服務網絡或外接互聯網,5G 仿真測試工具應具備全面的不同網絡類型的仿真和測試驗證能力,測試工作量巨細繁重。為此,與 5G 端到端系統相配套,5G 網絡安全仿真測試工具應首先至少配備由 5G 仿真終端、5G 核心網仿真測試儀、網絡應用仿真測試儀這三個部件組成的能夠針對無線空口、5G 接入網與核心網、數據網或互聯網進行全面安全測試的綜合測試平臺和系統。在此基礎上,對所有安全測試類型完成自動化執行的配置和部署,以高度自動化的測試執行效率完成 5G 網絡系統關鍵性安全測試要求。
以往通信網絡設備的測試儀器和設備技術均掌握在國外廠家手中,近年來國內廠家基于x86 和 ARM 平臺自主開發了全部測試設備,尤其 5G 核心網與網絡仿真測試儀的主要測試性能上線速度可達 60 000/s 以上,在線規模可達百萬,用戶面雙向流速達 200 Gbit/s,已超過國外同類測試產品,高性能多仿真終端也已接近商用水平。以上測試設備可為國內的 5G 設備廠商提供全套自主知識產權的安全測試解決方案,這對于我國 5G 產業的發展無疑將起到極大的推動和促進作用。
5G 安全測試的實現與 5G 網絡系統安全保障的關鍵在于安全測試的自動化執行。在具備5G 高性能仿真測試設備的基礎上,根據測試場景的不同需要,通過將各類型安全測試用例腳本化或固件化、測試流程自動化、運用腳本對PCAP 包測試結果分析自動化等執行步驟,可將各種類型的 5G 安全測試用例打包成自動化的測試用例集,為用戶進行全面的 5G 安全系統測試提供極大的便利。
下文以 5G SCAS 安全測試自動化為例,說明 5G 安全測試工具對測試自動化的具體配置和執行過程。
測試人員通過用戶管理、工程管理、套件用例等配置以及用例任務展示過程,可以使用鼠標一鍵點擊完成全部批量測試,測試效率可達到人工測試的百倍以上。配置過程首先通過使用圖形化的套件用例操作界面批量完成 SCAS規范中定義的測試用例配置,隨后批量執行用例,最后根據測試結果通過用例任務界面能夠自動顯示測試用例是否通過,對于失敗的用例能夠給出測試失敗的具體原因分析。
通過套件用例圖形化界面配置 SCAS 自動化測試用例的過程與效果如圖 5 所示。
通過用例任務圖形化界面顯示 SCAS 自動化測試用例執行的過程與效果如圖 6 所示。

圖 5 5G SCAS 自動化安全測試用例在套件用例圖形化界面中的配置和顯示

圖 6 5G SCAS 自動化安全測試用例的執行過程在用例任務圖形化界面中的顯示
最后,測試通過的結果顯示在用例任務圖形化界面的消息詳情展示欄中,如圖 7 所示,相關網元和流程以直觀的方式進行呈現,并且和 3GPP 的協議規范完全一致,具體的消息參數也可以提取,方便測試人員查詢。

圖 7 5G SCAS 自動化安全測試用例的執行通過結果在用例任務圖形化界面中的顯示
如圖 8 所示,如果測試結果為不通過或執行結果不合預期,則系統會自動顯示失敗的具體消息和流程步驟,測試人員可以很容易對問題的原因進行診斷。

圖 8 5G SCAS 自動化安全測試用例執行結果失敗或不合預期在用例任務圖形化界面中的顯示
以此類推,所有的 5G 網絡系統端到端安全協議一致性測試用例也可以在安全測試設備的基本安全測試能力和組件的基礎上,通過測試組合編排和完整流程配置的過程,實現安全測試用例執行的批量化、自動化和全過程可視化。
與前兩類測試的自動化執行過程類似,5G模糊測試與可編程協議棧測試也可以根據測試的場景需要,分別設置不同的 LUA 自動化測試腳本和可編程協議包,通過調用現成的自動化測試腳本和協議包,即可實現相應的異常消息和異常流程安全測試批量化自動化執行過程。
3
結 語
5G 網絡系統安全測試是一項極其重要而又對測試技術的實現要求極高的活動和任務,5G系統安全測試的范圍所涉及的深度與廣度是前幾代移動通信網絡安全測試所不具備的,不僅要具備 5G 網元和網絡功能及接口協議的仿真能力,也要具備數據網絡與互聯網仿真能力;不僅要具備 5G 系統安全測試的能力,也要具備測試自動化執行的能力。全面開展 5G 系統的安全測試,需要從多方面入手:從 5G 網絡設備自身安全能力的需要出發,可以根據 3GPP SCAS 系列安全保障規范的要求,運用對應的網元仿真測試工具與具體的 5G 網絡設備相連接,組建測試環境并對該設備逐項進行 5G 安全功能的測試,以保障 5G 設備功能的安全;從 5G 網絡應用具體化部署的網絡拓撲出發,則可根據 3GPP 規范定義的接口協議的要求,運用 5G 仿真組合測試工具,對 5G 網絡具體化部署進行端到端接口安全協議一致性測試,以保障 5G 網絡系統的運行安全;最后從 5G 網絡易發的異常消息和流程出發,可運用模糊測試技術和可編程協議棧測試技術對 5G 網絡和系統進行全面和深度的安全檢測,以排查 5G 系統對于異常消息和流程處理的安全漏洞。
安全內參
安全牛
一顆小胡椒
安全牛
安全圈
D1Net
GoUpSec
安全內參
D1Net
D1Net
聚銘網絡
系統安全運維