0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

通过更智能的设计促进嵌入式安全

星星科技指导员 来源:嵌入式计算设计 作者:Cliff Ortmeyer 2022-11-29 16:22 次阅读

当今闪电般快速、互联程度日益增强的世界为我们提供了为我们每天使用的嵌入式系统大幅增加价值的机会。然而,同样的连接也可能对作为嵌入式系统基础一部分的物联网应用程序和设备的完整性构成威胁。解决方案是什么?更智能、更安全的设计。一旦奠定了坚实的基础,互联网连接的嵌入式和物联网设备就可以确保长期安全并保护网络,即使单个节点受到损害也是如此。为了达到所需的安全级别,必须预测和解决多种威胁:实现这一目标的一个很好的工具是微软的Azure Sphere及其嵌入式Pluton安全子系统。

物联网安全要点

物联网设备安全的基本要求是确保系统正确集成。由于黑客是出了名的足智多谋,并且乐于利用任何和所有弱点,因此必须保护设备免受未经授权的修改和入侵。聪明的 OEM 可以通过分层安全性来减少对受感染系统的脆弱性。例如,黑客用来渗透系统的一种常用机制是缓冲区溢出。它允许黑客利用存储在内存外部并分配给网络缓冲区的数据,这有时会导致目标系统无意中执行代码。从黑客的角度来看,这是个好消息。它不仅提供了一个可以上传新可执行映像的点,而且一旦设备重新启动以便它可以执行该新映像,他或她就可以完全控制系统并访问有价值的数据。

安全启动机制是避免此问题的好方法。它通过确保只有授权方提供的可执行文件才能运行来提供关闭潜在攻击的方法。实现安全启动机制的基本要求是非易失性存储器区域,该区域在制造后被视为只读 - 其中包含引导加载程序代码,强制处理器检查加载到系统中的引导映像的完整性。如果它未通过完整性检查,则设备在获得有效的启动映像之前不会启动。有效的完整性检查将制造商 ID 与设备自己的 ID 相结合,方法是确保加载到闪存中以供下次启动的代码使用使用本地存储的唯一 ID 生成的哈希进行签名。为了防止可能用于查找此 ID 的攻击,设备还需要具有硬件信任根。

硬件信任根

安全性正日益成为设计社区所有成员的重要问题。例如,在一次道路测试审查中,element14社区成员David Long指出,Pluton安全子系统的信任根是作为Azure Sphere模块的核心部分实现的,可通过Newark获得,这是关键功能之一。

硬件信任根是用于运行安全敏感操作的受保护区域。它通过实施一个安全处理器来提供针对物理篡改和远程攻击的保护,该处理器可以单独访问片上代码和数据存储器。加密密钥和其他安全数据存储在这些区域中,并且信任根配置为永远不允许从外部访问这些元素。安全处理器通常由加密处理器和真随机数生成器 (TRNG) 支持,以加快这些操作,真随机数生成器 (TRNG) 用于生成在信任根之外运行的软件和系统,以确定它们是否应有权访问系统资源。

有了硬件信任根,设备不仅可以保护自己和它发送的任何数据,还可以证明它是一个合法的设备,向云中的其他物联网设备或服务器发送可信数据。反过来,这有助于提高安全性,因为设备可以拒绝与任何没有可接受凭据的网络连接设备互动。这也减少了缓冲区溢出和类似攻击的可能性。Pluton 安全子系统有助于控制本身可能受到损害的外围设备的操作。处理器内的防火墙可防止未经授权访问敏感功能,并防止潜在黑客使用假冒外围设备接管系统的尝试。

软件或远程设备可以通过证明来证明其身份或真实性。通常,这是在基于公钥基础结构 (PKI) 机制的协议的帮助下处理的。在PKI下,消息使用公钥进行加密,公钥可以自由分发而不会影响协议,因为只有相应的私钥才能解密消息。此类私钥是那些将存储在信任安全内存的硬件根中的私钥,通常在制造过程中加载。

通信安全

