解晓青 余晓光 余滢鑫 阳陈锦剑
1(华为技术有限公司松山湖研究所 广东东莞 523808)2(华为技术有限公司西安研究所 西安 710075)(xxqworkl@163.com)
2018年6月被3GPP冻结的Release 15标准首次解决了构建安全网络的问题.对于非可信拜访网络和家庭网络之间的信令和用户状态传输,以及用户身份和数据在非可信空口传输方面,5G提供了更全面的认证机制、更全面的数据安全保护、更严格的用户隐私保护,实现更灵活的网间信息保护.5G安全设计第1阶段填补了4G系统的安全漏洞,确保了5G网络新空口和架构中现有保护机制的安全性和可用性,形成了5G安全基础设施,解决了5G通信网络的基本安全问题,实现对用户接入5G网络时使用的基本通信协议的保护[1-2].
与4G相比,5G网络下主要有三大场景:eMBB(大带宽)、mMTC(低时延)、uRLLC(广连接),这些场景下的UE通过基站接入5G RAN,进而接入下沉的MEC,MEC通过承载网与5G Core互联,期间每个部分都存在大量的攻击与重点防护点[3],根据5G网络的整体组网以及5G网络数据存在控制面和用户面2个面的数据分析,5G网络安全渗透攻击可大致从2个横向面以及5个纵深点进行分析.2个横向面是控制面和用户面;5个纵深点是UE(终端)、RAN、MEC、承载网和核心网.5G安全总体框架如图1所示:
图1 5G安全总体框架
可以看出,在终端侧控制面的主要安全威胁主要是对硬件本身的攻击,通过非法启动存储运行等攻击终端,用户面威胁则大多是通过协议以及终端本身应用获取用户数据;RAN侧控制面主要集中在空口接入、身份认证、空口算法加密保护、防DoS攻击等,用户面威胁则集中在拦截用户上下行数据、非法终端接入等;MEC侧由于其下沉导致威胁面增加,控制面攻击可从近端威胁到企业的网络,进而攻击运营商核心网,进一步威胁到邻近企业园区网络,而对于用户面,众多企业应用将是攻击的最佳入口;承载网控制面威胁主要来自非法报文、基站侧以及互联网DoS攻击、切片间的隔离攻击等,用户面威胁主要来自对应用容器的威胁;核心网控制面威胁主要是各大DC区域的连接安全、虚拟化的资源层、3面隔离近端运维安全以及切片隔离传输安全等,用户面威胁则是核心网网元的容器攻击,由于目前都是采用云化部署,容器之间的相互隔离、容器与底层资源之间的安全隔离等都是攻击的重点方向[4].
5G网络渗透总体来说的路线可以是从攻击发起端开始,入侵应用终端,应用终端可以是合法终端也可以是攻击者伪造的非法终端,通过应用终端侵入基站,进一步渗透到MEC以及核心网,由于5G在企业上会大规模应用,可先入侵到企业应用,通过企业应用进一步入侵到核心网,之后可进行企业的内网渗透,包括放置后门,机密数据外发等.
渗透攻击手段在发起端可通过信息搜集的方式获取目标域名、真实IP、设备指纹信息等,进一步通过分析Web漏洞,方法有暴力破解、中间件漏洞、框架漏洞等获得攻击入口.后续可通过远程溢出RCE、反序列化RCE、代码/命令注入、SQL注入等获取权限,之后便是权限的提升以及维持,同时可进一步进行内网横向移动.总体渗透方法框架如图2所示:
图2 5G网络渗透框架
5G时代,万物互联,除去我们常见的手机电脑等常见设备,5G网络下的广连接场景将会有更多的设备接入到5G网络,终端的安全会变得尤其重要,本节主要从2个方面介绍5G网络环境下终端所面对的安全渗透威胁.
任何设备都有启动的时刻,在启动时如果篡改其预设的签名文件那么就有可能加载攻击者的程序.中心思想是分析启动链的安全机制,例如是否有基于签名的完整性校验,分析启动链的代码安全机制,通过探测常规代码陷阱,识别安全风险,例如溢出攻击.
通常启动链的防护主要有2种,分别是安全启动和可信启动.
2.1.1 安全启动攻击
安全启动是指只有通过密码学的手段验证的代码(具备完整性和合法性)才可加载和执行.安全启动基本思想首先是建立一个硬件信任根,硬件信任根是信任链的起点,不可篡改,再建立一条信任链:从信任根开始到启动代码,到操作系统,再到应用,一级验证一级,一级信任一级.从而把这种信任扩展到整个计算机,设备启动时,先执行RoT,验证公钥的Hash值,基于公钥对BIOS进行数据完整性和数据可信性验证,确认BIOS完整可信后,再执行.按同样的方式,逐级认证、执行.如图3所示,安全启动一开始就是验证固件,在验证通过之后就会将其加载,攻击手法可在验证之后加载之前替换为自定义的启动固件.
图3 安全启动流程
2.1.2 可信启动
可信启动是指软件和硬件能够按照它们被设计的行为运行,首先建立一个硬件信任根.
硬件信任根是信任链的起点,不可篡改,再建立一条信任链,从硬件信任根开始到启动代码,到操作系统,再到应用,一级度量一级,一级信任一级.从而把这种信任扩展到整个计算机系统,本地设备启动时逐级度量并将度量值拓展到TPM中,远程证明服务器获取本地设备TPM中的度量值,并与预置的度量值比较,整体流程如图4所示:
图4 可信启动过程简述
通过逆向分析终端固件的执行程序,查找关键调用函数(认证、授权),查找是否存在特殊的硬编码密钥,篡改固件;可在固件中植入后门,尝试加载篡改后的固件;尝试对设备进行复位操作,针对复位操作生成文件进行分析,提炼隐私信息.
比较经典的方法是:
1) 打开设备盒子,找到Flash器件;
2) 采用Flash读写工具直接从Flash读取Firmware;
3) 利用binwalk工具对Firmware进行逆向分析;
4) 拆解Firmware后植入后门,再打包并烧录到Flash;
5) 利用后门进一步攻击上层设备,或者窃听数据,或者在需要时发起攻击.
UE与gNB之间的Uu接口是公共开放的接口,攻击者可以利用该接口对5G网络或终端进行攻击.图5展示了5G空口面临的主要安全威胁[5]:
图5 5G空口安全威胁
主要有3种类型攻击:一种是欺骗基站,攻击者作为一个仿冒终端接入网络;另外一种是仿冒基站,对终端提供虚假服务;最后一种是对空口中的数据流窃听篡改攻击.
非法用户接入网络后会占用空口资源,也会存在非法入侵基站、入侵网络设备窃取机密信息的风险.5G场景下大量企业会应用5G终端,这种情况下,非法用户可仿冒正常的企业终端,接入企业的园区网络,进行内部攻击.比如企业园区5G监控摄像头攻击,可以利用1台自己的5G摄像头通过一定的手段接入企业园区5G网络,如果认证端没有对接入设备做鉴权,攻击者可以对内部网络做探测渗透等行为.攻击手段多种多样,包括大批量接入发送海量请求导致DDoS通过非法终端接入网络入侵企业生产环境,甚至进一步横向渗透入侵控制系统,窃取信息造成破坏等.
攻击者可使用简易无线设备以及开源软件架设伪基站,通常会仿冒模拟正常运营商网络的无线信号,对运营商网络性能造成影响,当正常注册、通话、切换等受影响时,受害者终端有可能会被吸附到伪基站上.在用户首次接入到运营商网络时终端身份标识IMSI是采用明文传输,只有认证通过并建立空口上下文后IMSI才会加密传输,利用此漏洞,攻击者可获取IMSI信息,造成隐私信息泄露.
UE接入基站,与基站之间的通信全部通过空口传输,同时UE还与核心网AMF之间存在NAS信令通信.空口数据在无线空口传播过程中,可能存在被窃听的风险,造成终端IMSI、电话号码、银行账号、网站密码等个人用户隐私信息泄露,被攻击者利用对用户进行非法跟踪、电信诈骗等;同时,信令数据也存在被攻击者篡改的风险,造成用户无法入网、网络设备无法正常服务等.
攻击者可在5G终端和基站之间通过信息截获方式获得明文密文,相互异或得到keystream,而keystream可以用来解密密文.
伪基站设置虚假小区,被ANR机制加入临区关系表,导致无效X2;伪基站仿冒正常临区ECGI,因大量UE切换失败导致正常小区被加入黑名单;伪基站使用已存在的PCI,制造PCI冲突,导致原基站更新PCI,小区短暂断服.
5G承载网的组网图大致可如图6所示.
图6 5G承载网简图
5G承载传输网按照位置可以划分成前传网络和回传网络.不同的网络采用的传输技术也不同:前传网络大部分直连或者无源波分,主要采用CPRI,eCPRI组网传输;回传网主要是IP组网传输[6].承载传输网面临的主要安全风险有以下几种:非法接入、数据窃听、数据篡改、https/http攻击、数据重放、DDoS攻击[5]等,下面简单介绍3种攻击方法.
非法接入有点类似RAN侧的攻击渗透,只是目标不一样,非法攻击者使用合法或者非法终端接入5G网络,对承载传输网使用嗅探工具进行嗅探、渗透攻击等动作,以进行更高危害行为.
攻击者可对5G网络中传输的数据进行拦截,拦截数据多种多样,如用户的隐私数据、通信内容等.此类风险多发生于N3接口的数据面数据、Xn接口的用户秘钥和O&M通道的用户名密码等.
网络攻击者主动对5G网中传输的内容进行拦截,对所传输的数据进行篡改、插入、删除等恶意攻击,导致目标设备收到错误的数据而出现系统遭受破坏、服务无法正常运行、系统被植入恶意代码或恶意指令等威胁.
在SSL通信过程中未严格实现证书合法性校验函数;在SSL通信过程中未严格实现主机名校验函数,通过中间人方式,在http传输时插入攻击代码,使远程受害者受到攻击.
多接入边缘计算(multi-access edge computing, MEC)为典型的资源边缘化模式,在移动网络边缘提供IT服务环境和云计算能力,实时完成移动网络边缘的业务处理.MEC就近提供边缘智能服务,以满足行业数字化在敏捷联接、实时业务、数据优化、智能应用、安全与隐私保护等方面的关键需求,以上MEC要完成的功能就意味着MEC更易受攻击者青睐[7].
系统(应用)中通过指定包名的方式显式调用了某一应用程序,但是此应用程序并没有被预装.攻击者发现此调用接口后,可以仿冒此应用程序,并被系统(应用)启动起来.攻击者通过模仿的方式,开发相同的界面,诱导用户使用,攻击者通过仿冒对应的展示内容,诱导用户去点击操作.
同主机安全一样,容器中运行的应用侧漏洞(如Web应用RCE漏洞、Redis未授权访问等)也会成为攻击者的突破口,攻击者可以利用这些漏洞进入容器内部并达成初始访问.
分析利用验证码产生的不同机制特点进行破解,把每一次返回包的token更新放入每一次的请求包实现循环暴力破解,可尝试对用户名和密码进行加载弱口令字典.
5G核心网,即5G Core Network,与5G接入网、5G承载网一同构成5G网络(第5代移动通信网络).5G核心网创新性地使用服务化架构,包含基于微服务架构的各个控制面NF以及用户面UPF,主要负责处理终端用户的移动管理、会话管理、认证鉴权、策略控制及数据传输等.其重要性不言而喻,以下介绍几点关于5G Core的安全渗透点.
利用故障(电压、时钟等)引起电路出现异常,根据异常信息分析芯片内部的敏感信息或者直接利用引起的电路异常来改变程序运行等.
网络攻击者可恶意使用XSS跨站脚本攻击,CSRF跨站请求伪造攻击、SSRF服务器端请求伪造等手段攻击核心网系统,也可以在页面中利用SCRIPT标签等来完成攻击.
可以利用SQL、命令注入等攻击,做到:
1) 查询数据库中的数据;
2) 执行任意数据库命令;
3) 上传下载任意文件;
4) 获取管理员权限.
5G时代来临,万物互联,不同运营商、不同的终端厂家都需要直面安全问题,而安全问题是非常核心的问题,关系到政府、企事业的正常运行,以上内容是5G安全所面临的一小部分攻击渗透点,不同的终端设备厂商会采取不同的方案与技术防御攻击者,这对于资源来说是一种较大的浪费,5G安全应该由各个行业都参与进来,制定统一安全标准,解决互信互认的问题.