深度解析 3GPP TS 33.512:4.2.2.3.3 NAS integrity algorithm selection and use (算法协商:AMF的择强之道)

本文技术原理深度参考了3GPP TS 33.512 V18.2.0 (2024-06) Release 18规范中,关于“4.2.2.3.3 NAS integrity algorithm selection and use”的核心章节。本文将揭示5G网络安全协商的“艺术”——AMF如何在一个充满多样性的终端世界里,为每一位用户选择出最坚固、最合适的“安全护盾”。

引言:为“银河哨兵”旗舰手机选择最强护盾

我们的用户小敏最近换了一部全新的旗舰5G手机,她给它取了个酷炫的名字——“银河哨兵”。这部手机搭载了最新的通信芯片,支持从5G标准完整性算法NIA1、NIA2一直到最先进的NIA3等全套加密套件。而她之前使用的旧款5G手机,则只支持到NIA2。

当小敏第一次用她的“银河哨兵”开机时,一个无形但至关重要的“谈判”在手机和网络核心的AMF之间展开了。AMF需要回答一个问题:面对这个能力超群的新设备,我应该为它选择哪一种级别的安全保护?是沿用旧手机的NIA2,还是启用更强大的NIA3?这个选择过程,看似微小,却直接决定了小敏通信安全的坚固程度。

安全工程师李工今天的任务,就是扮演“谈判裁判”。他要验证“先锋通信”的AMF是否是一位明智且坚定的谈判者,它是否总能遵循“择强汰弱”的黄金法则,为每一个用户,无论是“银河哨兵”还是普通设备,都匹配上其能力范围内最强的安全护盾,并且还要防范谈判过程中可能出现的“欺诈”行为。

1. 核心原则:强强联合,取最优解 (Highest Priority First)

AMF在选择安全算法时,并非随心所欲,而是遵循一个严谨的、基于双方能力的决策逻辑。这个逻辑的核心输入有两个:

  1. UE的能力清单 (UE’s Capabilities):UE在发起注册时,会在Registration Request消息中,向AMF递交一份自己的“能力简历”,即UE Security Capabilities。这份简历上详细列出了它支持的所有加密和完整性保护算法。小敏的“银河哨兵”会递交一份包含NIA1, NIA2, NIA3的豪华简历。

  2. 网络策略清单 (Operator’s Policy):AMF侧则持有一份由运营商配置的“优先录用名单”,即Ordered List of Integrity Algorithms。这份名单不仅规定了网络允许使用哪些算法,更重要的是,它为这些算法排定了优先级。例如,运营商可能配置为 [NIA3 > NIA2 > NIA1],表示最优先使用NIA3。

AMF的决策过程,就是在这两份清单之间寻找交集,并从中选出在网络策略清单中优先级最高的那一个。

2. 规范解读:不仅要选对,还要防骗

规范原文 4.2.2.3.3 Requirement Description:

“The AMF initiates a NAS security mode command procedure, and include the chosen algorithm and UE security capabilities (to detect modification of the UE security capabilities by an attacker) in the message to the UE… The AMF selects the NAS algorithm which have the highest priority according to the ordered lists as specified in TS 33.501, clause 5.5.2.”

深度解析:

这段描述为李工的测试划定了两个关键的考核点:

考核点一:选择的正确性 (Correct Selection)

  • “selects the NAS algorithm which have the highest priority” (选择具有最高优先级的NAS算法):这明确了“择强”原则。AMF的算法选择逻辑必须是:

    1. 查看UE上报的能力清单。

    2. 与自己本地配置的优先级列表进行比对。

    3. 在两者都支持的算法中,选择一个在本地优先级列表中排名最靠前的。

    • 例如,如果“银河哨兵”(支持NIA1,2,3)接入,而网络优先级是[NIA2, NIA3, NIA1],AMF必须选择NIA2,因为它在网络列表里排第一,且UE也支持。

考核点二:防范“竞价向下攻击”的机制 (Anti-Bidding-Down Mechanism)

  • “include… UE security capabilities (to detect modification… by an attacker)” (包含UE安全能力,以检测攻击者的修改):这是规范中一个极其精妙的防御性设计

  • 攻击场景:一个恶意的假基站(或中间人)可以在UE发送Registration Request时,篡改其中的UE Security Capabilities字段,比如将“银河哨兵”豪华的[NIA1,2,3]能力清单,改成寒酸的[NIA1]。这样,AMF就只看得到被篡改后的弱能力,从而被迫选择了一个较弱的NIA1算法。这就是“竞价向下攻击”(Bidding Down Attack)。

  • 防御机制:为了反制这种攻击,规范要求AMF在下发Security Mode Command消息时,必须把自己收到的那份UE Security Capabilities原封不动地“回显”给UE。由于Security Mode Command消息本身是受完整性保护的,攻击者无法篡改。

  • UE侧的校验:UE收到SMC后,会做的第一件事就是检查其中回显的能力清单,是否与自己当初发送的完全一致。如果“银河哨兵”发现网络回显给它的能力居然只有[NIA1],它就知道自己在注册途中被攻击了,会立刻中止当前的安全流程,从而挫败攻击。

