D~DIDI~DIDIDI!!!!

0%

RRC-Redirection

概述

RRC(Radio Resource Control,无线资源控制)重定向是 LTE/5G 移动通信网络中的一种关键机制,用于在不同小区或不同无线接入技术(RAT)之间转移用户设备(UE)的连接。理解 RRC 重定向机制对于移动通信安全研究和网络优化具有重要意义。

RRC 协议基础

RRC 层功能

RRC 层位于无线协议栈的高层,负责管理 UE 与网络之间的控制面(Control Plane)交互:

功能 说明
连接管理 建立、维护和释放 RRC 连接
承载管理 无线承载(Radio Bearer)的建立、修改和释放
移动性管理 切换(Handover)、小区重选、重定向
测量配置 配置和报告无线测量
寻呼(Paging) 通知空闲态 UE 有来电或系统消息更新
安全管理 加密和完整性保护的激活
系统信息广播 SIB(System Information Block)的发送

RRC 状态

状态 说明 适用网络
RRC_IDLE 空闲态,UE 没有活动的 RRC 连接 LTE/NR
RRC_CONNECTED 连接态,UE 有活动的 RRC 连接 LTE/NR
RRC_INACTIVE 非活动态,保持 UE 上下文但释放空口资源 仅 5G NR

RRC 连接流程

UE 从空闲态进入连接态的完整流程:

1
2
3
4
5
6
7
8
9
10
11
12
UE(IDLE)                                   eNB/gNB
| |
|--- Msg1: Random Access Preamble --------->| (PRACH)
|<-- Msg2: Random Access Response ----------| (PDSCH, CCCH)
|--- Msg3: RRCConnectionRequest ----------->| (PUSCH, CCCH → SRB0)
| 包含: UE Identity, 建立原因 | 建立 SRB1 承载
|<-- Msg4: RRCConnectionSetup --------------| (PDSCH, CCCH)
| 包含: SRB1 配置,无线资源配置 |
|--- RRCConnectionSetupComplete ----------->| (PUSCH, DCCH → SRB1)
| 包含: NAS 消息(Attach/TAU/Service Req) |
| |
| ===== RRC 连接建立完成 ===== |

RRC 重定向机制

什么是 RRC 重定向

RRC 重定向是网络侧在以下场景中指示 UE 转移到另一个小区或频率的过程:

触发场景 说明
寻呼重定向 在寻呼过程中直接指定 UE 切换到另一个小区
连接释放重定向 在 RRCConnectionRelease 中携带重定向信息
负载均衡 网络侧为负载均衡将 UE 重定向到负载较低的小区
覆盖优化 当前小区信号质量差时将 UE 重定向到更优小区

情况一:寻呼重定向

在寻呼(Paging)过程中,网络可以直接指定 UE 切换到另一个小区:

1
2
3
4
5
6
7
8
eNB/gNB                                    UE(IDLE)
| |
|--- Paging (含重定向信息) ----------------->|
| - redirectedCarrierInfo |
| - 目标频率/RAT 信息 |
| |
| UE 收到寻呼后重新选择到目标频率 |
| |

情况二:连接释放重定向

在 RRCConnectionRelease(连接释放)消息中,网络可以携带重定向到指定小区的信息:

1
2
3
4
5
6
7
8
9
10
eNB/gNB                                    UE(CONNECTED)
| |
|--- RRCConnectionRelease ----------------->|
| - redirectedCarrierInfo: |
| · eutra-CarrierFreq (LTE频点) |
| · interRAT-target (异系统目标) |
| - idleModeMobilityControlInfo |
| |
| UE 释放连接并在目标频率驻留 |
| |

重定向信息元素

RRCConnectionRelease 消息中的关键信息元素:

信息元素(IE) 类型 说明
redirectedCarrierInfo 可选 指定重定向的目标载波频率
idleModeMobilityControlInfo 可选 空闲态移动性控制信息
releaseCause 必选 释放原因(other、cs-FallbackHighPriority 等)

redirectedCarrierInfo 结构

