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 领域的安全性具有独特的挑战性,最佳实践可能难以实施。然而,

审核编辑黄昊宇

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

    关注

    5209

    文章

    20662

    浏览量

    337107
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    开源RTOS塑造嵌入式系统的未来

    嵌入式系统早已不再是隐藏在产品内部、安静运行、只承担单一功能的组件。它们正变得更加智能、互联,并且对安全性至关重要——为从智能家居、工业自动化到医疗设备和能源基础设施等各类应用提供核心动力。随着
    的头像 发表于 04-22 16:16 208次阅读

    探秘Atmel AT97SC3205T:嵌入式系统安全守护者

    探秘Atmel AT97SC3205T:嵌入式系统安全守护者 在嵌入式系统安全领域,Atme
    的头像 发表于 04-06 13:40 654次阅读

    深度解析MAX32591:打造安全可靠的嵌入式系统

    深度解析MAX32591:打造安全可靠的嵌入式系统 在当今数字化时代,嵌入式系统安全性和性能至
    的头像 发表于 03-26 16:50 358次阅读

    知识分享-嵌入式系统可靠性模型

    嵌入式系统可靠性设计技术及案例解析1.3嵌入式系统可靠性模型嵌入式系统可靠性模型分为两种:串联结
    的头像 发表于 03-11 16:43 393次阅读
    知识分享-<b class='flag-5'>嵌入式</b><b class='flag-5'>系统</b>可靠性模型

    嵌入式系统安全设计原则

    掌握的能力。今天,我们就来系统梳理嵌入式系统安全设计的核心原则。一、最小权限原则(PrincipleofLeastPrivilege)核心思想:每个模块、每个进程
    的头像 发表于 01-19 09:06 482次阅读
    <b class='flag-5'>嵌入式</b><b class='flag-5'>系统安全</b>设计原则

    什么是嵌入式应用开发?

    系统中,用于控制、监测或通信等特定用途。与一般计算机系统不同,嵌入式系统通常具有较小的存储容量、处理能力和功耗,且需要满足特定的实时性、可靠性和安全
    发表于 01-12 16:13

    嵌入式软件测试找bug的常见方法和秘诀

    对可靠性的要求比较高。嵌入式系统安全性的失效可能会导致灾难性的后果,即使是非安全系统,由于大批量生产也会导致严重的经济损失。这就要求对嵌入式
    发表于 01-12 07:07

    嵌入式系统应用热门的原因主要有几个方面

    求其功能设计及实现上过于复杂,这样一方面利于控制系统成本,同时也利于实现系统安全。4. 高实时性的系统软件(OS)是嵌入式软件的基本要求。而且软件要求固态存储,以提高速度;软件代码要求
    发表于 01-08 06:37

    精准对时与全面加密:嵌入式工控机助力光伏储能系统安全稳定运行

    英康仕工控推出的NIS-YS839嵌入式工控机,以其B码对时功能和全面国密算法支持,为光伏储能行业提供安全可靠的硬件解决方案。
    的头像 发表于 11-18 14:22 4058次阅读
    精准对时与全面加密:<b class='flag-5'>嵌入式</b>工控机助力光伏储能<b class='flag-5'>系统安全</b>稳定运行

    嵌入式系统的定义和应用领域

    嵌入式系统,简而言之,就是一种专为特定设备或装置设计的计算机系统。它们通常配备一个嵌入式处理器,其控制程序被存储在ROM中。这些系统在许多日
    发表于 11-17 06:49

    嵌入式开发的关键点介绍

    开发需要考虑嵌入式系统的资源限制,例如:内存、CPU处理能力等等。因此,嵌入式开发需要开发人员具备优化代码的能力。嵌入式系统
    发表于 11-13 08:12

    嵌入式实时操作系统的特点

    实时嵌入式操作系统(Real-Time Embedded Operating System)是专门设计用于嵌入式系统的实时操作系统
    发表于 11-13 06:30

    如何采用SAFERTOS和ESM保护嵌入式系统安全

    信任根的重要组成部分是实时操作系统(RTOS),它为应用程序的运行提供了一个安全的平台。嵌入式系统的具体安全要求取决于其架构以及所面临的威胁
    的头像 发表于 10-24 15:51 1639次阅读

    运行在嵌入式系统上的emApps

    在当今快节奏的嵌入式系统世界中,灵活性和适应性是嵌入式系统实现的关键。SEGGER推出了其最新创新:Embedded apps(emApps)应用,类似于手机上的应用程序,可以运行在
    的头像 发表于 06-18 09:53 1064次阅读
    运行在<b class='flag-5'>嵌入式</b><b class='flag-5'>系统</b>上的emApps

    嵌入式应用中常见的安全威胁

    越来越多的嵌入式设备存在互联需求,在安全应用开发中,除功能安全外,应用还需考虑信息安全
    的头像 发表于 04-28 14:45 1308次阅读
    <b class='flag-5'>嵌入式</b>应用中常见的<b class='flag-5'>安全</b>威胁