3. 测试场景:李工的“算法试金石”

李工将通过一系列测试,来验证AMF的算法选择逻辑是否既智能又警惕。

  • 场景设置

    1. 李工的UE模拟器将扮演“银河哨兵”,能够灵活配置其上报的UE Security Capabilities

    2. 李工拥有对被测AMF的配置权限,可以修改其Ordered List of Integrity Algorithms

    3. 网络分析仪将捕获N1接口上的Security Mode Command消息,作为最终裁决的证据。

3.1 Test Case A: 标准择优选择

  • 配置

    • UE模拟器上报能力:[NIA3, NIA2, NIA1]

    • AMF配置优先级:[NIA2, NIA3, NIA1]

  • 执行与观测

    1. UE发起注册,AMF和UE完成认证。

    2. 【关键观测点】:李工捕获AMF发送的Security Mode Command消息。

  • 预期结果

    • SMC消息中,“Selected NAS security algorithms”字段必须明确指示选择了NIA2

    • SMC消息中,回显的UE Security Capabilities必须是[NIA3, NIA2, NIA1]。

    • 后续UE返回的Security Mode Complete消息,其MAC必须是用NIA2算法计算的,并且AMF能校验通过。

    • 这证明AMF的基本择优逻辑是正确的。

3.2 Test Case B: 策略动态适应

  • 配置

    • UE能力不变:[NIA3, NIA2, NIA1]

    • 李工修改AMF配置,将优先级调整为:[NIA3, NIA1, NIA2]

  • 执行与观测

    1. UE重新发起注册。

    2. 【关键观测点】:再次捕获Security Mode Command消息。

  • 预期结果

    • 这次,SMC消息中选择的算法必须变为NIA3

    • 这证明AMF的算法选择逻辑不是写死的,而是能动态地、准确地遵循运营商的最新安全策略。

3.3 验证防御机制

李工虽然在此次测试中不直接模拟攻击,但他对Security Mode Command的分析已经验证了防御机制的前提条件是否满足。他确认了AMF确实在每一条SMC消息中都包含了UE security capabilities的回显字段。这表明AMF为UE侧执行反“竞价向下攻击”校验提供了必要的信息,尽到了自己的防御责任。

通过这组“算法试金石”测试,李工验证了“先锋通信”的AMF不仅是一个被动的执行者,更是一个主动的、策略驱动的安全决策者。它能在形形色色的终端面前,始终坚持“择强而用”的原则,并为防范“中间人”欺诈布下了天罗地网,确保了每一条5G信道的坚固性都达到了它所能达到的最高水平。


FAQ 环节

Q1:5G NAS完整性算法NIA1, NIA2, NIA3具体是什么?

A1:这些是3GPP为5G定义的标准化算法的代号。它们分别对应:

  • NIA1 (128-NIA1): 基于SNOW 3G算法,提供128位安全强度。

  • NIA2 (128-NIA2): 基于AES(高级加密标准)算法,提供128位安全强度。

  • NIA3 (128-NIA3): 基于ZUC算法(中国设计的祖冲之算法),提供128位安全强度。

运营商和设备商可以根据自己的安全偏好和硬件支持情况来选择和排序。

Q2:运营商配置算法优先级列表时,通常会考虑什么?

A2:主要考虑因素包括:1)算法强度:理论上更现代、经过更广泛密码学分析的算法会被优先。2)性能:不同算法在特定硬件(如芯片)上的加解密性能(吞吐量和功耗)可能不同,运营商会选择性能更优的。3)标准化和地区偏好:例如,ZUC算法作为中国主导的标准,在国内网络中可能会被赋予高优先级。

Q3:如果UE和AMF的算法能力清单完全没有交集,会发生什么?

A3:如果UE上报的所有完整性算法,在AMF的允许列表中都找不到,那么安全上下文将无法建立。AMF会认为该UE不符合网络的安全准入要求,并最终发送Registration Reject消息,拒绝其接入。

Q4:为什么防“竞价向下攻击”的校验要由UE来完成,而不是AMF?

A4:因为AMF处于一个“信息不对称”的位置。AMF只能看到UE通过空中接口传过来的信息,它无法独立判断这份信息在半路上是否被篡改过。而UE是信息的“源头”,它对自己拥有什么能力一清二楚。因此,最可靠的校验方式就是让AMF把收到的信息(作为证据)在一个安全通道里传回给UE,让信息源头自己来“验明正身”。

Q5:这个算法选择过程对用户(如小敏)来说是怎样的体验?

A5:这个过程对用户是完全透明和无感的。它发生在手机注册的几百毫秒内,不会对用户造成任何延迟或操作提示。用户只会体验到最终的结果:一个安全、可靠的网络连接。而这背后复杂的“谈判”和“校验”,正是保障这种无缝体验的基石。