我们日常使用的许多东西正在变得智能化并且都连入了互联网。物联网(IoT)将改善我们的生活,它帮助我们实现健康和健身目标、减少资源消耗、提高生产力、追踪并确保资产安全。许多嵌入式开发人员意识到IoT的潜在好处并积极开发各种应用程序,范围涉及家庭连接设备、可穿戴和家庭安全系统等。然而,风险与收益并存。没有人希望设计的应用程序容易受到攻击或数据易遭窃取。引人注目的黑客攻击会对品牌形象造成严重影响并失去客户信任,最糟糕的是,它会减缓或永久性减少人们使用IoT。
IoT通常被称为一场工业革命。可连接设备的数量将在未来几年内快速增长。如果跟踪IoT的分析师之间有何争议的话,那便是到底会有几十亿的可连接设备。物联网对社会的经济价值预估为4至11万亿美元。在加速可连接设备产品上市的竞赛中,实现适当的安全措施会带来一些麻烦,因为这会增加元器件成本、开发工作量和设计复杂度。
同时,适当的安全措施对某些产业来说并非至关重要。然而采取适当的安全措施是避免受到攻击的关键。供应商的产品受到攻击后,重大的安全和隐私问题以及负面报导可能会暂时或永久性减缓人们使用IoT。即使是在家庭和日常生活中的简单设备,许多消费者也对连接安全保持怀疑,一些研究人员和业界观察人士更认为IoT安全灾难必将发生。实际上,最近有很多高调曝光的攻击广受关注,因此有人认为这个灾难已经来临。请点击“阅读原文”观看完整的“物联网安全分析”文章。
量子密码学攻击
当前IoT的安全状况类似于量子密码学,这通常指量子密钥分配。与其他密钥分配方案不同,量子密码学承诺在物理定律的基础上保证绝对安全性。而相比之下,大多数密钥分配方案依赖于大数因式分解或离散对数问题计算复杂性的假设。尽管量子密码学于1984年被发现,但直到2000年商业加密系统才被引进市场。量子密码系统依赖于单个光子,搭建量子密码系统很复杂,不过上市时间才是本质问题。2010年,第一个彻底打破量子密码学系统的安全漏洞被公诸于众。从理论上讲,量子密码学是不可能被破坏的,但实际上,并未考虑系统设计过程中的边测和漏洞。
此外,有趣的是,直到组建专门的小组去破坏这些系统之前漏洞都未被发现。在组建该专门小组之前,整个产业都在关注如何使量子密码学系统更稳健和如何使这些系统上市。量子密码学类似事件给我们上了重要一课。最值得注意的是,它表明安全是一个持续不断的发展过程,需要多学科方案来预测潜在的攻击。当工程团队试图使某些事情变得像量子密码系统一样复杂时,他们可能也会弄不明白攻击者是如何侵入系统的。整个过程相互矛盾。因此,需要将质量保证和安全团队从搭建安全系统的工程团队中分离出来。
另一个关键点是,量子密码学系统受到攻击肯定会暂时(如果不是永久地)降低该技术的市场接受度和对该技术的信任度。因此,如果产业能够在前期阶段对安全投入更多,那么尽管这会使上市时间更长、成本更高,但最终也会大有裨益。
IoT安全分析
目前,IoT安全所必需的技术已经存在。但是缺乏如何实施这项技术的知识通常是大多数安全漏洞的根本原因。然而,一个“安全”的IoT设备并不能确保能够实现一个安全的系统。虽然如此,开发人员至少应当意识到以下类型的安全。
硬件安全
安全的IoT设备具有许多安全特性。首先,它使用对称密码来执行安全启动和安全引导加载或空中(OTA)固件更新。安全的IoT设备还使用硬件加密加速器,它们更快、更节能,并且更不易受到边信道分析攻击。
在安全的IoT设备中,调试端口是禁用的。如果在某些时候需要重新打开调试端口(例如需要远程存储器存取或由于其他原因),就要通过一个使用公开密钥认证的认证质询响应方案来实现。虽然安全启动和引导加载可防止攻击者修改程序存储器,但安全的IoT设备能够进一步限制对于程序存储器的访问读取。这通常意味着设备具有内部存储器或内置闪存。在使用外部存储器的情况下,这也意味着外部存储器的内容需被签名和加密。
软件安全
为了确保在安全的IoT设备上运行的软件能进一步加强安全性,必须在关键部分进行硬件化。这意味着它可以阻止跳过单条指令。例如,安全启动签名检查或密码签名检查。这种方法可确保即使攻击者能够使处理器跳过一条指令,那么也不会产生关键性的安全后果。此外,为了避免代码中的安全问题或第三方库引起系统范围的存取,可采用ARMv8M的TrustZone对不同库进行分区管理。