内容简介:一周前,1月7日,四大安全学术顶级会议之一的IEEE S&P 2019 (May 20-22, 2019),又公开了一篇LTE协议栈漏洞有关的论文:“Touching the Untouchables: Dynamic Security Analysis of the LTE Control Plane”。之前该会议的同一领域的另一篇论文,“Breaking LTE on Layer Two”来自德国波鸿鲁尔大学,也引起过一番热烈讨论,关于这篇论文的解读可以看我们团队博客(https://unicorn.3
一周前,1月7日,四大安全学术顶级会议之一的IEEE S&P 2019 (May 20-22, 2019),又公开了一篇LTE协议栈漏洞有关的论文:“Touching the Untouchables: Dynamic Security Analysis of the LTE Control Plane”。之前该会议的同一领域的另一篇论文,“Breaking LTE on Layer Two”来自德国波鸿鲁尔大学,也引起过一番热烈讨论,关于这篇论文的解读可以看我们团队博客(https://unicorn.360.com/blog/2018/07/03/aLTEr/)。这次我们讨论一下韩国科学技术院(KAIST)的这篇论文。
摘要(如果你懒得看完全文):该论文使用了一种半自动化的模糊测试方法,基于开源项目srsLTE和openLTE,对LTE 控制面的NAS层和RRC层的安全性进行了系统的测试,并且找出了51个安全漏洞,其中有36个是新发现的漏洞,15个是已知漏洞。
针对这篇论文的内容,我们将从其研究方法,漏洞产生原因,和漏洞的危害性进行解读。
1 研究方法 – 半自动化模糊测试
此方法被作者命名为LTEFuzz,但是与传统漏洞挖掘中所指的Fuzz还是有区别的,本篇论文并不是在代码层次的Fuzz,不是打算去找基带侧实现部分内存破坏类型的漏洞,而是在信令层次的模糊测试。
作者首先将LTE控制面NAS层和RRC层可能出现的安全问题进行总的分类,分为三个类别。类别一,是对明文信令的处理不当所导致的安全问题;类别二,对加密后的信令处理不当导致的安全问题;类别三,对鉴权流程处理不当所引起的安全问题。
针对每一种类别,作者利用AT Command在商用芯片上导出NAS层和RRC层所有的信令,并以此生成测试用例,测试用例覆盖较为全面,我们猜想这也是命名为LTEFuzz的原因所在。
作者将生成的测试用例,分别利用开源的srsLTE项目中UE侧代码去测试商用基站和核心网的的安全性,利用openLTE项目测试商用终端的安全性。之所以分别用两个开源项目作为测试工具,是由于srsLTE的网络侧代码实现是enb与mme分离的,因此openLTE修改起来更为方便,而UE侧代码openLTE并没有实现,所以只能使用srsLTE中的srsUE。
最后,作者基于srsUE和openLTE的日志系统,打造了一款简单的决策机制,能够检测出异常流程,并且将这些测试结果进行分类。下面将对测试发现的漏洞进行分析。
2 漏洞分析
经过作者的LTEFuzz模糊测试,得到了51个漏洞,其中有36个是新型未被公开发表的漏洞,15个是已经被前人找到了。可以说,作者的模糊测试方法还是卓有成效的。漏洞被作者分为5类:
- Property 1-1是协议本身对明文消息处理不当的漏洞类型(协议漏洞类型)
- Property 1-2是协议中已经规定要实现加密和完整性保护,但是厂商实现的时候没有遵循标准要求的漏洞类型(实现漏洞类型)
- Property 2-1 是接收方没有正确验证信令完整性的漏洞(实现漏洞类型)
- Property 2-2 是与重放攻击,即序列号相关的漏洞(实现漏洞类型)
- Property 3 是鉴权流程可以被绕过的漏洞(实现漏洞类型)
漏洞以及分类见下表
其中标记了[x]引用的,都是前人已经发现的漏洞。其中[2]就是我们团队2016年的一项研究成果。
发现了漏洞,可以怎样利用呢?通过对上述漏洞的组合利用,攻击者可以实现以下几种攻击方式:
BTS resource depletion attack: 资源占用型的攻击,这种攻击方式是通过攻击基站从而实现对目标终端的拒绝服务攻击,通过多次触发authentication request,并且拒绝回复使基站关闭与合法用户的连接。
Blind DoS attack:这种攻击方式是仿造合法终端,向基站发起RRC连接,并且导致合法用户无法再次与基站建立RRC连接。
Remote de-registration attack: 这种攻击方式是指将正在被服务的终端驱逐出基站,攻击者可以通过发送明文的连接请求,重放等方式使基站对攻击者进行服务而中断合法终端的连接。
SMS phishing attack:这种是一种冒充合法用户发送虚假短信的攻击方式,可能仅对特定核心网设备有效。
AKA Bypass attack:这是一种绕过终端鉴权的攻击,但是仅对特定基带芯片有效。
3 漏洞危害
从五种漏洞类型来分析漏洞的危害程度。
其中第2种到第5种,都属于实现型漏洞,均是厂商在实现的时候没有完整遵循协议的要求而导致的,因此各个厂商的具体情况会不相同,即存在于特定设备型号的特定版本中,可以通过厂家升级软件版本来修复。
其中可以产生DoS类攻击的漏洞危害略小,而虚假短信攻击(核心网设备漏洞)和绕过AKA鉴权的攻击(手机基带漏洞)是两种高危攻击。AKA鉴权绕过的攻击,论文中称在几款手机中已得到验证,但这几款手机型号已经比较老(韩国某品牌2013/2014年款),我团队正在检验目前主流手机型号是否存在该漏洞。
第1种漏洞类型,即Property1-1类的协议漏洞,此种协议型漏洞不论任何厂商的设备,都存在此类问题。这类漏洞存在的根本原因是,在网络和终端完成鉴权之前,有一些广播消息和初始化消息无法加密。对这类信令消息进行加密和签名是非常消耗计算能力的,因此此类问题在5G网络中仍将存在,安全专家们仍在研究讨论是否有代价较小的解决方案。
在Property1-1类型的漏洞中,除了已标记参考文献的,还剩7种。这7种很难说是全新的漏洞,因为基本上都属于无法加密的初始消息。
总的来说,漏洞的危害程度不是非常大。Fuzzing工具代码据称会对某些厂家公开,但不会公之于众。
最后八卦一下KAIST的这个研究团队。Yongdae Kim,金教授带领的这个研究团队,叫SysSec lab,是一个长期活跃在嵌入式安全、传感器安全、无线安全等领域的安全研究团队。这篇论文的第一作者,Hongil Kim同学,从2016年就开始捣鼓LTE开源代码。2016年我们在他们实验室见面聊天的时候,他就表示一定要写出一套LTE fuzzing工具。努力了两年,功夫不负有心人呐~
这篇论文的工作,还有一个亮点,就是他们得到了韩国两家运营商的许可,允许他们对现网设备做测试。为了避免测试对现网造成严重后果,他们必须非常小心的设计测试方案,有些测试使用了femtocell这种飞蜂窝基站,以免波及其他用户。无论如何,这样的测试机会是很难得的,正应了这篇论文的标题“Touching the Untouchables”。
以上所述就是小编给大家介绍的《一网打尽核心网及终端协议实现漏洞》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!
猜你喜欢:- Symantec终端防护内核内存信息泄漏漏洞分析(CVE-2018-18366)
- 终端依赖者福利:终端也能实现翻译功能了
- 程序员必备之终端模拟器,让你的终端世界多一抹“颜色”
- 程序员必备之终端模拟器,让你的终端世界多一抹 “颜色”
- 漫淡终端技术未来
- Golang获取终端输入
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
Eloquent JavaScript
Marijn Haverbeke / No Starch Press / 2011-2-3 / USD 29.95
Eloquent JavaScript is a guide to JavaScript that focuses on good programming techniques rather than offering a mish-mash of cut-and-paste effects. The author teaches you how to leverage JavaScript's......一起来看看 《Eloquent JavaScript》 这本书的介绍吧!