你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

利用STM32MP1和STM32MP2为嵌入式Linux提供有效的安全措施:供当今决策者参考的3条宝贵经验

[复制链接]
STMCU-管管 发布时间:2025-3-10 16:45

利用STM32MP1 和STM32MP2 为嵌入式Linux 提供有效的安全措施:供当今决策者参考的3 条宝贵经验

  • 2024年12 月2 image.png

20 世纪60 年代的汽车和嵌入式Linux 系统的安全措施有什么共同之处? 2015年的Linux安全峰会上,Linux基金会合作项目IT团队的系统管理员Konstantin Ryabitsev在演讲中对汽车和IT安全进行了比较。他坦言,上世纪末的汽车质量已经非常可靠。这些汽车在交通运输过程中的故障风险极低。然而,当时的车辆设计并没有将人为错误因素考虑在内,因此一旦发生碰撞事故,驾驶员几乎得不到任何保护。如今的汽车制造商已为汽车添加了安全气囊、安全熄火装置、防滑系统、可溃缩转向柱、碰撞检测、预知制动等功能和设施。相比之下,如今的IT安全就像60年代的汽车,虽然质量可靠,却无法解决人为错误问题。

Ryabitsev的演讲着眼于Linux服务器的安全保障。尽管他的演讲并未包含很多适用于嵌入式系统的内容,但基本原理却是相通的。太多的公司仍会在设计过程中忽视掉重要的安全保障环节。工程师致力于提升产品的质量和安全性,却并未制定安全故障应急计划。有些团队甚至因为不重视数据而将安全保障视为可有可无。因此说,许多人并没有清楚地认识到人为错误或全新的攻击途径会给用户或企业带来怎样严重的损害和干扰。基于上述考虑,我们发布了一部白皮书,书中采用了 STM32MP1 STM32MP2的嵌入式系统更像是现在的汽车:即使在发生故障的情况下也能提供一定的安全保护。

目录

攻击分类

物理攻击

KCS Murti在自己编写的教材*《嵌入式系统的设计原则》*(Design Principles for Embedded Systems) 1中,将安全攻击分成了两大类,即物理攻击和逻辑攻击。物理攻击可能具有侵入性,例如黑客进入硅片或是中断典型操作的行为就是如此。物理攻击也可能是“非侵入性”的,其中最常见的例子就是侧信道攻击。在这种情况下,黑客可能会利用时钟和存储器,或是从功耗模式中获取某些功能。一直以来,意法半导体都在努力提高自身对这些攻击行为的认识。他们推出的**STM32MP1 和STM32MP2 能够有效抵御这两种类型的物理攻击,从而仍然能够将犯罪分子物理侵入各类设备的风险控制在较低水平。**

逻辑攻击

当广大企业谈到嵌入式系统的安全保障时,他们通常指的是防范逻辑攻击的措施。总的来说,逻辑攻击的目的是获取数据的访问权限或通过非法手段得到运行恶意软件的权限,从而造成更多数据泄露或是方便黑客破坏该系统以及其他与之相连的系统。 大众媒体在涉及安全话题的报道中往往会提到逻辑攻击。此类攻击如此常见的原因在于:逻辑攻击通常会利用错误或漏洞,因此相对容易实施且成本较低。

此外,黑客也可能针对硬件功能或安防系统发起逻辑攻击。 例如,当Spectre和Meltdown漏洞首次曝光时,整个IT业界为之震动。各类程序可以通过这两个漏洞获取存储器中的敏感信息或是绕过安全防护措施。按照Arm的说法,STM32MP1的Cortex-M4和Cortex-A7处理器以及STM32MP2的Cortex-M33和Cortex-A35处理器不会受到上述问题的影响。同样,Heartbleed也是OpenSSL库中的一个漏洞;黑客可以利用它来窃取所谓的受保护信息。开发人员必须尽快检查其实现情况并为系统开发补丁程序,以免造成重大影响。OpenSTLinux使用的OpenSSL版本不存在此漏洞。

人为错误

