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

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

3天内不再提示

使用可信执行环境的分布式软件执行

星星科技指导员 来源:嵌入式计算设计 作者:Asaf Shen 2022-10-20 09:33 次阅读

移动设备以及相关的安全标准和协议已经存在多年。保护入站和出站通信以及保护存储在设备上的永久数据是常见的做法。满足这些要求的标准和技术定义明确,并已被广泛采用 - 例如,互联网工程任务组定义的标准,如互联网协议安全(IPsec)和传输层安全(TLS)或磁盘或闪存的持久性存储加密技术,如Windows的BitLocker和Linux的dm-crypt。然而,随着生活方式变得越来越数字化,智能设备已成为我们日常活动中不可分割的一部分,对安全性的需求显着增加。

随着技术的不断发展并启用了其他用例,越来越多的敏感资产正在进入设备,例如与商业和娱乐相关的凭据。这一发展增加了潜在黑客的圈子,并创建了更广泛的攻击媒介,试图利用现代嵌入式系统的漏洞。

最近一类突出的威胁是由Android等“丰富而开放”的操作系统(OS)的激增引起的。虽然 Android 有意的开放性(表现为代码和文档的可用性,以及内置的调试工具)导致了庞大的开发人员社区的突破性创新,但它是以创新攻击媒介为代价的。这些向量通常会导致一种状态,即黑帽已设法获得特权执行权限,并在运行时完全访问Android操作系统可用的所有资产。

以下讨论描述了缓解此威胁或至少限制受损资产范围并最大限度地降低富操作系统上此类控制损失的相关成本的流行方法。此方法基于敏感信息执行环境的硬件隔离,对于确保最终用户和服务的数据隐私至关重要,尤其是在视频点播、商业和银行服务的情况下。

值得注意的是,设备暴露不断增长的攻击面的现象并不局限于移动消费电子领域。过去被公正地归类为“封闭”的其他嵌入式系统,如汽车控制单元或工业系统,正变得容易受到类似类型的攻击。由于操作系统的开放性以及大量外部连接,这些设备中的主要代码执行实体不再安全。

隔离的执行环境

这种安全方法的关键是引入可信执行环境 (TEE),正如全局平台所称的那样。此环境与功能丰富、基于性能的丰富执行环境 (REE) 隔离。简而言之,TEE用于保护敏感的,基于软件的安全服务免受REE的影响。现代片上系统 (SoC) 通常基于以下硬件措施之一进行这种隔离:

主 SoC 处理器中的硬件分离执行模式:这种方法在 ARM 开发的信任区技术中显而易见,该技术可用于 Cortex-A 处理器系列的所有成员。请注意,在这种方法中,CPU 内核要么执行属于 TEE 的代码,要么执行 REE 代码(通常在两个域之间来回切换)。

物理上分离的处理实体(独立 CPU),专用于安全任务:这种方法更直观地理解,尽管不一定更好(一如既往,魔鬼 - 又名黑帽 - 在细节中),已经存在了更长的时间,并且仍然在许多设备中使用。请注意,在此方法中,专用安全 CPU 内核仅执行与 TEE 相关的代码。

这两种方法的比较与特定的实现细节紧密结合,正确的方法可能因系统而异。实现这种隔离的另一种方法是基于虚拟机管理程序或虚拟机监视器 (VMM),该方法目前在嵌入式空间中不太普遍。使用此方法,执行环境或虚拟机由以较高权限级别运行的软件层(虚拟机监控程序)分隔。假设虚拟机管理程序的实现是可靠的、经过数学验证的,这种基于软件的方法可能非常有效。

在此上下文中,一个有趣的术语相关区别与受信任的 EE 和安全 EE 之间的区别是平行的。术语“受信任”暗指使用模型背后的基本假设:放置在 TEE 中的代码被信任为非恶意且无 bug。TEE 中没有固有的任何东西可以防止格式错误的 TEE 代码向 TEE 的“围墙花园”以外的世界泄露敏感资产。这种信任意味着需要对放置在TEE中的代码进行详尽的审查和验证,特别是如果此代码为TEE中运行的多个不相关的安全服务提供服务。

三通实施

TEE通常提供称为安全操作系统的通用安全服务,其中包括处理安全启动,通信,持久数据存储,加密,安全平台管理等。此外,特定的受信任应用程序 (TA) 使用这些服务在 TEE 中运行。TA 通常是在 REE 中运行的更广泛范围的应用程序的组件,并与用户和操作系统的其他部分进行交互。

