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

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

3天内不再提示

嵌入式系统安全实用技巧

哈哈哈 2022-12-28 09:51 次阅读

虽然嵌入式系统往往缺乏服务器甚至现代个人计算机的处理能力,但设备的绝对数量使其成为希望运行非法僵尸网络和加密货币挖矿操作的不良行为者越来越有价值的目标。2016 年的 Nest 恒温器僵尸网络攻击是嵌入式系统设计人员的第一个与安全相关的重大警钟。鉴于特定物联网 (IoT) 面向消费者的性质,以及对隐私和安全的敏感性增加;Nest 僵尸网络引起了大量讨论。这些讨论往往集中在公司应如何在其低成本物联网产品中构建安全性以及消费者如何在家中和企业中安全地操作这些设备。

随着网络攻击威胁的增加,开发人员必须在整个设计过程中牢记安全考虑因素。通过遵循一些实用的提示和建议,开发人员可以防范各种攻击场景。继续阅读以了解开发人员可在其嵌入式设计中使用的安全措施概要。

构建安全

虽然有许多芯片架构、操作系统通信协议;许多物联网设备往往围绕基于 Arm ®的架构构建,如果它们运行的操作系统往往是 Linux 发行版。这种共性在很多方面都是好的;更低的成本和更快的开发时间;它还带有很多底片。攻击向量趋向于“一刀切”,尤其是对于运行基于 Linux 的操作系统的设备。为了减轻与共享通用架构的广泛设备相关的威胁,开发人员应实施以下“速赢”安全设计原则:

不要将密码硬编码到固件中。此外,不要对所有设备使用通用的默认密码。要求用户在设备初始化期间创建自定义用户名和密码。

不要默认启用不安全的协议,例如 HTTP、FTP 或 Telnet。通过有线或无线协议离开设备的数据必须经过高度加密。避免“自制”加密解决方案。

以尽可能最严格的配置运送设备,并让最终用户主动决定减少与安全相关的设置。

用于访问设备的所有机制都应该需要身份验证和授权控制。如果可行,应使用双因素身份验证 (2FA)。

应过滤所有面向用户的输入以避免注入式攻击。

为最终用户实施一个安全的设备管理界面,使他们能够管理他们的资产、更新设备、监控设备,并安全地停用已达到生命周期结束 (EOL) 的设备。

无线 (OTA) 更新机制必须在设备上进行验证。更新文件必须在发送到设备的途中加密。最后,确保有防回滚功能,以防止设备恢复到以前的不安全固件。

如果在您的设备设计中使用了第三方软件库,则必须持续监控它们以确保集成了第三方更新并且它们不会被弃用。废弃的软件项目可能会成为您设备的严重漏洞。在将第三方软件提交到您的项目之前更改它们的默认密码。

限制应在设备上存储哪些敏感数据。仅将此类信息存储在安全区域中。

请记住,对于物联网,嵌入式系统只是更大生态系统的一部分。确保安全性也内置于云、桌面和移动应用程序中。生态系统的安全性取决于最薄弱的环节。

考虑建立漏洞赏金计划,以鼓励最终用户和安全研究人员以安全、负责任的方式提交漏洞。

对设备的物理访问往往是设备的游戏结束情况。这并不意味着没有什么可以使物理上利用这些类型的设备变得更加困难。整本书都是关于使电路板和相关外壳防篡改的,但为了获得一些“快速胜利”,请考虑以下物理设计经验法则来强化您的设备:

用于调试端口(例如 JTAG 和 UART)的引脚在开发和测试设备时非常有用。对于那些试图恶意逆向工程设备的人来说,它们也是诱人的目标。建议混淆这些引脚和/或移除生产单元的插头引脚。请注意,这将以在部署后更难进行故障排除为代价。设计人员必须考虑安全性和可维护性之间的平衡。

使用粘合剂、超声波焊接和/或专用安全螺丝会使打开设备变得更加困难。

在敏感元件上涂上非导电环氧树脂可能会混淆它们的身份和用途。

您可能会想使用可能存在漏洞的旧组件。还要注意假冒组件。如果一笔交易好得令人难以置信,那它可能就是真的。平衡安全性和上市时间考虑因素并不是一个可以轻易做出的决定。