上述用例之所以会被收录为示范案例,是因为它们太出人意料了。开发人员必须预见到各种瞬息万变的情况,制定全面的审核计划,并确保快速部署各类补丁程序。 这也是本意法半导体白皮书介绍各种主要概念,并帮助管理人员了解相关基础知识的原因所在。此外,具备丰富的行业知识也很重要;因为在大多数情况下,黑客无需利用那些夸张的漏洞即可实施攻击。如今,大多数攻击需要依靠人为错误或社会工程 "社会工程(安全)- 维基百科")来完成。使调试端口停留在打开状态、错误执行加密操作或是泄露管理密码等等都是十分常见的情况。从某种意义上来说,IT安全领域和医学领域一样:当您听到蹄声时,应先想到马,而不是斑马 "斑马(医学)- 维基百科")。 image.png STM32Trust及其安全解决方案‸

此外,可供开发人员使用的生态系统有效增强了嵌入式系统的安全保障。意法半导体升级了自家的驱动程序,并与开源社区展开紧密合作。这样,我们就能够快速修复各种问题,并使用标准工具来获得更多的安全保障。我们还通过实施STM32Trust意法半导体合作伙伴计划等举措,帮助客户部署各种关键的安全功能。例如,**OpenSTLinux 发行版提供了实现安全启动所需的工具,以及安全固件更新的支持基础。 此外,希望将此类任务外包的企业也可依靠意法半导体的合作伙伴(例如Witekio及其FullMetalUpdate)为其提供可靠、高效的服务。最后,本白皮书向广大决策者和行业专家保证,我们绝不会让他们孤身应对这些挑战。**

1. 建立、管理和促进信任

什么是信任? image.png 意法半导体的可信基础 - STM32MP1参考启动链序列(信任链)

为了提高IT可靠性,尤其是处理人为错误时的可靠性,广大企业必须创建一个由可信设备和可信系统构成的链条。如果应用层不安全,用户就无法获得信息安全保障。同样,如果开发人员所依赖的操作系统不可信,他们就无法开发出安全的应用程序。因此,**IT 安全取决于信任的概念和定义。** Murti认为,信任是对硬件或软件组件“执行指定安全策略”2的保证。例如,操作系统必须保证普通用户只能拥有有限的权限,而不能获得管理权限。同样,应用程序也不得访问其安全策略所定义资源以外的资源。

什么是信任链 (CoT)

一条关于IT 安全的公理规定:如果上层所依赖的下层不可信,那么上层就不可能真正安全。 例如,如果某个应用程序所依赖的操作系统不可信,那么这个应用程序就不安全。实际上,如果操作系统不可信,则即使软件对其收集的所有数据都进行了加密,用户也将无法保证黑客没有入侵系统或是窃取数据、加密密钥或其他信息。同样,如果运行操作系统的硬件不可信,则即便是可信的操作系统也无法确保真正安全。因此,我们需要依靠层层递进的完整性检查来获得真正安全的嵌入式系统,业界称之为信任链** (CoT) 。**

从传统意义上来讲,CoT代表了从最底层硬件到应用程序的可信层工作流程。然而,管理人员必须要明白,真正的信任链并不局限于系统本身。 开发人员必须要保护自己的工作成果,制定有助于减少风险的准则,并准备好应对各种不幸事件。如果加密密钥被心怀不满的员工窃取,那么它将毫无用处。同样,广大企业必须确保向OEM提供安全的固件。重视程序安全的公司必须确保其源代码不会被恶意行为者窃取。要想实现真正的IT安全,我们必须面向各种人为操作制定应对计划。

正因为如此,业界才采用了算法的数学运算可控的加密标准。系统本身会假定攻击者对其十分熟悉。现在专家们不再依靠开发人员来隐藏访问权限,而是希望黑客能够意识到破解算法的成本过高,所需的计算量也很大,因此自己目前的行为并不现实。 此外,白皮书还解释了为什么如此多的公司选择了RSA、AES等标准,或是CRYSTALS-Dilithium等全新的后量子加密算法。尽管攻击者对其了如指掌,但如果能够正确部署这些标准和算法,那么攻击者也将无计可施。我们可以利用硬件IP对这些标准进行加速,从而在不影响性能的情况下运行这些标准。

什么是信任根 (RoT)