1
2
3
4
5
6
7
8
9
RedirectedCarrierInfo ::= CHOICE {
eutra ARFCN-ValueEUTRA, -- LTE 频点
geran CarrierFreqsGERAN, -- GSM 频点列表
utra-FDD ARFCN-ValueUTRA, -- WCDMA FDD 频点
utra-TDD ARFCN-ValueUTRA, -- WCDMA TDD 频点
cdma2000-HRPD CarrierFreqCDMA2000, -- CDMA2000 HRPD
cdma2000-1xRTT CarrierFreqCDMA2000, -- CDMA2000 1xRTT
nr CarrierInfoNR -- 5G NR 频点 (Rel-15+)
}

安全研究视角

RRC 重定向攻击

RRC 重定向机制在安全研究中具有重要意义,因为攻击者可能利用该机制实施降级攻击:

攻击类型 原理 风险
降级攻击 伪基站发送 RRCConnectionRelease 将 UE 重定向到 2G/3G UE 被迫使用安全性较低的旧协议
IMSI 捕获 重定向到无加密的 2G 网络后获取 IMSI 用户隐私泄露
中间人攻击 重定向到攻击者控制的伪基站 通信被监听或篡改
拒绝服务 持续发送重定向使 UE 无法正常驻留 用户无法使用网络服务

攻击流程示例

1
2
3
4
5
6
7
8
9
10
11
UE           伪基站(Fake eNB)         真实基站(Real eNB)
| | |
|-- 连接请求 ---->| |
| | |
|<-- RRCConnectionRelease -----------------|
| redirectedCarrierInfo: |
| 目标 = 2G GSM 频点 |
| | |
| UE 降级到 2G -----> |
| (2G 缺乏认证和加密) |
| | |

防御措施

防御手段 说明
NAS 层安全验证 UE 应验证重定向消息的完整性(但 RRC 释放前可能未激活安全)
PLMN 验证 UE 检查目标小区是否属于合法运营商网络
禁止 2G 回落 在 UE 设置中禁用 2G 网络(许多现代手机支持)
5G SA 部署 5G SA 模式下 RRC 安全机制更强,RRC_INACTIVE 状态提供更好的保护
SUPI/SUCI 保护 5G 使用加密的用户标识,避免 IMSI 暴露

实验环境搭建

使用 srsRAN 观察 RRC 重定向

1
2
3
4
5
6
7
8
9
10
11
# 配置 srsENB 发送 RRC 重定向
# 编辑 enb.conf
[enb]
enb_id = 0x19B
mcc = 001
mnc = 01
n_prb = 50

# 启用 RRC 重定向功能
[rrc]
redirect_carrier_freq = 100 # 目标 EARFCN

使用 Wireshark 抓包分析

1
2
3
4
5
# 捕获 S1AP 接口上的 RRC 消息
tshark -i eth0 -f "sctp port 36412" -Y "s1ap.RRCConnectionRelease"

# 过滤 RRC 重定向消息
tshark -i eth0 -Y "lte-rrc.redirectedCarrierInfo"

关键观察点

观察项 Wireshark 过滤器 说明
RRC 连接建立 lte-rrc.rrcConnectionSetup 观察 SRB 配置
RRC 连接释放 lte-rrc.rrcConnectionRelease 检查是否携带重定向
重定向信息 lte-rrc.redirectedCarrierInfo 查看目标频点信息
NAS 消息 nas-eps 分析 NAS 层交互

相关知识

RRC 重定向是 LTE/5G 移动通信中的核心移动性管理机制,理解其工作原理对于网络优化、覆盖分析和安全研究都至关重要。本文与 LTE、5G、srsRAN、srsLTE 等移动网络技术文章密切相关,共同构成蜂窝网络安全研究的知识体系。

⚠️ 安全提示

  • 移动网络安全研究必须在合法授权范围内进行
  • 未经授权部署伪基站违反电信相关法律法规
  • 实验应在屏蔽环境中使用测试 SIM 卡进行
  • 本文仅用于学术和安全研究目的