当设备想要建立通信或证明其身份时,它将使用协议使用一个或多个私钥生成证书和签名。签名和认证协议将随机值(理想情况下是在 TRNG 的帮助下创建的)与私钥相结合,以创建会话密钥等值,这些值在被丢弃之前短时间使用一次,以避免黑客拦截消息并在所谓的重放攻击中重新创建它们的可能性。创建后,PKI 协议可确保永远不需要在安全区域之外访问私钥。

在 Azure Sphere 的情况下,两个核心私钥由设备上的 Pluton 子系统在制造过程中生成,之后甚至无法被软件直接读取。从私钥派生的所有消息都由 Pluton 子系统中的加密处理器创建。这弥补了许多系统中的关键弱点,其中私钥在外部生成并编程到设备中,从而产生了拦截的可能性。

下一个问题是确定设备首次出现在网络中时密钥是否有效。Azure Sphere 通过生成匹配的公钥来实现此目的:一个用于证明,一个用于用户定义的安全服务。这些公钥在制造时提供给微软,供其Azure云服务使用。设备中还存储了使用 PKI 机制生成的数字证书,这些证书用于检查声称来自 Azure 服务器的消息。

当 Azure Sphere 设备连接到云时,它会根据存储在安全内存中的 Azure 创建的证书检查消息来验证服务器的身份。此时,设备需要向服务器进行身份验证,这是使用远程证明协议完成的任务。在 Azure Sphere 系统中,标识的不仅仅是设备,还有它运行的代码。这是通过基于在安全启动过程中找到的代码序列的加密哈希创建会话密钥来执行的。这些值使用私钥进行签名,以便由板载加密处理器生成证明。由于 Azure 服务可以根据其数据库中设备的公钥生成相应的公钥,因此它可以验证它已使用授权固件启动的设备标识。

云服务对设备进行身份验证的可用性还有其他好处:例如,在 Azure Sphere 下,当发现设备是真实的并且运行正确的软件时,会为其提供一个证书,当该证书与其自己存储的凭据结合使用时,可以提供给其他联机服务和设备以证明设备的身份。该证书的有效期约为一天,这限制了攻击的可能性,并迫使设备定期证明其健康状况,以保持与物联网服务的连接。

如果设备未通过安全启动过程,则无法获得证书,使其作为有效的、经过身份验证的系统运行,并将与物联网切断。此外,身份验证失败提供了一种纠正这种情况的方法,并且可能允许设备连接到 Azure 服务,以便下载和安装真实且最新的启动映像。这提供了额外的保护级别,可抵御利用旧版本真实固件中的弱点的攻击。

element14社区成员Rodrigo Sim将Microsoft Pluton安全子系统描述为Azure Sphere生态系统的基础,并指出Pluton有一个专用的核心,用于加速加密任务,如使用SHA2散列,椭圆曲线加密(ECC)和AES加密。所有这些都允许Pluton为基本操作系统和用户应用程序提供安全启动和远程证明。专用内核还可以控制其他内核中外设的访问。

虽然现在对互联网连接的支持实际上是许多嵌入式系统设计人员的要求,但构成的威胁是可以控制的。通过 Azure Sphere 等平台,互联网连接提供了比未连接设备更强大的解决方案。

审核编辑:郭婷

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 嵌入式
    +关注

    关注

    5082

    文章

    19111

    浏览量

    304860
  • 互联网
    +关注

    关注

    54

    文章

    11149

    浏览量

    103251
  • 物联网
    +关注

    关注

    2909

    文章

    44578

    浏览量

    372882
