5G注册协议安全解析:漏洞挖掘与防护实践

本文深入解析5G注册协议的安全机制,揭示SUPI泄露、空加密漏洞、重放攻击等关键风险,提供实际测试方法和防护建议。通过Open5Gs实验环境演示漏洞利用过程,帮助组织构建更安全的5G网络部署方案。

5G安全揭秘:深入解析注册协议

TL;DR:尽管5G相比前代技术具有更先进的安全架构,但其注册协议仍存在独特的安全挑战。本文剖析5G用户设备初始注册到5G核心网时的无线安全基础,演示如何测试注册协议中的漏洞,并重点介绍部署5G技术时的关键安全考量。

5G安全现状

5G技术正快速渗透多个行业领域。主要运营商已实现全国范围覆盖,运营技术公司正从Wi-Fi转向5G,AWS等云服务商也开始提供5G即服务。预计到2030年,80%的移动数据流量将通过5G网络传输,约为当前使用率的两倍。

尽管5G在速度、可靠性和安全选项方面显著提升,但传统测试方法面临独特挑战:

  • 射频传输的监管限制及FCC法规下的合法监听要求
  • 缺乏标准化安全测试框架(不存在"5G版OWASP Top 10")
  • 公开漏洞研究的详细资料有限
  • 全面测试所需设备成本高昂

此外,当前大部分5G基础设施仍运行在基于4G的非独立组网模式。向5G独立组网(5G SA)的转型将引入需要关注的新攻击面。

5G网络架构解析

5G架构主要由三个核心组件协同提供连接服务:

用户设备(UE) 作为连接蜂窝网络的物理设备,涵盖智能手机、物联网设备到工业设备等。 无线接入网(RAN) 提供连接UE与核心网的基础设施,主要由处理无线传输的gNB(下一代基站)组成。 5G核心网 作为网络"大脑",处理数据、管理注册流程并路由流量至正确目的地。

在5G核心网中,接入和移动管理功能(AMF)在注册过程中起关键作用。AMF如同网络空中交通管制中心,接收连接请求、分析并引导流量流向。

5G注册协议详解

设备连接5G网络时,注册流程通过以下关键步骤实现用户认证和安全通信建立:

  1. 注册请求 - UE向5G核心网发起连接,包含SUCI(订阅隐藏标识符)而非明文标识符
  2. 认证请求/响应 - 5G核心网通过RAND和AUTN值挑战UE,UE使用订阅密钥计算RES*响应
  3. 安全模式命令/完成 - 建立UE与AMF间的完整性保护和加密机制
  4. PDU会话建立 - 设置IP地址、服务质量等通信参数

所有步骤均通过NAS(非接入层)消息在UE与gNB间的AS(接入层)传输信道承载。但NAS安全机制直到第3步才激活。

这意味着第1-2步(注册请求和认证消息)在无完整性保护和加密状态下传输。该间隙存在关键漏洞窗口,攻击者可利用未受保护的信令进行攻击。

关键安全漏洞

通过3GPP技术规范(如TS 30.511和TS 33.512)的系统性分析,我们在典型5G核心网设置(基于Open5Gs默认部署)中测试发现以下关键问题:

SUPI泄露风险

5G使用应加密为SUCI的订阅永久标识符(SUPI)替代4G的IMSI。SUCI应由USIM使用预置的公钥计算后传输。但当USIM未正确实施该保护时,唯一标识符的暴露会导致持续用户追踪。这对移动用户构成重大隐私威胁。

空加密与弱完整性利用

5G支持的加密算法从EEA0(空加密)到EEA7,完整性算法从EIA0(空完整性)到EIA7。EEA0完全不提供保密性,EIA0无完整性保护。

研究发现的关键缺陷:

  • 设备可在非紧急情况下请求空加密(EEA0)和空完整性(EIA0),5G核心网应拒绝此类请求
  • 初始注册消息默认缺乏完整性保护,配置不当可能被篡改
  • 攻击者可通过伪基站实施"降级攻击",强制UE回退到不安全协议

重放攻击

重放攻击发生在攻击者捕获合法5G信令消息并重新发送时。利用开源工具5GReplay,我们编写以下规则测试注册请求重放:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
<beginning> 
  <property value="THEN" 
            property_id="101" 
            type_property="FORWARD" 
            description="Forward InitialUEMessage with Registration Request"> 
    <event value="COMPUTE" 
           event_id="1" 
           description="Trigger: InitialUEMessage" 
           boolean_expression="ngap.procedure_code == 15"/> 
    <event value="COMPUTE" 
           event_id="2" 
           description="Context: Registration Request" 
           boolean_expression="nas_5g.message_type == 65"/> 
  </property> 
</beginning>

更高级的工具如Sni5Gect支持实时拦截、修改和注入5G控制平面消息,特别适用于测试降级攻击。

自动化攻击工具

为协助识别加密算法和SUPI泄露,我们开发了监听5G流量的内部工具。测试环境示例如下:

1
2
3
4
5
$ ./snoopy --live lo 
Listening... 
Encyrption in use [EEA0] 
Integrity in use [EIA0, EIA1, EIA2] 
SUPI (MCC+MNC+MSIN) 9997000000001 

5G环境测试建议

组织应重点测试以下领域:

  • 注册协议分析:持续检查UE与核心网间的通信流程,重点关注未受保护的初始消息
  • 安全能力强制:验证核心网是否正确拒绝弱安全配置请求
  • SUCI实施测试:确认设备始终正确加密标识符

安全部署建议

基于研究发现,建议实施以下关键措施:

  • 配置5G核心网拒绝空算法连接,防止降级攻击
  • 强制使用SUCI,监控网络流量中的SUPI暴露
  • 部署伪基础设施检测机制,实施网络分段和访问控制
  • 建立定期安全测试程序,持续识别新漏洞类型

结论

5G虽带来显著安全提升,但其注册协议中的可 exploited 漏洞需立即关注。通过安全控制的正确实施和持续评估,可在实现5G增强能力的同时有效管控无线通信技术固有风险。

comments powered by Disqus
使用 Hugo 构建
主题 StackJimmy 设计