LWN: Iot设备安全的7个特性

640
点击上方蓝色“ Linux News搬运工”关注我们~

The properties of secure IoT devices

By Jake Edge


OSS NA

译者注:译文有缩减。

在Open Source Summit North America 2019会议上,微软的David Tarditi介绍了符合secure Internet of Things (IoT) 特性的设备所具有的七个特质。内容基于微软2017年的论文。总体来说他认为如果你希望你做出的IoT设备不会被人恶意控制,就需要注意这7个方面。这个演讲还是很有内容的,可惜被最后推销的商业产品(当然肯定符合了这7个特质)弄得有点变了味儿。

Internet connected

首先他介绍了每年已经有90亿的基于微处理器的设备被生产出来部署出去,很多都会联网。他展示了一款2014年的微处理器,芯片内部除了CPU还包含了radio(无线电通讯)功能。今后会有更多的设备连上网络,从而让用户体验更佳。

他又展示了一款联网冰箱,可以帮助更好的监测压缩机的状况。也就是说厂商能提前告知用户这个压缩机可能要产生故障了,而不是让用户某天发现食物没有在制冷了才意识到。尤其是能监测众多压缩机状况之后,厂商就能更好的根据这些数据来预测某台压缩机的出错概率。

LWN: Iot设备安全的7个特性_第1张图片

不过互联网上到处都是坏人”。联网一定会面对更多风险,曾经有很多IoT安全相关的新闻,他详细描述了一下Mirai botnet事件。

2016年10月的时候,有一个名为Mirai的恶意软件感染了大量的网络摄像头、婴儿监控摄像头等等设备,它们都是运行linux的。然后这些设备都变成僵尸网络的一部分,从而导致了美国东海岸的网络有一天都不正常。这次其实只有10万台设备被攻击,也都是基于一个知名的漏洞(就是缺省管理员密码没有改)。这次攻击没有预先检测到,并且没法远程升级这些设备来解决问题。

Mirai事件说明了联网设备的风险性。纽约时报上头一天还在科技版报道这个时间,第二天就在政治板块了。设备安全性会导致社会经济的多方面影响,今后政府会更加注重这方面的问题。

其实Mirai攻击看起来只是一次尝试而已。今后类似攻击完全可以是更大规模的,想象过如果有1亿台设备都被控制么?如果用来攻击生产线或者社会关键服务比如医院该怎么办?所以,把设备连上网络是一个很严肃、很有挑战性的问题。还会有道德风险,假如有人因此受伤了,那就不是简单重启一下你的PC就能解决的了。

Building a secured device

微软过去25年一直是被攻击的重灾区,也在持续积累经验寻找对策。Windows 10现在非常难被攻破了。

其中一条经验就是“代码会有bug”,代码很容易会出问题。并且“你的设备很容易被黑掉”。攻击者都很聪明,有想法,也很有毅力,经常能最终攻击成功。所以必须要清楚安全是基础,所有设备都要在设计开始时就考虑安全性。

要想让设备非常安全,不仅仅是提供一些安全功能。论文里面提到了7种特质非常重要:

  • A hardware root of trust: 利用秘钥来保护设备。秘钥存在硬件里面的话,攻击者就得需要采用物理攻击手段才能破坏安全根基。有了root of trust才能确保设备上运行的软件都是可信的,也才能让设备端和服务器端确认软件本身是完好的的。

  • A small trusted computing base: 指用来确保系统安全的软件。它必须很小,减少暴露出去被攻击的接口。像Linux这样复杂的kernel应该依赖一个很小的secure monitor或者hypervisor。

  • Dynamic compartments: 系统中各个模块之间有硬件保证的边界,确保他们的隔离性。从而被攻破后其他模块不受影响。

  • Defense in depth: 他展示了一个城堡的照片来说明。这个城堡有多层防御,墙,护城河,门,等等。IoT设备也需要多层防护,内部总线防火墙,网络防火墙,确保内存属性设置好避免执行不是代码段的内容,ASLR(address-space-layout randomization)等等。

  • Certificate-based authentication: 密码总有各种问题,可能被窃取,总需要人为管理(例如想出一个好密码)。利用hardware root of trust以及远端验证,就能知道设备是否仍然可信。可以给设备发放证书来允许访问服务。这些证书生命周期可以很短,这样就算被攻破也只能用很短时间。

  • Failure reporting: 从部署出去的众多设备采集好信息,就能帮助监测是否在经受攻击,或者是否有什么不对。有些0day的攻击也能被自动检测出来,因为它可能会导致某些设备crash(崩溃),crash就可以作为一个症状,从而今早发现问题。

  • Renewable security: 一定要有从云上进行软件更新的能力。还需要有硬件机制能组织rollback attack(回退软件版本进行攻击)。

    

满足上述7个特质并不容易,不过根据木桶理论,短板决定了系统安全是否优秀。我们需要能尽早发现并处理这些攻击。设备生产商需要有响应机制能迅速对系统部署升级。

Ad time

广告时间,他介绍了微软的Azure Sphere。这是用于给设备生产商提供的端到端解决方案,具备了上述7个特质。这是一个私有产品,只是在Azure Sphere OS里面有部分地方使用了Linux kernel。

此外,Tarditi并没有解释很多人心中的一个疑问,虽然这些设备都可以被称为“非常安全”,可是都是在设备生产商的完全控制之下,购买设备的人并没有拥有全部控制权。进行软件更新确实能修复安全漏洞,不过也可能会去除用户想要的功能,或者加上一些用户不想要的功能,总之导致购买者越用越不舒服。安全和控制权之间的平衡很难,很多未解难题。不过还是应该在这个演讲中提到一下吧。

[译者注:后面还有一些作者对技术演讲中做广告的行为的一些抱怨,不译了]

[I would like to thank LWN's travel sponsor, the Linux Foundation, for travel assistance to attend Open Source Summit in San Diego.]

全文完

LWN文章遵循CC BY-SA 4.0许可协议。

极度欢迎将文章分享到朋友圈 
热烈欢迎转载以及基于现有协议修改再创作~

长按下面二维码关注:Linux News搬运工,希望每周的深度文章以及开源社区的各种新近言论,能够让大家满意~

640?wx_fmt=jpeg

你可能感兴趣的:(LWN: Iot设备安全的7个特性)