一个思科路由器漏洞给全球带来巨大隐患

2019 年 5 月 18 日 黑白之道

文章来源:云头条

研究人员发现了可以闯入思科安全启动过程的一种方法,这可能会影响全球各地的数百万路由器。

 

思科1001-X系列路由器与普通的家用路由器看起来不太一样。它更庞大,价格也贵得多,负责为证券交易所、公司办公室和地方购物中心等地方提供可靠连接。换句话说,该设备在一些机构(包括处理高度敏感信息的机构)扮演关键角色。现在研究人员披露了一种远程攻击,这种攻击可能让黑客得以接管任何1001-X路由器,并获取流经该路由器的所有数据和命令。


而之后的情况只会变得更糟。


为了闯入路由器,安全公司Red Balloon的研究人员钻了两个漏洞的空子。第一个是思科IOS操作系统(别与苹果的iOS搞混了)中的一个漏洞,该漏洞让黑客得以远程获取设备的root访问权。这是一个糟糕的漏洞,但并不罕见,对路由器而言尤为如此。但也比较容易通过软件补丁来修复它。


然而,第二个漏洞危险得多。一旦研究人员获得了root访问权,他们可以绕过路由器最基本的安全保护机制。这项名为Trust Anchor(信任锚)的思科安全功能就部署在该公司自2013年以来制造的几乎所有企业级设备中。事实上,研究人员演示了在一个设备中绕过该机制的方法,这表明如果针对特定设备进行改动,可以突破全世界数亿个思科交换机上的Trust Anchor,包括从企业路由器、网络交换机到防火墙的所有产品。


实际上,这意味着攻击者可以利用这种攻击手法,完全攻陷这些设备所连接的网络。考虑到思科的产品无所不在,潜在的后果会很严重。


Red Balloon的创始人兼首席执行官Ang Cui过去经常披露重大的思科漏洞,他说:“我们已表明,我们可以悄悄地并持续地禁用Trust Anchor。这意味着我们可以任意改动思科路由器,而Trust Anchor仍会报告路由器值得信赖。这很可怕,也很糟糕,因为这项功能用在每一款重要的思科产品,每一款。”


丢弃Trust Anchor


近些年来,关注安全的公司日益将“secure enclave”添加到主板上。不同的解决方案有不同的名称:英特尔有SGX,Arm有TrustZone,Apple有secure enclave,思科则有Trust Anchor。


它们各自包括计算机常规内存的一个安全部分或者独立芯片,这好比是一片安全、隐蔽的绿洲,远离混乱喧闹的计算机主处理器。无论对系统拥有多大的控制权,任何用户或管理员都无法改动secure enclave。由于具有不可改动的性质,secure enclave可以监视并验证其他一切的完整性。


安全计算工程师通常认为这种方案理论上很可靠,部署起来很高效。而实际上,单单靠一个部件充当整个系统的把门人可能很危险。一旦破坏这道防线(这在许多公司实施的系统中已被证明是可行的),设备的关键保护机制就荡然无存。更糟糕的是,对enclave做手脚可以让人觉得一切完好,哪怕实际情况并不好。


思科1001-X就是这种情况。Red Balloon的团队明确表明,他们可以闯入该设备的安全启动过程,这是Trust Anchor实现的一项功能,设备开启时可以保护协调硬件和软件的基本代码,并检查它是否真实的且未经改动。这是确保攻击者无法全面控制设备的一种关键方法。


思科ASR 1001-X路由器


周一思科宣布发布针对Red Balloon研究人员发现的IOS远程控制漏洞的补丁。该公司表示,它还将为所有可能容易受到像研究人员演示的攻击这样的secure-enclave攻击的产品系列提供修复程序。思科在公开披露之前拒绝详细描述这些修复程序的性质或时间。它还对安全启动漏洞直接影响Trust Anchor的说法表示了异议。据思科的安全公告显示,所有修复程序离发布还有几个月的时间,目前还没有变通方法。思科表示,等补丁果真发布,它们将“需要内部重新编程”,这意味着无法远程推送修复程序,因为它们实在太重要了。