多层板可用于以一种更难辨别电路板功能的方式来布线。

以下一些建议可能对消费级 IoT 设备有点过分。然而,正如我们稍后将详述的那样,工业控制系统和防御系统可能会受益于这些更强大的物理安全措施:

在电路板本身中内置安全功能,例如微动开关、水银开关或磁性开关,它们可以检测电路板是否被无意地操作或打开。也可以使用镍铬合金线或光纤。如果电线或光纤受到试图篡改设备的人的负面影响,那么电线的电流或光子通过光纤的行为将会发生可检测的变化。

侧信道或故障攻击虽然可能不常见,但为对手提供了独特的优势,因为它们使用物理定律来攻击设备,因此虽然可以检测到,但很难预防。通过攻击时序或限制电子流向 CPU,有可能让设备以意想不到的方式运行,从而否定安全功能。电压和电流传感器可以在板载电路板上实现,以检测是否可能发生毛刺,尽管存在误报的可能性。

重要的对手可以使用 X 射线机器窥视微芯片并发现晶体管的形貌以确定功能等。可以添加检测 X 射线的传感器来检测篡改,但无法阻止对手提取有用信息。

应该指出的是,安全性和开放性范例之间存在着相当大的二分法。安全值混淆。开放硬件价值理解。无论如何,请记住这句古老的格言,锁只会让诚实的人保持诚实,对于一般安全人员来说也是如此。有关如何构建安全物联网设备的更多信息,请访问开放 Web 应用程序安全项目 (OWASP) 物联网项目。

操作安全

即使制造商可以在他们的产品中实施所有最好的安全设计原则,如果最终用户不以安全的方式操作他们的设备,他们也将毫无意义。

更改默认路由器名称、路由器密码、网络名称 (SSID) 和网络加密密钥。请务必使用强密码原则,不要为两个网络使用相同的密码。

将您的家庭网络划分为两个“虚拟”网络,以便台式计算机、网络附加存储 (NAS) 设备等无法“看到”IoT 设备。要快速轻松地执行此操作,请为您的 IoT 网络使用访客网络功能.

大多数物联网设备依靠智能手机应用程序来控制设备。使应用程序保持最新状态,并在可用时使用 2FA 进行登录。

禁用您不打算使用的物联网设备的任何功能。

定期更新路由器和物联网设备的固件。

当物联网设备达到使用寿命并且不再接收更新时,请考虑将其更换为更新的型号。

工业实力安全

面向消费者的 IoT 产品可能很多,但它们的工业对应产品(统称为工业控制系统 (ICS))管理着许多极其重要且具有潜在危险的过程。从能源生产到工厂,一切都使用嵌入式数字技术(称为操作技术或 OT;与以办公室为中心的信息技术或 IT 相对)来控制负责执行各种流程的设施和相关机械。ICS 环境与严格的 IT 环境有很大不同,因此需要特别考虑加固 OT 设备和 ICS 网络。最基本的原则是 ICS 不应连接到互联网。虽然这看起来很简单,但令人惊讶的是,违反这一基本规则的频率如此之高。

ICS 系统通常所在位置的性质(例如,环境、化学或其他危险区域)意味着 ICS 已被设计为优先考虑系统的可用性而不是机密性。从积极的角度来看,这通常意味着存在冗余系统,并且这些系统旨在安全地发生故障。然而,ICS 系统可能会运行数十年,并且可能不会始终保持最新状态。此外,许多协议都比较陈旧,并且在构建时考虑的是效率,而不是安全性。总之,ICS 或 IIoT 领域的安全性具有独特的挑战性,最佳实践可能难以实施。然而,

审核编辑黄昊宇

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

    关注

    5085

    文章

    19138

    浏览量

    305779