使用场景的一个例子是用户尝试使用高价值内容,例如通过订阅服务获得的高清视频。用户界面和多媒体框架接口在丰富的操作系统中执行,而数字版权管理 (DRM) 方案的某些部分(如使用策略实施、内容密钥提取和安全视频路径实施)则在 TEE 中由专用 TA 处理。这种分离是必需的,以符合 DRM 方案所有者在开放环境中发布的健壮性规则。

一次性使用方案可能涉及多个 TA。按照高清内容消费示例,用户可能希望使用Wi-Fi联盟的Miracast等标准将视频从手持设备发送到远程且可能更大的显示器。为了在开放系统上符合米拉卡斯特安全相关要求,米拉卡斯特软件堆栈必须位于 REE 上,与 TEE 中的 TA 通信,按照米拉卡斯特规范的要求实施高带宽数字内容保护 (HDCP) 2.x 规范。

必须特别注意将用例分解为受益于 REE 中执行的部分与强制移植到 TEE 中的部分(参见图 2):

将过多的代码推送到 TEE 中可能会导致性能下降(吞吐量和功耗)以及潜在的安全问题。如前所述,对TEE代码的信任源于对放置在那里的内容的仔细审查,这是一项有利于最少代码的任务。

TEE中没有所需的所有部件可能会增加潜在安全漏洞的风险,从而导致更大的财务制裁可能性。大多数(如果不是全部)内容保护计划的被许可人承担数百万美元的责任。一个常见的误解是,只有与安全相关的协议的加密部分必须得到很好的保护,而将连接加密的逻辑留在TEE之外。事实上,调整“无害”的胶水逻辑完全规避了安全方案。

图 2:在基于 Android 的设备中,分解 TEE 和 REE 之间的内容保护使用方案,可以发现性能问题和安全问题。

poYBAGNQpWyASu4JAAJ8XcVTkqQ506.jpg

当 TEE 中需要多个 TA 时,复杂性级别会显著上升。基本要求是这些TA之间的相互不信任(确保受感染的TA不会损害其他TA)。相互不信任通常由安全操作系统安全服务层处理。然而,在某些情况下,不同的TA必须安全地协作和交换信息,例如前面提到的采用DRM和HDCP链接保护的内容保护方案。

前方的道路

尽管具有相应的安全优势,但使用TEE和REE进行分布式嵌入式软件开发的任务并非微不足道,与传统开发相比,实际上阻碍了开发周期。作为一项相对较新的技术,这一发现并不令人惊讶。一旦设计团队更好地了解概念、相关工具和开发环境,这种现象可能会发生变化。如果服务提供商的要求要求,TEE使用率将加快。

服务提供商关注的一个问题是,由于设备及其安全功能的碎片化,其系统的可扩展性。没有人愿意重复重做应用程序。目前,全球平台标准组织正在解决这一问题。全球平台计划发布一个正式的TEE流程,需要由认可的实验室进行认证

现代设备的开放性,以及新用例引入的扩展连接性,要求嵌入式空间具有更高级别的安全性。使用 REE 和基于硬件的 TEE 进行分布式软件执行有可能形成强大的安全解决方案,在不影响用户体验的情况下满足严格的要求。

与其他技术一样,采用的关键是通过标准化进行碎片整理,这是一个持续的过程,其中TEE的概念正在获得支持。请继续关注TEE嵌入式软件开发的更多进展。

审核编辑:郭婷

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

    关注

    12

    文章

    3923

    浏览量

    127115
  • cpu
    cpu
    +关注

    关注

    68

    文章

    10824

    浏览量

    211089
  • 操作系统
    +关注

    关注

    37

    文章

    6727

    浏览量

    123182
