当前位置: 首页 > news >正文

保姆级教程:用Wireshark抓包实战分析5G NAS安全模式建立全过程

5G NAS安全模式建立全流程实战:Wireshark抓包深度解析

在5G网络的核心网交互中,NAS(Non-Access Stratum)安全模式的建立是保障用户隐私与数据安全的关键环节。不同于4G时代相对简单的安全机制,5G引入了更复杂的密钥派生体系和双向认证流程。本文将带您通过Wireshark工具,从实际抓包数据出发,逐步拆解从Registration Request到Security Mode Complete的完整信令交互过程。

1. 实验环境搭建与抓包准备

1.1 基础工具配置

开始分析前,需要准备以下实验环境:

  • 5G测试网络:可以是商用网络测试环境或实验室搭建的5G核心网
  • 支持5G的终端设备:建议使用商用5G手机或专业测试UE
  • Wireshark 3.6+版本:需安装最新的5G协议解析插件
  • PCAP采集设备:如便携式抓包设备或直接连接核心网镜像端口

关键配置技巧

# 在Linux环境下设置网卡混杂模式 sudo ip link set eth0 promisc on # 启动Wireshark抓包(需root权限) sudo wireshark -k -i eth0

1.2 抓包过滤器设置

针对5G NAS流程,推荐使用以下显示过滤器组合:

  • ngap || nas-5gs- 聚焦N2/N1接口信令
  • nas-5gs && (nas_5gs.mm.registration_request || nas_5gs.security_mode_command)- 精确定位关键消息
  • frame contains "Security Mode"- 捕获所有安全模式相关消息

注意:实际环境中可能需要根据PLMN ID或UE ID进一步过滤,避免数据混杂

2. 初始注册请求解析

2.1 未加密Registration Request结构

当UE首次接入网络时,典型的未加密注册请求包含以下关键字段:

字段名十六进制标识说明
Security header type0x00指示未加密的明文消息
ngKSI0x07密钥集标识符(低3位有效)
UE security capabilities0x80,0x00,0x01支持的加密算法列表
SUCI/GUTI变长用户隐藏标识或临时ID

在Wireshark中,这些字段会以树状结构展示:

NAS-5GS (Registration Request) ├── Protocol discriminator ├── Security header type ├── Message type ├── ngKSI and Registration type └── UE security capabilities

2.2 加密Registration Request特征

当UE存在有效安全上下文时,消息呈现不同特征:

  1. Security header type变为0x01(完整性保护)或0x02(加密+完整性)
  2. 出现NAS message container字段,内含加密后的完整注册信息
  3. MAC值用于完整性验证(通常4字节)

典型抓包示例

0000 02 01 00 00 01 00 00 01 00 00 00 00 00 00 00 00 0010 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0020 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0030 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

3. 安全模式建立关键流程

3.1 Security Mode Command详解

AMF下发的安全模式命令包含以下核心元素:

  • Selected NAS security algorithms:网络选择的加密/完整性算法对
  • Replayed UE security capabilities:回显的UE能力集(用于防篡改)
  • Additional 5G security information:包含RINMR和HDP标志位

在Wireshark中验证MAC的步骤:

  1. 右键点击NAS-5GS协议层 → "Decode As..." → 选择5GS-NAS
  2. 在首选项设置中配置正确的Kamf密钥
  3. 检查"Integrity check"字段应为"Successful"

3.2 Security Mode Complete分析

UE响应的安全模式完成消息需要重点关注:

  1. NAS message container(如果RINMR置位):包含完整的初始注册请求
  2. IMEISV(如果被请求):设备标识的加密传输
  3. MAC验证:确认UE已正确应用安全算法

常见问题排查

  • 如果MAC验证失败,检查密钥派生路径是否正确:
    Kseaf → Kamf → Knas-int → MAC
  • 加密失败时确认算法协商结果:
    # 算法标识对应表 ALGORITHMS = { 0: '5G-EA0', 1: '128-5G-EA1', 2: '128-5G-EA2', 4: '128-5G-EA3' }

4. 安全上下文激活验证

4.1 双向保护机制测试