收藏 人收藏

    评论

    相关推荐

    新手怎么学嵌入式?

    新手怎么学嵌入式? 在科技飞速发展的今天,嵌入式技术已经渗透到我们生活的各个角落,从智能手机到智能家居,从汽车电子到医疗设备。对于新手而言,嵌入式
    发表于 12-12 10:51

    什么是嵌入式人工智能

    嵌入式人工智能是指将人工智能技术应用于嵌入式系统中的一种技术。嵌入式系统是嵌入到其他设备或系统中
    的头像 发表于 12-11 09:23 268次阅读
    什么是<b class='flag-5'>嵌入式</b>人工<b class='flag-5'>智能</b>

    嵌入式超火的方向有哪些?

    高效的医疗措施。 比如说远程诊断和远程会诊,通过嵌入式技术设备,便于大医院资深的医生可以远程查看患者的病历、影像等信息,并进行诊断会诊。 这种方式可以有效地解决地域限制和时间限制等问题,为患者提供更便
    发表于 11-21 15:49

    嵌入式和人工智能究竟是什么关系?

    理这些数据,提高系统的响应速度和准确性。此外,嵌入式系统还可以为人工智能提供安全和隐私保护,避免数据泄露和攻击。总之,嵌入式系统和人工智能
    发表于 11-14 16:39

    什么是嵌入式操作系统?

    什么是嵌入式操作系统? 想象一下,如果一个智能设备,比如你口袋里的智能手机,是一个有头脑的机器人,那么嵌入式操作系统(Embedded Operating System,简称EOS)就
    发表于 11-08 15:07

    嵌入式系统的未来趋势有哪些?

    嵌入式系统是指将我们的操作系统和功能软件集成于计算机硬件系统之中,形成一个专用的计算机系统。那么嵌入式系统的未来趋势有哪些呢? 1. 人工智能与机器学习的整合 随着现代人工智能(AI)
    发表于 09-12 15:42

    嵌入式软件开发与AI整合

    嵌入式软件开发与AI整合是当前技术发展的重要趋势之一。随着人工智能技术的快速发展,嵌入式系统越来越多地集成了AI算法,以实现复杂的智能功能
    的头像 发表于 07-31 09:25 699次阅读
    <b class='flag-5'>嵌入式</b>软件开发与AI整合

    嵌入式热门领域有哪些?

    师提供了独特的事业机遇,同时也为行业的技术发展和应用前景带来了无限可能。 智能医疗 嵌入式系统在智能医疗领域的应用也备受瞩目。通过嵌入式
    发表于 07-16 09:23

    如何提升嵌入式编程能力?

    :掌握嵌入式系统的基本原理,包括中断、并发、实时操作、低功耗设计等。 3. 实践编程:通过实际编写和测试代码来提高技能。从简单的LED闪烁程序开始,逐步过渡到复杂的项目,如定时器PWM应用、串口、IIC
    发表于 06-21 10:01

    嵌入式技术领域的视觉、安全与AI应用

    本次2024年度德国版嵌入式世界展的大奖评选共收到全球百余家企业的申请,经由评审团严格筛选,最终选出三项候选提名,并于会场进行了隆重的颁奖仪式。其中,嵌入式视觉、安全与安防、人工智能
    的头像 发表于 04-29 11:20 364次阅读

    嵌入式热门发展方向有哪些?

    已经体现了嵌入式系统的优势;在信息家电领域,冰箱、空调等的网络化、智能化将引领人们的生活步入一个崭新的空间,即使你不在家里,也可以通过电话线、网络进行远程控制,在这些设备中,嵌入式系统
    发表于 04-11 14:17

    嵌入式会越来越卷吗?

    智能化发展 智能化是嵌入式系统未来发展的一个重要方向。通过结合人工智能和大数据分析等技术,嵌入式
    发表于 03-18 16:41

    嵌入式人工智能的就业方向有哪些?

    嵌入式人工智能的就业方向有哪些? 在新一轮科技革命与产业变革的时代背景下,嵌入式人工智能成为国家新型基础建设与传统产业升级的核心驱动力。同时在此背景驱动下,众多名企也纷纷在
    发表于 02-26 10:17

    嵌入式系统发展前景?

    的发展前景也十分广阔。 随着物联网和智能设备的快速发展,嵌入式系统将更为普遍地应用于各种设备和设施,包括家用电器、医疗设备、交通工具等。这些设备将通过嵌入式系统实现
    发表于 02-22 14:09

    嵌入式学习步骤

    嵌入式行业是一个涉及广泛领域的行业,嵌入式、物联网、人工智能智能与科学、电子信息工程、通信工程、自动化工程、测控、计算机科学等专业在嵌入式
    发表于 02-02 15:24