发言人在书面声明中对《连线》杂志说:“有个地方需要说明一下,思科宣传几项有关的、互补的平台安全功能。与此讨论有关的一项功能是思科安全启动,该功能为系统软件的完整性和真实性提供了信任根源(root of trust)。某些思科平台里面提供的另一项功能是Trust Anchor模块,该模块有助于为系统提供硬件真实性、平台身份及其他安全服务。Trust Anchor模块不直接参与Red Balloon演示的攻击。”


思科似乎有意区分其“Trust Anchor技术”、“Trustworthy Systems”(可信赖系统)和“Trust Anchor模块”,这也许可以解释为什么它只认为安全启动与该研究有牵连。

不过,Red Balloon的研究人员不敢苟同。他们特别指出,思科的专利及其他文件表明Trust Anchor实施了安全启动。如果安全启动遭破坏,Trust Anchor必然也会遭到破坏,因为所有工具都在一条信任链中。思科的这份资料(https://www.cisco.com/c/dam/en_us/about/doing_business/trust-center/docs/trustworthy-technologies-datasheet.pdf)直观地表明了这一点。

Cui说:“这就是为什么他们称之为anchor!它并不是信任浮标(trust buoy)。”


FPGA之旅


该研究小组还包括Red Balloon的首席科学家Jatin Kataria和独立安全研究人员Rick Housley,他们通过对Trust Anchor核心中名为“现场可编程门阵列”(FPGA)的硬件部件做手脚,绕过了思科的安全启动保护机制。计算机工程师常常称FPGA很“神奇”,因为它们的行为像微控制器(常用于嵌入式设备的处理器)那样,但又可以在现场重新编程。这意味着与传统处理器不同:传统处理器一旦出厂,就无法被制造商进行物理改动,FPGA的电路可以在部署后加以改变。


FPGA从名为比特流的文件中提取编程内容,该文件通常由思科等硬件制造商专门编写。为了防止FPGA被搞恶作剧的外人重新编程,FPGA比特流极难从外面解读。它们包含一系列复杂的配置命令,这些命令实际上规定了电路中的逻辑门是打开还是关闭;评估FPGA的安全研究人员发现,映射FPGA比特流逻辑需要异常强大的计算能力。


但Red Ballon的研究人员研究思科的Trust Anchor实施FPGA的方式后发现,他们不需要映射整个比特流。他们发现,思科的安全启动检测到系统中的信任遭破坏后,会等100秒(思科工程师通过编程设定的暂停,也许是为了万一出现故障,有足够的时间来部署修复更新),然后实际终结设备电源。研究人员意识到,通过改动控制该终结开关(kill switch)的比特流部分,他们可以覆盖它。然后,尽管安全启动正确无误地检测到威胁,设备也会正常启动。


Red Balloon的Kataria说:“这是一大发现。Trust Anchor要通过某种物理引脚表明发生了不好的事情。于是我们开始进行逆向工程,其中每个引脚在电路板的物理布局中显露无遗。我们将禁用某一排的所有引脚,尝试启动路由器;如果路由器仍正常工作,我们就知道所有那些引脚不是我们要找的。最终我们找到了复位引脚,并一路反推,最终找到比特流的那个部分。”


研究人员在六个1001-X系列路由器的主板上进行了这项试错试验。每个路由器售价高达10000美元,因此调查起来成本太高,差一点开展不了。他们还在物理操纵和焊接电路板以查找复位引脚的过程中弄坏了两个路由器。


攻击者会像Red Balloon那样事先完成所有这些工作,在测试设备上确定远程攻击顺序,之后再部署。要发动这种攻击,黑客先要利用远程root访问漏洞以获得立足点,然后实施第二阶段以挫败安全启动,可能还要更深入地潜入Trust Anchor。这时候,受害者没有理由怀疑有任何岔子,因为他们的设备会正常启动。


嵌入式设备和工业控制安全公司Atredis的联合创始人兼首席运营官Josh Thomas说:“除了思科外,但愿这项研究暴露的问题还会提醒其他公司,这些设计原则不再那么安全可靠。这证明不能光依靠FPGA为你做神奇的工作。它处于很低的层面,因而极难察觉。在你覆盖安全启动时,设备中的所有信任都在那一瞬间消失了。”


更严重的问题


Thomas和Red Balloon的研究人员表示,他们迫切希望看到思科会发布什么类型的修复程序。他们担心,如果不对思科的硬件anchor架构进行物理更改,可能无法完全消除这个漏洞。这可能需要在拥有加密比特流的未来几代产品中实施FPGA。部署起来从财务上和计算资源上来说会比较艰巨,但不会容易受到这种攻击。


而这项研究的意义并不仅限于思科。Thomas和他的Atredis联合创始人Nathan Keltner强调,更大的影响可能是该研究提出的新概念,可能由此带来操纵全球无数产品中FPGA比特流的新方法,包括高风险或敏感环境中的设备。


不过目前,Red Balloon的Cui只担心全球所有易受此类攻击的思科设备。思科告诉《连线》杂志,它目前没有计划发布一个审计工具,以便客户评估自己的设备是否已遭到攻击;该公司表示,没有证据表明外头有人在采用这种攻击手法。


但正如Cui指出的那样,“对我们来说,数万美元和三年的研究工作对我们来说投入很大。但是,如果一家有动机的企业拥有大量资金,派全职员工专注于这项工作,就可以极快地拿出对策。对它们来说这很值得,非常值得。”


思科对此次事件的声明


思科始终坚持公开透明的原则。当出现安全问题时,我们会公开进行处理,并将其作为首要任务,以帮助我们的客户第一时间了解所发生的问题及解决办法。5月13日,思科发布了一份安全公告,指出在思科专有安全启动功能的一个硬件组件上,存在逻辑处理访问控制漏洞。思科产品安全突发事件响应团队(PSIRT)尚未发现任何恶意使用这一漏洞的情况。随后思科会发布针对此漏洞的修复程序。

你可能喜欢

思科发布14个高严重性漏洞警报,黑客可远程攻击!

突发!思科底层设备漏洞遭滥用,国内多家IDC及机构网络瘫痪

大量思科设备存在IPv6死亡之Ping漏洞

登录查看更多
0

相关内容

全球领先的互联网解决方案供应商
斯坦福2020硬课《分布式算法与优化》
专知会员服务
118+阅读 · 2020年5月6日
【复旦大学-SP2020】NLP语言模型隐私泄漏风险
专知会员服务
24+阅读 · 2020年4月20日
【中科院自动化所】视觉对抗样本生成技术概述
专知会员服务
35+阅读 · 2020年4月15日
【中国人民大学】机器学习的隐私保护研究综述
专知会员服务
131+阅读 · 2020年3月25日
安全和健壮的医疗机器学习综述,附22页pdf
专知会员服务
46+阅读 · 2020年1月25日
“黑客”入门学习之“windows系统漏洞详解”
安全优佳
8+阅读 · 2019年4月17日
ZigBee 网络安全攻防
计算机与网络安全
13+阅读 · 2019年4月15日
基于Web页面验证码机制漏洞的检测
FreeBuf
7+阅读 · 2019年3月15日
被动DNS,一个被忽视的安全利器
运维帮
11+阅读 · 2019年3月8日
TensorFlow、Caffe、Torch 三大深度学习框架被存在安全漏洞
一个人的企业安全建设之路
FreeBuf
5+阅读 · 2017年7月7日
Revealing the Dark Secrets of BERT
Arxiv
4+阅读 · 2019年9月11日
Arxiv
13+阅读 · 2018年4月6日
Arxiv
5+阅读 · 2015年9月14日
VIP会员
相关资讯
“黑客”入门学习之“windows系统漏洞详解”
安全优佳
8+阅读 · 2019年4月17日
ZigBee 网络安全攻防
计算机与网络安全
13+阅读 · 2019年4月15日
基于Web页面验证码机制漏洞的检测
FreeBuf
7+阅读 · 2019年3月15日
被动DNS,一个被忽视的安全利器
运维帮
11+阅读 · 2019年3月8日
TensorFlow、Caffe、Torch 三大深度学习框架被存在安全漏洞
一个人的企业安全建设之路
FreeBuf
5+阅读 · 2017年7月7日
Top
微信扫码咨询专知VIP会员