按照UEFI论坛的说法,硬件信任根是计算系统信任链的起点。它是一种能够保证系统底层部分可信的机制,原因是该信任根所使用的启动代码能够通过各种验证和认证。 简而言之,信任根可以提供多重保证。它可以确保没有人启用新的调试端口或是更改固件等等。它通常会使用不可变的根密钥来验证代码的完整性,并使用安全自举程序。将密钥部署在硬件中还能防止黑客克隆系统。

鉴于固件对于建立信任根至关重要,许多企业开始使用加密固件。简单来说,就是用户无法读取MCU或MPU中加载的代码。使用时必须先由主机设备在内部对其进行安全解密,这意味着人眼无法窥视到解密后的代码;然后再由主机设备运行检查,以确保代码的完整性。像STM32MP13和STM32MP25这样的微处理器具有特定的存储器保护机制和功能,因此在增加了解密步骤的情况下仍能保证性能稳定。这样还可以确保工业间谍无法获取到源代码。

什么是安全启动、安全固件安装和安全模块安装?

起初,工程师和管理人员可能并不知道应该从哪里入手。针对这种情况,本白皮书列出了打造可靠的信任链所需的主要构建模块。 例如,书中解释了STM32MP1和STM32MP2环境如何搭配依赖于信任根的参考启动序列使用。意法半导体可以使用TF-A 实现安全启动,将OP-TEE 用作安全操作系统,然后将U-Boot 用作外部RAM中Linux内核初始化过程中的第二阶段自举程序。此外,我们还有专用的维基百科,可以帮助开发人员实现上述所有操作。因此,本白皮书可以成为项目经理开展工作的起点。

意法半导体还可提供安全固件安装机制,例如安全密钥配置。 开发人员可以在硬件安全模块 (HSM) 上对密钥进行加密。OEM负责加载加密数据和机密信息,而MPU则负责使用HSM在内部对其进行解密。这样,任何用户都将无法运行未受保护的自举程序或是访问敏感数据,而且客户还能够跟踪OEM刷新的设备数量。因此,关键是要保证信任链不局限于自举程序或软件层,而是能够代表一种全面的产品设计和制造方法。

2. 检测、预测和应对事件

为什么要审计日志、网关和代码? image.png 审计系统的重要性

如今,嵌入式系统领域再也不能忽视其他领域确立的IT安全相关最佳实践了。几年前,各企业很少对旗下的嵌入式系统进行审计,原因是他们认为这样做没有价值。在许多情况下,数据仍然存储在本地,且没有什么敏感信息。然而随着下一个自动化时代的来临,嵌入式系统的互联和智能程度大幅提升。这就导致广大企业必须对自家日志展开审计,定期检查软件实现情况,并监控流量以防入侵。 就像现在的汽车一样,只有当开发人员清楚过去或目前的危险状况时,才能保护用户免遭碰撞事故。因此,工程师必须紧跟最新的安全趋势3

当前还有一个新的趋势,那就是安全认证的兴起。监管机构和其他组织正在积极打造各类认证体系,以保证安全实现的稳定推进。例如,当我们表示STM32MP1和STM32MP2可以帮助客户通过SESIP 3级认证时,意味着这些产品的真随机数发生器已经通过了建议的NIST SP 800-90B等多项测试。这样,需要获得**FIPS 140-3 认证的管理人员就可以重复使用我们的SP 800-90B 证书,并以更快的速度将产品推向市场。** 同时,我们获得STM32MP135和STM32MP25预认证的事实还表明,获得银行应用所需的高要求POS PCI-PTS认证要比获得该预认证容易得多。

什么是应急计划和FUOTA

image.png

远程服务器

除了上述措施,企业还必须制定应急计划,以便能够在检测到漏洞或入侵情况后迅速做出反应。部署应急响应措施不仅可以节省宝贵的时间,而且能够为决策带来巨大的助益。 此举可以避免企业在充满压力的状况下匆忙做出重大决定。各个团队可以从丰富的线上资源中汲取灵感。例如,美国网络安全与基础设施安全局推出的《网络安全事件和漏洞响应手册》(Cybersecurity Incident & Vulnerability Response Playbooks) 就是一份很好的入门资料。该文档主张创建两个手册:一个用于处理事件,另一个用于处理漏洞。尽管该文档并非方方面面都适用于嵌入式系统或私营企业,但它仍不失为一个很好的开端。

