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