5G 開啓了傳統無線連接無法實現的前所未有的應用,幫助企業加速數字化轉型、降低運營成本,并最大限度地提高生産力,以獲得最佳投資回報。爲了實現目标,5G 依賴關鍵的服務類别:大規模機器類型通信(mMTC)、增強型移動寬帶(eMBB)和超可靠低延遲通信(uRLLC)。
随着商用頻譜不斷增加,專用 5G 網絡的使用率和普及率也随之提高。制造、國防、港口、能源、物流和采礦等行業隻是這些專用網絡的早期采用者之一,特别是對于那些迅速依賴物聯網以實現生産系統和供應鏈數字化的公司。與公共電網不同,專用 5G 中的蜂窩基礎設施設備可能歸用戶企業、系統集成商或運營商擁有和運營。然而,鑒于針對使用 5G 開發各種技術的研究和探索越來越多,網絡犯罪分子也在考慮利用種種威脅和風險,企圖通過這種新的通信标準,入侵用戶和組織的系統和網絡。本文探讨了普通用戶設備如何在 5G 網絡基礎設施和用例中被濫用。
5G 拓撲結構
在端到端 5G 蜂窩系統中,用戶設備(又名 UE,比如移動電話和物聯網設備)通過無線電波連接到基站,基站則通過有線 IP 網絡連接到 5G 核心。
從功能上來說,5G 核心可以分爲兩個平面:控制平面和用戶平面。在網絡中,控制平面承載信号,并根據流量從一個端點到另一個端點的交換方式爲流量傳輸提供方便。同時,用戶平面負責連接和處理通過無線局域網(RAN)傳輸的用戶數據。
基站發送與設備連接相關的控制信号,并通過 NGAP(下一代應用協議)與控制平面建立連接。來自設備的用戶流量使用 GTP-U(GPRS 隧道協議用戶平面)發送到用戶平面。數據流量從用戶平面路由傳輸到外部網絡。
圖 1. 基本的 5G 網絡基礎設施
UE 子網與基礎設施網絡相互分離、隔離,不允許用戶設備訪問基礎設施組件。這種隔離有助于保護 5G 核心免受來自用戶設備的 CT(蜂窩技術)協議攻擊。
有沒有辦法繞過這種隔離、攻擊 5G 核心呢?接下來的章節将詳細介紹網絡犯罪分子如何可以濫用 5G 基礎設施的組件、尤其是 GTP-U。
GTP-U
GTP-U 是一種隧道協議,存在于基站和 5G 用戶平面之間,使用端口 2152。下面是用 GTP-U 封裝的用戶數據分組結構。
圖 2. GTP-U 數據分組
GTP-U 隧道分組是通過将報頭附加到原始數據分組而形成的。添加的報頭由 UDP(用戶數據報協議)傳輸報頭和 GTP-U 特有的報頭組成。GTP-U 報頭則由以下字段組成:
• 标志:這包含版本及其他信息(比如表明是否存在可選的報頭字段等信息)。
• 消息類型:對于承載用戶數據的 GTP-U 分組而言,消息類型爲 0xFF。
• 長度:這是隧道端點标識符(TEID)字段之後的所有内容的長度(以字節爲單位)。
• TEID:隧道的獨特值,用于将隧道映射到用戶設備。
GTP-U 報頭由 GTP-U 節點(基站和用戶平面功能即 UPF)添加。然而,用戶無法在設備的用戶界面上看到報頭。因此,用戶設備無法操縱報頭字段。
雖然 GTP-U 是一種标準的隧道技術,但其使用主要局限于基站和 UPF 之間或 UPF 和 UPF 之間的 CT 環境。假設在理想場景下,基站和 UPF 之間的回程經過加密,受到防火牆保護,并且不允許外部訪問。下面詳述這種理想場景:GSMA 建議在基站和 UPF 之間使用 IP 安全(IPsec)。在這種場景下,到達 GTP-U 節點的分組隻來自授權的設備。如果這些設備遵循規範并合理實施,它們不會發送異常分組。此外,可靠的系統應該有強大的完整性檢查機制,以處理接收到的異常信息,特别是明顯的異常信息,比如無效的長度、類型和擴展等。
然而在現實中,場景可能往往不同,需要完全不同的分析。運營商不願意在 N3 接口上部署 IPsec,因爲它耗用大量 CPU 資源,降低了用戶流量的吞吐量。此外,由于用戶數據被認爲在應用層受到保護(借助額外協議,比如 TLS 即傳輸層安全),一些人認爲 IP 安全是多餘的。有人可能認爲,隻要基站和分組 - 核心符合具體要求,就不會出現異常情況。此外,有人可能還認爲,對于所有可靠的系統而言,都需要進行完整性檢查,以發現任何明顯的異常。然而之前的研究表明,全球各地的許多 N3 節點(比如 UPF)暴露在互聯網上,盡管不應該如此。這将在以下的章節中介紹。
圖 3. 因配置錯誤或缺少防火牆而暴露的 UPF 接口,截圖來自 Shodan,并用于之前發表的研究結果
我們讨論了兩個可以使用 CVE-2021-45462 利用 GTP-U 的概念。在 Open5GS 這種面向 5G 核心和進化分組核心(EPC)的 C 語言開源實現中,從用戶設備發送零長度、類型 =255 的 GTP-U 分組導緻了 UPF 遭到拒絕服務(DoS)。這是 CVE-2021-45462,分組核心中的這個安全漏洞可以通過從用戶設備制作的異常 GTP-U 分組,并通過在 GTP-U 中發送該異常 GTP-U 分組,導緻 UPF(5G 中)或服務網關用戶平面功能(4G/LTE 中的 SGW-U)崩潰。鑒于該漏洞影響基礎設施的關鍵組件,并且無法輕易解決,該漏洞的嚴重性等級爲中到高。
GTP-U 節點:基站和 UPF
GTP-U 節點是對 GTP-U 分組進行封裝和解封裝的端點。基站是用戶設備端上的 GTP-U 節點。基站從 UE 接收用戶數據時,将數據轉換成 IP 分組,并在 GTP-U 隧道中封裝。
UPF 是 5G 核心端的 GTP-U 節點。當 UPF 接收到來自基站的 GTP-U 分組時,UPF 對外部的 GTP-U 報頭進行解封裝,取出内部分組。UPF 不檢查内部分組的内容,直接查詢路由表(也由 UPF 維護)中的目的地 IP 地址,然後繼續發送分組。
GTP-U 中的 GTP-U
如果用戶設備制作了一個異常的 GTP-U 分組,并将其發送到分組核心,會怎麽樣?
圖 4. 一個精心特制的異常 GTP-U 分組
圖 5. 從用戶設備發送異常的 GTP-U 分組
果不其然,基站将把該數據包放入到其 GTP-U 隧道中,發送給 UPF。這導緻 GTP-U 分組中的 GTP-U 到達 UPF。UPF 中現在有兩個 GTP-U 分組:外部 GTP-U 分組報頭由基站創建的,用于封裝來自用戶設備的數據分組。這個外部 GTP-U 分組的消息類型爲 0xFF,長度爲 44。這個報頭是正常的。内部 GTP-U 報頭由用戶設備制作并作爲數據分組來發送。與外部 GTP-U 分組一樣,這個内部 GTP-U 分組的消息類型爲 0xFF,但長度 0 不正常。
内部分組的源 IP 地址屬于用戶設備,而外部分組的源 IP 地址屬于基站。内部分組和外部分組的目的地 IP 地址一樣:都是 UPF 的目的地 IP 地址。
UPF 對外部 GTP-U 進行解封裝,并通過功能檢查。内部 GTP-U 分組的目的地還是同樣的 UPF。接下來發生的事情因實現方法而異:
• 一些實現維護用于分組遍曆的狀态機。狀态機的不正确實現可能導緻處理這個内部 GTP-U 分組。該分組可能已經通過了檢查階段,因爲它與外部分組擁有相同的分組上下文。這導緻系統内部有一個異常分組通過完整性檢查。
• 由于内部分組的目的地是 UPF 本身的 IP 地址,因此分組可能被發送到 UPF。在這種情況下,分組很可能會通過功能檢查,因此問題不如前一種情況來得嚴重。
攻擊途徑
一些 5G 核心供應商利用 Open5GS 代碼。比如說,NextEPC(4G 系統,2019 年更名爲 Open5GS 以添加 5G,剩餘産品來自舊品牌)提供了面向 LTE/5G 的企業版,借鑒了 Open5GS 的代碼。沒有觀察到外頭有任何攻擊或威脅迹象,但我們的測試使用已确定的場景表明存在潛在風險。
攻擊的重要性在于攻擊途徑:來自 UE 的蜂窩基礎設施攻擊。利用該漏洞隻需要一部移動電話(或通過蜂窩加密狗連接的計算機)和幾行 Python 代碼,就可以濫用該缺口,并發動這類攻擊。GTP-U 中的 GTP-U 攻擊是一種衆所周知的技術,回程 IP 安全和加密無法阻止這種攻擊。事實上,這些安全措施可能會阻礙防火牆檢查内容。
補救和心得
醫療和電力等關鍵行業隻是專用 5G 系統的早期采用者之一,5G 廣泛使用的廣度和深度隻會與日俱增。對于這些行業來說,确保持續不間斷運作的可靠性至關重要,因爲這關系到千萬條生命和實際影響。這些行業的性質決定了它們選擇使用專用 5G 系統,而不是 Wi-Fi。專用 5G 系統必須提供持久的連接,因爲對任何 5G 基礎設施的攻擊得逞都可能導緻整個網絡癱瘓。
在本文中,濫用 CVE-2021-45462 可能導緻 DoS 攻擊。CVE-2021-45462(以及大多數 GTP-U 中的 GTP-U 攻擊)的根本原因是分組核心中的錯誤檢查和錯誤處理不當。雖然 GTP-U- 中的 GTP-U 本身無害,但修複這個漏洞的适當措施必須來自分組核心供應商,而基礎設施管理員必須使用最新版本的軟件。
GTP-U 中的 GTP-U 攻擊還可以用于洩露敏感信息,比如基礎設施節點的 IP 地址。因此,GTP-U 對等體應該準備好處理 GTP-U 中的 GTP-U 分組。在 CT 環境下,它們應該使用能夠理解 CT 協議的入侵防禦系統(IPS)或防火牆。由于 GTP-U 不是正常的用戶流量,特别是在專用 5G 中,安全團隊可以優先考慮并丢棄 GTP-U 中的 GTP-U 流量。
一般來說,SIM 卡的注冊和使用必須嚴格加以規範和管理。擁有被盜 SIM 卡的攻擊者可以将其插入攻擊者的設備,連接到網絡部署惡意軟件。此外,對于采用共享操作模式的一些人來說,安全責任可能很模糊,比如企業擁有的基礎設施鏈的終端設備和邊緣。同時,蜂窩基礎設施歸集成商或運營商所有。這給安全運營中心(SOC)帶來了一項艱巨的任務:将來自不同領域和解決方案的相關信息整合在一起。
此外,由于需要停機和測試,定期更新關鍵基礎設施軟件以跟上供應商的補丁并不容易,也永遠不會容易。因此,強烈建議使用 IPS 打虛拟補丁或采用分層防火牆。幸好,GTP 中的 GTP 很少在實際應用中使用,因此可以完全阻止所有 GTP 中的 GTP 流量。我們建議使用結合 IT 和通信技術(CT)安全性和可視性的分層安全解決方案。實施零信任解決方案,爲企業和關鍵行業增加另一層安全,以防止未經授權使用專用網絡,以實現連續不中斷的工業生态系統,并确保 SIM 卡隻能從授權設備上使用。