建立安全模式后,可通过以下方法验证保护机制:

  1. 完整性保护测试:篡改消息中的任意字节,观察是否被丢弃
  2. 加密验证:尝试用错误密钥解密后续NAS消息
  3. 计数器同步检查:连续发送多条消息验证NAS COUNT递增

4.2 典型故障场景模拟

故障类型现象Wireshark过滤条件
算法不匹配Security Mode Rejectnas_5gs.security_mode_reject
密钥不同步连续鉴权失败nas_5gs.authentication_failure
COUNT溢出连接异常释放tcp.flags.reset == 1

提示:在实际网络调试中,建议同时抓取N2接口(NGAP)消息,可更全面定位问题根源

通过上述步骤,我们完整还原了5G NAS安全模式建立的每个技术细节。掌握这些实战分析方法后,您将能够:

  • 独立诊断5G鉴权过程中的各类异常
  • 验证网络侧安全策略配置的正确性
  • 优化终端设备的密钥管理机制
  • 深入理解5G比4G增强的安全特性实现

(正文结束)

http://www.gsyq.cn/news/1464026.html

相关文章:

  • 三、Spring
  • CPT Markets:经纪商服务体验的理性观察
  • 从ReLU到Tanh:浅层神经网络激活函数怎么选?看完这篇避坑指南再决定
  • 从通信系统到振动分析:矩阵束(Matrix Pencil)方法如何成为工程界的‘瑞士军刀’?
  • 期货量化限价挂单总漏状态:天勤 InsertOrderTask 用法
  • Windows窗口管理革命:用AlwaysOnTop实现300%效率提升的终极方案
  • 实地探访深圳木点点整装:21年本土工厂,凭什么能做到84%转介绍率? - 产品测评官
  • qorder实战:基于快马平台快速集成订单状态管理与物流跟踪接口
  • 律所多人协作办案的实践方法:权限管理、任务跟踪与在线协同的落地经验
  • 如何用Pixelorama零基础成为像素艺术创作高手:从入门到精通的完整指南
  • 元宝 LeetCode 2977. 转换字符串的最小成本 II C语言实现
  • 【AI工具产品路线图预测权威指南】:20年实战经验总结的5大关键信号与3年趋势推演模型
  • 别再只懂MSE了!PyTorch实战:用Smooth L1 Loss搞定目标检测中的边界框回归
  • 手把手教你用TwinCAT 3为EtherCAT设备生成XML配置文件(附避坑指南)
  • 别再死记硬背了!用这4种方法搞定正激拓扑的磁复位,选型避坑指南
  • 2026年新消息:东莞诚信的圆瓶贴标机定做厂家选型指南与骐麟新创智能推荐 - 2026年企业资讯
  • RTX5凭啥通过汽车级安全认证?深入剖析其在STM32F407上的零中断延迟与确定性
  • 3分钟快速安装Figma中文界面插件:设计师人工翻译校验的终极指南
  • 保姆级教程:用MATLAB处理CSV实测数据,从频谱到1/3倍频程的完整分析流程
  • 别再在PyCharm里直接敲pip install了!SyntaxError报错的真正原因和3种正确安装姿势
  • Matlab版DBN-BP两阶段回归预测工具包:含训练脚本、可视化结果与实测数据
  • Logstash管道(Pipeline)配置入门:手把手教你写第一个`.conf`文件并理解input/filter/output
  • FastAPI+Uniapp私域知识库问答系统:支持PDF/TXT上传、多端部署与语义检索
  • GCC 的 inline 扩展,和c99 inline规则的异同,static inline的统一
  • AI工具×智能简历:3天打造HR秒回率超85%的动态求职系统
  • 轻量级3D场景图技术:开放词汇与语义属性组合
  • 用Python+OpenCV复现1952年植物光谱实验:从叶片颜色到叶绿体提取,手把手教你做高光谱分析
  • 【无敌数据驱动】【自动驾驶】一种数据驱动的优化前馈补偿器的方法,用于自动驾驶汽车控制研究(Matlab代码实现)
  • 华为WLAN三层漫游实战:旁挂组网下,如何让不同VLAN的AP无缝切换不掉线?
  • 告别单核苦力!手把手教你用DSP6678的MPAX实现多核镜像共享(附完整工程配置)