收藏 人收藏

    评论

    相关推荐

    HPM6750evkmini如何实现可信执行环境

    在HPM6700的datasheet中的1.2.15 信息安全系统有提到“基于BOOT ROM 的安全启动机制,支持加密启动,支持可信执行环境”,请问可信
    发表于 09-25 09:27

    分布式软件系统

    分布式软件系统分布式软件系统(Distributed Software Systems)是支持分布式处理的
    发表于 07-22 14:53

    LED分布式恒流原理

    需要恒流,但是电流的大小取决于应用环境,LED照明智能化发展是关键,分布式恒流技术充份预留智能化接口。在分布式LED驱动设计中,驱动回搜、色温可调、灰度控制都要变得方便。这是分布式恒流
    发表于 03-09 16:47

    如何高效完成HarmonyOS分布式应用测试?

    , getText等。② 提供远程和本地描述方式一致的分布式持测试API,仅参数不同,使用简单方便。通过UIDriver来实现。③ 分布式UI测试框架集成于IDE,开发者一键开展自动化测试
    发表于 12-13 18:07

    分布式电源分布式电源装置是指什么?有何特点

    分布式电源分布式电源装置是指与环境兼容的独立电源,功率为数千瓦与环境兼容。这些电源由电力部门、电力用户或第3方所有,用以满足电力系统和用户特定的要求。例如,对偏远地区的用户或商业地区、
    发表于 12-29 06:51

    【学习打卡】OpenHarmony的分布式任务调度

    节点都有自己的系统子集。4.分层:例如,三层架构包括一个用于调度软件的节点、一个用于执行工作的节点,以及一个用于数据库访问的节点。OpenHarmony的分布式任务调度支持对跨设备的应用进行远程启动
    发表于 07-18 17:06

    TSC峰会回顾04 | 异构计算场景下构建可信执行环境

    。那么在异构计算场景下,如何构建可信执行环境呢?分布式机密计算是一种思路,将CPU上的技术应用到其他的XPU上是另一种思路,但最关键的问题是怎么用。该问题在AI安全上非常明显,AI模型
    发表于 04-19 15:20

    异构计算场景下构建可信执行环境

    异构计算场景下,如何构建可信执行环境呢?分布式机密计算是一种思路,将CPU上的技术应用到其他的XPU上是另一种思路,但最关键的问题是怎么用。该问题在AI安全上非常明显,AI模型都在GP
    发表于 08-15 17:35

    分布式对象调试中的事件模型

    针对事件的分布式程序调试过程中,需处理大量的事件消息,如果处理不当,则会影响分布式程序的执行,提出了一种分布式对象中的事件模型,采用这种模型,可以大大简化事
    发表于 12-10 17:29 8次下载

    基于可信度的App-DDoS攻击的分布式流量控制模型

    针对应用层分布式拒绝服务(application layer DDoS,简称App-DDoS)攻击的特点,结合流量控制技术,应用可信度的概念和分布式处理的思想,提出了基于可信度的App
    发表于 05-27 16:23 17次下载

    Burke:到2025年,大多数云服务平台都能提供需要执行分布式云服务

    到2025年,大多数云服务平台至少都能提供一些可以根据需要执行分布式云服务。Burke先生认为:“分布式云可以取代私有云,并为云计算提供边缘云和其他新用例。它代表了云计算的未来。”
    的头像 发表于 10-20 10:51 1608次阅读

    结合可信密码模块和VTCM的分布式可信度量方法

    分布式可信度量方法。将已安装TCM模块的嵌入计算机作为可信基础,在其他计算机上运行VTCM与TCM模块验证配置信息以完成分布式
    发表于 04-01 10:59 4次下载
    结合<b class='flag-5'>可信</b>密码模块和VTCM的<b class='flag-5'>分布式</b><b class='flag-5'>可信</b>度量方法

    获得权威认可!浪潮存储通过两项可信分布式存储评测

    近日,中国信息通信研究院公布可信分布式存储评测结果。浪潮存储凭借AS13000分布式存储成为顺利通过《分布式存储性能检验》和《分布式存储一
    的头像 发表于 02-06 11:29 1718次阅读

    重磅!RISC-V可信执行环境“蓬莱”正式入驻赛昉芯片平台

    、可控、可量产的目标,上海交通大学并行与分布式系统研究所(IPADS)开源了基于RISC-V架构的全新可信执行环境“蓬莱”(PenglaiEnclave)。蓬莱主页h
    的头像 发表于 07-22 11:42 666次阅读
    重磅!RISC-V<b class='flag-5'>可信</b><b class='flag-5'>执行</b><b class='flag-5'>环境</b>“蓬莱”正式入驻赛昉芯片平台

    用基于英特尔® SGX 的可信执行环境有效应对大语言模型隐私和安全挑战

    1 可信执行环境是什么? 大语言模型为什么需要它? OpenAI 的 GPT 系列大语言模型(Large Language Mode,以下缩写为 LLM)的兴起与应用,也带来了诸如数据泄露、数据滥用
    的头像 发表于 07-14 20:10 568次阅读
    用基于英特尔® SGX 的<b class='flag-5'>可信</b><b class='flag-5'>执行</b><b class='flag-5'>环境</b>有效应对大语言模型隐私和安全挑战