什么叫嵌入式系统_什么叫嵌入式系统_什么叫嵌入式系统

以前开发者在谈到嵌入式设备的时候,常常忽略嵌入式设备的安全性问题,想当然地认为嵌入式设备不易受到网络攻击,也不是黑客攻击的目标,或者只需要做加密和身份验证就能达到足够的安全性。

但在万物智联的今天,联网设备成指数级增长,嵌入式设备受攻击的量级及复杂度也在同步增长。嵌入式系统需要更多的安全措施是开发者们的共识。

本文基于STM32为大家梳理了嵌入式软件漏洞及安全隔离措施。

典型的嵌入式设备安全威胁和对策

对于安全通信、安全存储、安全启动、安全升级等等大家可能多有耳闻,对于相关的概念也相对熟悉。而软件漏洞可能带来的风险往往被忽视,对于与之相关的安全隔离的概念可能也还比较陌生。

安全隔离

隔离到底解决什么问题,有什么用处呢?

首先,隔离主要针对逻辑攻击,它的一个假设前提是软件可能存在漏洞,软件漏洞可能被利用什么叫嵌入式系统,导致关键信息受到损害,被盗取、被修改等等。

什么叫嵌入式系统_什么叫嵌入式系统_什么叫嵌入式系统

隔离的思想首先是区分资源的不同访问权限,然后软件运行在不同状态,对资源的访问权限是不同的,这里的资源可能是存储器,也可能是外设,甚至是内核的中断、寄存器之类,从而对不同软件进行区分,关键资源只允许一小部分代码能够访问,其他的应用程序部分即使存在漏洞,关键资源也还是一个安全的状态,不能够被恶意代码获取。比如说有 可能导致恶意代码的注入和执行,即使有这样的情况发生,关键资源仍是安全的。这样的隔离可以降低软件漏洞可能带来的风险。

哪些应用场景用到了隔离?

其实我们每天使用的手机上的 TEE 就是隔离的一个典型例子,指纹匹配算法、支付相关的交易认证、手机银行App的关键操作等等,其实都是运行在 TEE 中的,TEE 是从区别于 单独隔离出来的一个独立的部分,这些关键操作都运行在TEE的安全环境中。

MCU上的隔离的概念可能大家听的不多,但是其实MCU中也带有隔离功能,随着 V8-M TZ 的出现,以及TEE概念也可以在MCU上使用了。

利用软件漏洞窃取MCU代码的攻击演示以及对抗攻击可采取的STM32硬件安全防护

接下来我们就来看一个逻辑攻击的示例,这个示例通过利用软件漏洞的一个常见问题 —— stack/ ,实施攻击,从通信端口注入恶意代码,绕过调试端口直接获取MCU内部数据,这意味着即使调试端口已经完全保护什么叫嵌入式系统,软件漏洞依旧可能使攻击者有机可乘,造成关键数据从其他端口泄露。

STM32 MCU 的隔离机制

什么叫嵌入式系统_什么叫嵌入式系统_什么叫嵌入式系统

利用Arm 内核自带的MPU的隔离功能

STM32 MCU不同系列的硬件特性实现隔离

STM32 MCU的双核间隔离

STM32基于架构的系统级隔离

系列课程

总结:STM32 MCU的安全隔离特性

什么叫嵌入式系统_什么叫嵌入式系统_什么叫嵌入式系统

© THE END

什么叫嵌入式系统_什么叫嵌入式系统_什么叫嵌入式系统


限时特惠:
本站持续每日更新海量各大内部创业课程,一年会员仅需要98元,全站资源免费下载
点击查看详情

站长微信:Jiucxh

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注