收藏 人收藏

    评论

    相关推荐

    嵌入式系统开发与硬件的关系 嵌入式系统开发常见问题解决

    嵌入式系统开发与硬件的关系 嵌入式系统是专为特定应用设计的计算机系统,它们通常嵌入在所控制的设备
    的头像 发表于 12-09 09:38 287次阅读

    什么是嵌入式操作系统?

    的战斗机。 FreeRTOS:它适合那些资源有限的小型设备,就像小巧的瑞士军刀。 QNX:它以安全和可靠著称,很多汽车和工业系统都用它,可以说是EOS中的沃尔沃。 Linux:虽然它不是专门为嵌入式
    发表于 11-08 15:07

    嵌入式系统与物联网的结合

    随着科技的飞速发展,嵌入式系统和物联网(IoT)已经成为现代技术领域的重要组成部分。嵌入式系统是指嵌入到设备或
    的头像 发表于 11-06 10:23 326次阅读

    什么是嵌入式?一文读懂嵌入式主板

    在现代科技浪潮中,嵌入式技术已成为支撑各种智能设备和系统运行的核心力量。那么,究竟什么是嵌入式嵌入式系统,顾名思义,是将计算机的硬件和软件
    的头像 发表于 10-16 10:14 1120次阅读

    嵌入式系统的原理和应用

    嵌入式系统是一种专用的计算机系统,其设计初衷是执行特定任务,而非作为通用计算机使用。这类系统通常作为更大系统的一部分,起到控制、监控或辅助的
    的头像 发表于 10-05 17:03 953次阅读

    嵌入式主板是什么意思?嵌入式主板全面解析

    嵌入式主板,通常被称为嵌入式系统的核心组件,是一种用于控制和数据处理的计算机硬件,其设计旨在嵌入特定设备中执行专门任务。嵌入式主板如同是设备
    的头像 发表于 09-30 10:05 573次阅读

    学习hypervisor嵌入式产品安全设计

    Hypervisor的设计与实现,涵盖嵌入式Hypervisor架构与核心组件、中断隔离技术、内存隔离技术、循环表调度器、健康监控、分区间通信技术、内核资源管理模型、系统初始化过程、内核服务
    发表于 08-25 09:11

    嵌入式系统怎么学?

    嵌入式系统怎么学? 随着物联网、智能制造等新技术的兴起,嵌入式系统的应用范围更加广泛。包括但不限于工业控制、汽车电子、医疗设备、智能家居、智慧城市、消费电子、通信设备等。学习
    发表于 07-02 10:10

    入门嵌入式系统这些知识你知道吗?

    嵌入式系统是一种专用的计算机系统,作为装置或设备的一部分。通常,嵌入式系统是一个控制程序存储在ROM中的
    发表于 05-03 09:54 598次阅读

    再谈嵌入式实时操作系统

    由于嵌入式处理器早期功能单一且运算能力不高,嵌入式应用已不能满足各个领域不断增长的需求。嵌入式操作系统应运而生,嵌入式操作
    的头像 发表于 04-09 17:27 811次阅读
    再谈<b class='flag-5'>嵌入式</b>实时操作<b class='flag-5'>系统</b>

    嵌入式fpga是什么意思

    嵌入式FPGA是指将FPGA技术集成到嵌入式系统中的一种解决方案。嵌入式系统是一种为特定应用而设计的计算机
    的头像 发表于 03-15 14:29 1272次阅读

    fpga是嵌入式

    FPGA(现场可编程门阵列)不是嵌入式系统,但FPGA在嵌入式系统中有着重要的应用。
    的头像 发表于 03-14 17:19 2348次阅读

    嵌入式系统发展前景?

    应用领域。随着汽车电子化和智能化程度的不断提高,嵌入式系统将在汽车控制、安全系统、自动驾驶等方面发挥更为重要的作用。 工智能和机器学习技术的发展为嵌入式
    发表于 02-22 14:09

    如何使用 DSC 和 MCU 确保嵌入式系统安全

    作者:Stephen Evanczuk 投稿人:DigiKey 北美编辑 随着向物联网 (IoT) 的迁移,安全性已不再是嵌入式应用中的选配功能,已发展成为确保系统完整性所需的必备能力。为了满足日益
    的头像 发表于 02-13 14:38 756次阅读
    如何使用 DSC 和 MCU 确保<b class='flag-5'>嵌入式</b><b class='flag-5'>系统安全</b>

    嵌入式系统的应用实例

    嵌入式系统的三个基本要素是嵌入性、专用性与计算机系统
    的头像 发表于 01-22 09:57 1087次阅读