GAA部署指南与技术解析
1. GAA基本功能与接口支持
当与HSS / HLR的接口基于Zh’时,可支持由GBA_ME组成的基本GAA功能。但需注意,GBA_U无法直接支持,且不能使用GUSS。
2. BSF中的密钥生命周期设置
GAA主会话密钥Ks的生命周期由用户归属网络中的BSF指定。密钥生命周期L与用户GAA服务请求平均间隔时间T的比值,会影响GAA服务请求触发引导操作的次数。
-
L远大于T
:引导操作的平均间隔时间接近L。
-
L远小于T
:几乎每个GAA服务请求都会触发引导操作,这虽能保证引导密钥的新鲜度,但会增加BSF和HSS的负载。
假设服务请求满足以下假设:
- 单个用户的服务请求是独立且同分布的随机事件。
- 不同用户的服务请求相互独立。
若终端刚完成引导,下一次引导前的时间段开始的L秒内无需引导,之后新的服务请求将触发引导。平均该时间段长度为T秒,引导概率pB为:
[p_B = \frac{T}{L + T}]
单个用户对HSS负载的贡献为pB / T或((L + T)^{-1})次/秒,N个用户的贡献为(N (L + T)^{-1})次/秒。例如,L为6小时,105个用户平均每小时产生4个GAA服务请求,将使HSS每小时平均负载增加104次事务。
若不满足上述随机假设,pB的计算将无效:
- 若服务请求不独立,间隔恰好为T秒,当(nT < L < (n + 1)T)(n为非负整数)时,引导将每((n + 1)T)秒发生一次,此时(p_B = \frac{1}{n + 1})。
- 若服务访问时间有影响,许多用户可能同时请求服务,导致负载急剧增加。
建议使用上述公式粗略估计平均情况,并为BSF及相关网络元素配备过载控制机制和足够的备用容量。
3. GAA中SIM卡的使用(2G GBA)
目前多数用户使用SIM卡,UICC卡的推广才刚刚开始。由于更换成本高,3GPP对SIM卡在GAA中的使用进行了标准化。2G GBA(SIM卡GBA)的安全级别与3G GBA不同,针对其安全威胁采取了额外保护措施。
2G GBA旨在实现终端与归属网络中BSF的相互认证,以下是其应对GSM漏洞相关安全威胁的概述:
|威胁类型|描述|应对措施|
| ---- | ---- | ---- |
|UE伪装|在GSM网络中,网络未经过认证,存在UE向BSF伪装的威胁。| -
中间人攻击
:攻击者需了解受害者有SIM卡、订阅2G GBA且使用支持A5/2的旧终端,实际风险不高。
-
SIM克隆攻击
:建议采用更安全的A3/A8算法变体。
-
UICC - ME接口攻击
:终端平台安全保护SIM卡访问,风险与其他3GPP特定GAA变体相当。|
|BSF伪装|GSM网络中网络未认证,存在BSF向终端伪装的风险。|2G GBA使用TLS对BSF进行认证,攻击者需破解TLS和GSM安全才能获取Ks。|
|降级攻击|GAA终端可使用3G GBA或2G GBA,2G GBA规范要求支持SIM的终端也支持USIM/ISIM的GBA_ME和GBA_U,有USIM/ISIM时优先使用。|确保插入UICC卡时,不使用SIM卡应用进行服务密钥推导。|
4. 计费与GAA
GAA标准化初期,认证和授权属于GAA,但计费不属于。计费需要“触发事件”,以下是一些可监控的示例事件:
- 若按终端建立的安全关联数量计费,建议在BSF侧监控终端与BSF之间的Ub接口。
- 若服务不在归属运营商网络,运营商可向服务提供商收取GAA密钥或USS交付费用,在BSF侧监控可避免NAF篡改数据。
- 若按服务消费计费,属于NAF软件范畴,可监控的事件包括基于GAA密钥的UE向NAF认证次数、用户证书注册次数等。
- 若只有一个实体可请求GAA密钥,可监控Zh接口和认证向量及GUSS的交付以向该实体计费,但此模型扩展困难。
5. GAA集成到大型网络
大型网络可能由多个PLMN组成,GAA中BSF通常位于归属网络。在大型网络中可能存在以下两个问题:
-
无BSF的网络
:并非所有PLMN都有BSF,可通过配置DNS将终端使用的地址解析为其他网络中BSF的IP地址,终端不受影响。但HSS/HLR需配置以处理来自外部BSF的跨运营商请求。
-
逻辑BSF
:大型网络中运营商可能有多个逻辑BSF,当前GAA规范未定义如何发现正确的BSF地址。以下是几种解决方案:
-
预配置BSF地址
:在UE中预配置,需网络侧额外支持,如OTA或OMADM服务器配置。UE启动GAA引导程序时会检查并使用预配置地址。
-
单一BSF门户或代理
:将UE请求转发到其HPLMN的BSF,但流量负担重,尤其是高峰时段。
-
BSF重定向
:利用HTTP重定向机制,主BSF根据接收到的IMPI或IMSI将UE重定向到实际处理引导的“工作”BSF。此方法UE无需决定联系哪个BSF,且无代理的流量负担,但并非所有UE实现都支持HTTP重定向。
graph LR
classDef process fill:#E5F6FF,stroke:#73A6FF,stroke-width:2px;
A(终端):::process -->|服务请求| B(BSF):::process
B -->|认证向量| C(HSS/HLR):::process
C -->|认证向量| B
B -->|引导| A
A -->|应用请求| D(NAF):::process
D -->|认证| A
这个流程图展示了终端、BSF、HSS/HLR和NAF之间的交互过程,包括服务请求、认证向量获取、引导和应用请求认证等步骤。
GAA部署指南与技术解析
6. 密钥生命周期设置的深入分析
在前面提到,密钥生命周期L与用户GAA服务请求平均间隔时间T的比值对GAA服务请求触发引导操作的次数有重要影响。为了更直观地展示这种关系,我们来看下面的表格:
| L与T的关系 | 引导操作情况 | 对BSF和HSS负载的影响 | 引导概率pB |
| ---- | ---- | ---- | ---- |
| L >> T | 引导操作平均间隔接近L | 负载相对较低 | (p_B = \frac{T}{L + T}),值较小 |
| L << T | 几乎每个服务请求都触发引导 | 负载显著增加 | (p_B = \frac{T}{L + T}),值接近1 |
从表格中可以清晰地看到,不同的L与T关系会导致不同的引导操作情况和负载情况。同时,引导概率pB也会随着L与T的比值变化而变化。
此外,我们之前提到的引导概率计算公式(p_B = \frac{T}{L + T})是在特定假设下得出的。如果服务请求不满足随机独立性假设,计算结果将不准确。例如,当服务请求间隔固定为T秒时,引导概率的计算方式会发生改变。假设(nT < L < (n + 1)T)(n为非负整数),引导将每((n + 1)T)秒发生一次,此时(p_B = \frac{1}{n + 1})。下面通过一个具体的例子来说明:
假设(T = 1)小时,当(L = 0.5)小时时,(n = 0),按照固定间隔的情况,(p_B = 1);而按照随机假设下的公式计算(p_B = \frac{1}{0.5 + 1}=\frac{2}{3})。这就体现了不同假设下引导概率计算的差异。
7. 2G GBA安全威胁应对机制详解
2G GBA针对不同的安全威胁采取了相应的应对机制,下面我们详细分析这些机制:
-
UE伪装威胁应对
-
中间人攻击
:攻击者要实施中间人攻击,需要满足多个条件。首先要知道受害者有SIM卡、订阅了2G GBA,并且使用支持A5/2的旧终端。由于这些条件同时满足的概率较低,所以实际风险不高。为了进一步降低风险,运营商可以加快淘汰A5/2算法,推广更安全的加密算法。
-
SIM克隆攻击
:这种攻击源于COMP128算法的弱点。攻击者试图找到GSM网络中合法用户的加密密钥K,从而完全伪装成受害者。为了防止这种攻击,建议运营商采用更安全的A3/A8算法变体,如相关标准中所建议的那样。
-
UICC - ME接口攻击
:终端平台安全保护了对SIM卡的访问和存储在其上的加密细节。在GAA的各种3GPP特定变体中,这种接口被攻击的风险相当。运营商可以通过加强终端平台的安全防护,如定期更新操作系统和安全补丁,来进一步降低风险。
-
BSF伪装威胁应对
:在GSM网络中,网络未经过认证,存在BSF向终端伪装的风险。2G GBA使用TLS对BSF进行认证,攻击者需要破解基于证书的TLS认证以及HTTP Digest提供的相互认证。攻击者不仅要知道GSM三元组的所有参数(特别是Kc),还需要突破TLS安全才能在Ub协议运行期间或之后获取Ks。这一系列的安全措施大大增加了攻击者实施伪装的难度。
-
降级攻击应对
:GAA终端可以选择使用3G GBA或2G GBA。2G GBA规范要求支持SIM的终端也支持USIM/ISIM的GBA_ME和GBA_U,并且在有USIM/ISIM可用时优先使用。这种机制确保了用户插入UICC卡时,不会使用SIM卡应用进行服务密钥推导,从而避免了降级攻击的发生。
8. 计费与GAA的操作流程
在GAA中,计费需要特定的“触发事件”,下面我们详细列出不同计费方式的操作流程:
-
按安全关联数量计费
1. 在BSF侧设置监控程序,对终端与BSF之间的Ub接口进行监控。
2. 监控程序记录每个终端建立的安全关联数量。
3. 根据记录的安全关联数量,按照预设的计费规则生成计费数据记录。
-
服务不在归属运营商网络的计费
1. 在BSF侧设置监控程序,监控GAA密钥或USS的交付事件。
2. 记录每次交付的相关信息,如交付时间、接收方等。
3. 根据记录的交付信息,向服务提供商收取相应费用。
-
按服务消费计费
1. 在NAF软件中设置监控模块,监控基于GAA密钥的UE向NAF认证次数、用户证书注册次数等事件。
2. 记录每个事件的发生次数和相关信息。
3. 根据记录的事件信息,按照服务消费的计费规则生成计费数据记录。
-
单一实体请求GAA密钥的计费
1. 设置监控程序,对Zh接口和认证向量及GUSS的交付进行监控。
2. 记录每次交付的相关信息,如交付时间、接收方等。
3. 根据记录的交付信息,向该实体收取相应费用。
9. GAA集成到大型网络的解决方案对比
在大型网络中,GAA集成面临着无BSF的网络和多个逻辑BSF的问题,下面我们对不同的解决方案进行对比:
|解决方案|优点|缺点|适用场景|
| ---- | ---- | ---- | ---- |
|预配置BSF地址|UE无需额外逻辑决定联系哪个BSF,可快速获取正确地址|需要网络侧额外支持,如OTA或OMADM服务器配置|网络规模较小,易于进行统一配置的场景|
|单一BSF门户或代理|UE无需决定联系哪个BSF|流量负担重,尤其是高峰时段|网络中逻辑BSF数量较少,且流量分布相对均匀的场景|
|BSF重定向|UE无需决定联系哪个BSF,无代理的流量负担|并非所有UE实现都支持HTTP重定向|网络规模较大,逻辑BSF分布较广,且UE对HTTP重定向支持较好的场景|
graph LR
classDef process fill:#E5F6FF,stroke:#73A6FF,stroke-width:2px;
A(终端):::process -->|服务请求| B(主BSF):::process
B -->|判断| C{选择BSF}:::process
C -->|重定向| D(工作BSF):::process
D -->|引导| A
A -->|应用请求| E(NAF):::process
E -->|认证| A
这个流程图展示了采用BSF重定向解决方案时,终端、主BSF、工作BSF和NAF之间的交互过程。终端发起服务请求,主BSF根据接收到的信息判断并选择合适的工作BSF进行重定向,工作BSF完成引导操作,最后终端向NAF发起应用请求并进行认证。通过这种方式,可以更有效地解决大型网络中多个逻辑BSF的问题。
超级会员免费看
15

被折叠的 条评论
为什么被折叠?