此外,采用固件无线更新 (FUOTA) 机制也具有至关重要的意义。面对危机状况,对系统进行远程修补是一项必不可少的技能。然而,**FUOTA 机制的实施方法却十分复杂。* 最近,法国的研究人员在《物联网》*(Internet of Things) 4期刊上发表了一篇文章,并在其中探讨了FUOTA背后的挑战,包括资源限制、网络拓扑、设备管理、安全保障等问题。我们必须将嵌入式系统和远程服务器上的许多组件集成到一起。在许多情况下,FUOTA机制的实现难度都要低于企业的预期,且对大多数企业而言,外包都是一项成本效益较高的选择。

3. 投资于开源社区和成熟合作伙伴,为其做出贡献,并依靠他们

采用开源方法

image.png

意法半导体将其板级支持包整合到了Linux内核中

现在的行业趋势明显转向了开源社区。在发布STM32MP1的时候,意法半导体承诺继续升级旗下驱动程序,并致力于应用OpenSTLinux平台。除了我们方才谈到过的各项优势以外,使用开源软件还有助于简化工作流程。使用开放的主流工具意味着企业更容易招聘到合适的员工,并在必要时将项目转移给新的团队。 在许多情况下,使用开放软件能够比使用专有解决方案获得更多的支持和相关知识。此外,加入相关社区也有助于鼓舞士气。如果工程师知道项目有着更加重大的意义,他们的工作积极性就会大大提升。例如,一旦得知很多业内人士都会使用升级补丁,那么制作这些补丁的过程就能给工程师带来巨大的满足感。

由于担心许可问题,一些公司不愿采用开源技术。对于在Linux系统上运行并需要使用通用公共许可证 (GPL) 工具的专有应用程序,人们往往存在一些误解。而真实的情况恰恰与人们的担心相反。TF-A、OP-TEE和U-Boot等软件允许企业基于其系统随意打造商业解决方案,而不必担心带来法律后果。沃顿商学院于2004 年发表的一篇论文指出,利用开源平台赚取利润是完全可行的,且未来的许可证将有助于澄清各类问题。 因此,意法半导体的这部白皮书将帮助管理人员了解有关许可的一些基本概念,从而使其能够更好地掌握这一问题,并以正确的心态启动项目。

加强合作的必要性

image.png

合作的重要性

在美国于2021年5月签署的一项题为“改善国家网络安全状况”的行政命令中,白宫甚至建议各个服务提供商在IT安全方面加强合作。该行业正在进入一个对嵌入式系统要求更为严格的新领域。数据越来越珍贵,,甚至消费者系统也成为了关键任务系统,因此保护信息已经不再是可有可无的事情。 广大企业可以采用白皮书中给出的经验,并与开源社区和意法半导体合作伙伴计划成员展开合作,从而实现公司文化的转变。不要让安全问题成为您的事后反思。本白皮书能够帮助企业打造强大的嵌入式系统;即使在面临安全挑战时,也能助其收获业绩增长。

  1. Murti K. (2022)《嵌入式系统设计原理》(Design Principles for Embedded Systems)。第424页《计算机系统与网络汇刊》(Transactions on Computer Systems and Networks)。新加坡Springer出版社。 https://doi.org/10.1007/978-981-16-3293-8
  2. Murti K. (2022)。出处同前。第421
  3. Rachit、Bhatt、S. & Ragiri, P.R. 《物联网的安全趋势:一项调查》(Security trends in Internet of Things: a survey.)。 SN Appl. Sci. 3, 121 (2021). https://doi.org/10.1007/s42452-021-04156-9
  4. Saad El Jaouhari、Eric Bouvet。《物联网安全固件无线更新:调查、挑战和讨论》(Secure firmware Over-The-Air updates for IoT: Survey, challenges, and discussions)。《物联网》(Internet of Things)第18卷2022年。 https://doi.org/10.1016/j.iot.2022.100508.
image.png
收藏 评论0 发布时间:2025-3-10 16:45

举报

0个回答

所属标签

相似分享

官网相关资源

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版