ATF(TF-A) EL3 SPMC威胁模型-安全检测与评估

安全之安全(security²)博客目录导读

ATF(TF-A) 威胁模型汇总

目录

一、简介

二、评估目标

1、数据流图

三、威胁分析

1、信任边界

2、资产

3、威胁代理

4、威胁类型

5、威胁评估

5.1 端点在直接请求/响应调用中模拟发送方FF-A ID

5.2 端点在直接请求/响应调用中模拟接收方FF-A ID

5.3 篡改端点和SPMC之间共享的内存

5.4 端点可以篡改自己的状态或另一个端点的状态

5.5 重放端点之间过去通信的片段

5.6 恶意端点可能试图通过使用无效或不正确的输入参数来提取数据或状态信息

5.7 恶意端点可能伪造直接消息请求,从而通过直接消息响应揭示另一个端点的内部状态

5.8 探测端点之间的FF-A通信

5.9 恶意代理可能会尝试使用基于软件的cache侧信道攻击技术来泄露SPMC状态或秘钥

5.10 恶意端点可能会尝试向SPMC发送针对端点内某个服务的请求,从而拒绝另一个端点访问该服务

5.11 如果借用方端点遇到致命异常,则拒绝出借方端点进行进一步处理。如果接收方遇到致命异常,则拒绝新的发送方端点进行进一步处理

5.12 恶意端点可能会尝试赠予、共享、出借、放弃或回收未经授权的内存区域


一、简介

        本文档提供了TF-A EL3 Secure Partition Manager(EL3 SPM)实现的威胁模型。EL3 SPM的实现是基于Arm A-profile规范的Arm固件框架。

二、评估目标

        在这个威胁模型中,评估的目标是EL3固件中的Secure Partition Manager核心组件(SPMC)。EL3的monitor和SPMD由通用TF-A威胁模型涵盖。

        这个威胁模型的范围是:

        1)EL3 SPMC的TF-A实现

        2)该实现符合FF-A v1.1规范。

        3)安全分区是在引导时静态配置的。

        4)关注生命周期的运行时部分(没有特别强调引导时间、出厂固件配置、固件更新等)。

        5)不包括高级或侵入性物理攻击,如解封,FIB(聚焦离子束)等。

1、数据流图

        下图显示了SPM在EL3上分为SPMD和SPMC组件的高级数据流图。SPMD主要充当非安全世界和安全世界之间的中继,它被认为暴露了很小的攻击面。

        下表给出了每个元素的描述。在图中,红色虚线表示信任边界。虚线之外的组件被认为是不可信的。

元素

描述

DF1

SP到SPMC通信。FF-A函数调用或实现定义的Hypervisor调用。
注意:与LSP通信时,SP1会以LSP为目的向SPMC发起直连消息请求。

DF2

SPMC到SPMD通信。

DF3

SPMD到NS转发。

DF4

SPMC到LSP通信。NWd到LSP的通信是通过SPMC进行的。LSP可以通过SPMC发送直接响应SP1或NWd。

DF5

硬件控制

DF6

Bootloader镜像加载

DF7

外部内存访问

三、威胁分析

        此威胁模型遵循与通用TF-A威胁模型类似的方法。以下部分定义:

        1)信任边界
        2)资产
        3)威胁代理
        4)威胁类型

1、信任边界

        1)非安全世界是不可信的。
        2)安全世界和非安全世界是不同的信任边界。
        3)EL3监视器、SPMD和SPMC是可信的。
        4)引导加载程序(如果使用TF-A,特别是BL1/BL2)和运行时BL31通过使用可信引导被隐式信任。
        5)EL3 monitor,SPMD, SPMC不信任SP(Secure Partitions)。

2、资产

        确定以下资产:

        1)SPMC状态。
        2)SP的状态。
        3)endpoints之间的信息交换(partition消息)。
        4)SPMC secrets(例如启用时的指针身份验证密钥)。
        5)SP secrets(例如应用程序密钥)。
        6)调度周期。
        7)共享内存。

3、威胁代理

        确定以下威胁代理:

        1)非安全端点(稍后称为NS-Endpoint):NS-EL2 (Hypervisor)或NS-EL1 (VM或OS内核)上的非安全世界客户端。
        2)安全端点(以后称为S-Endpoint):通常是一个安全分区。
        3)硬件攻击(非侵入性)需要对设备进行物理访问,例如总线探测或DRAM压力测试。

4、威胁类型

        在通用TF-A威胁模型中暴露的以下威胁类别被重用(re-used):

        1)欺骗(Spoofing)
        2)篡改(Tampering)
        3)抵赖(Repudiation)
        4)信息泄露(Information disclosure)
        5)拒绝服务(Denial of service)
        6)特权提升(Elevation of privilege)

        类似地,此威胁模型重用相同的威胁风险评级。风险分析是基于服务器或移动环境进行评估的。物联网不被评估,因为EL3 SPMC主要用于客户端。

5、威胁评估

        通过对数据流图的每个元素应用STRIDE威胁分析,可以识别出以下威胁。

5.1 端点在直接请求/响应调用中模拟发送方FF-A ID

5.2 端点在直接请求/响应调用中模拟接收方FF-A ID

5.3 篡改端点和SPMC之间共享的内存

5.4 端点可以篡改自己的状态或另一个端点的状态

5.5 重放端点之间过去通信的片段

5.6 恶意端点可能试图通过使用无效或不正确的输入参数来提取数据或状态信息

5.7 恶意端点可能伪造直接消息请求,从而通过直接消息响应揭示另一个端点的内部状态

5.8 探测端点之间的FF-A通信

5.9 恶意代理可能会尝试使用基于软件的cache侧信道攻击技术来泄露SPMC状态或秘钥

5.10 恶意端点可能会尝试向SPMC发送针对端点内某个服务的请求,从而拒绝另一个端点访问该服务

5.11 如果借用方端点遇到致命异常,则拒绝出借方端点进行进一步处理。如果接收方遇到致命异常,则拒绝新的发送方端点进行进一步处理

5.12 恶意端点可能会尝试赠予、共享、出借、放弃或回收未经授权的内存区域

参考:11.3. EL3 SPMC Threat Model — Trusted Firmware-A 2.9.0 documentation

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/81411.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

XUbuntu22.04之查找进程号pidof、pgrep总结(一百九十)

简介: CSDN博客专家,专注Android/Linux系统,分享多mic语音方案、音视频、编解码等技术,与大家一起成长! 优质专栏:Audio工程师进阶系列【原创干货持续更新中……】🚀 人生格言: 人生…

Unity工具——LightTransition(光照过渡)

需求描述 在游戏中,开发者为了让玩家更直接地看到待拾取的物品从而为其添加一种闪烁效果,或者模拟现实中闪烁的灯光效果,我能够想到的一种方案则是通过控制光照强度来实现,那么本篇文章我们就尝试通过这个方案来实现一下&#xff…

LabVIEW通过IEC61508标准验证ITER联锁系统

LabVIEW通过IEC61508标准验证ITER联锁系统 保护环境要求系统能够保护机器免受工厂系统故障或机器危险操作造成的严重损坏。负责此功能的ITER系统是联锁控制系统(ICS)。该系统通过中央联锁系统(CIS)监督和控制不同的工厂联锁系统&…

react | react-router-dom v6 结合 antd 面包屑 |嵌套路由

大致需求图示如上: 需求: 1. 点击page2默认进入/page2/中国 2. 在中国界面选择省份,进入浙江省 3. 在浙江省中选择市,进入杭州市 4. 选择大学,进入浙江大学 5. 点击面包屑中某个tab,进入对应tab界面&…

Ubuntu22.04_如何调试ROS2_humble的源代码

这里的源码,是指的ros2 humble的官方源码。如果是自己手撸的节点或相关源码,请参考本人以前的贴子, Ubuntu20.04vscode快速调试ROS通用程序_ubuntu20.04vscode那个版本和ros 兼容_高精度计算机视觉的博客-CSDN博客 Ubuntu20.04+…

HTML 知识扫盲

写在前面 HTML 是一门超文本标记语言,不管你听没听说过 HTML,但在网上冲浪的途中你无时不刻都在与它接触,他遍布在每个你看得到的互联网的角落。其实对于笔者而言,我已经断断续续地学习过这门语言,经过时间的磋磨&…

利用cms主题构造木马(CVE-2022-26965)

简介 CVE-2022-26965是Pluck CMS 4.7.16版本存在一个远程shell上传执行漏洞。 攻击者可利用此漏洞通过构造恶意的主题包进行上传并执行,未经授权访问服务器,造成潜在的安全隐患。 过程 1.打开环境,查看源码,发现login.php 2.进…

带你熟练使用list

🎈个人主页:🎈 :✨✨✨初阶牛✨✨✨ 🐻强烈推荐优质专栏: 🍔🍟🌯C的世界(持续更新中) 🐻推荐专栏1: 🍔🍟🌯C语言初阶 🐻推荐专栏2: 🍔…

使用jupyter运行sympy库

1.首先下载sympy插件: (1)在下图这里输入cmd (2)pip install sympy 若出现不信任此资源错误,改成pip install sympy--trusted-host pypi.tuna.tsinghua.edu.cn (3)检查是否安装成功 python import sympy sympy.__version__&#…

GemBox.Bundle 47.0.1227 Crack

GemBox.Document 35.0.1480 GemBox.Email 17.0.1147 GemBox.Imaging 10.0.1096 GemBox.Pdf 17.0.1404 GemBox.Presentation 25.0.1526 GemBox.Spreadsheet 49.0.1454 GemBox.Spreadsheet 从 .NET 应用程序读取、写入、转换和打印 XLSX、XLS、XLSB、CSV、HTML 和 ODS 电子表…

Git使用方法与IDEA集成Git

1.Git介绍 1.1版本控制(理解) 无论是代码编写,还是文档编写,我们都会遇到对文档内容反复修改的情况。 1.2开发中存在的问题(理解) 程序员小明负责的模块就要完成了,就在即将提交发布之前的一瞬间,电脑突然蓝屏,硬盘…

解决three.js中加载纹理贴图时,初次渲染不显示的问题

效果: 解决方法:主要是将一些构建网格对象的操作放在了textureLoader.load()方法中,加载图片也用了require init() {// 1, 创建场景对象this.scene new this.$three.Scene();// 2, 创建立方缓冲几何体this.geometry new this.$three.BoxGe…

Promethus(普罗米修斯)安装与配置(亲测可用)

1. 普罗米修斯概述 Prometheus(是由go语言(golang)开发)是一套开源的监控&报警&时间序列数 据库的组合。适合监控docker容器。 Prometheus是最初在SoundCloud上构建的开源系统监视和警报工具包 。自2012年成立以来,许多公司和组织都采用了Prometheus&#…

电压源与电流源简介

文章目录 电压源与电流源简介1.电压源的本质2.电流源的本质3.Q&A 推荐学习 电压源与电流源简介 1.电压源的本质 无论带什么样的负载,输出电压保持不变的电路才是电压源。 一个电路想要输出电压不变,那它必须有强有力的输出电流能力,而不…

idea在同一窗口打开多个项目

ieda中同一窗口打开多个项目操作如下: 1.点击文件中的项目结构 2.点击模块,选择号 3.点击想要加入的模块,点击下一步确定等,最后点击应用,确定。变成如下图所示,这样方便多个项目代码的阅读

EdgeX Foundry MQTT设备服务

一、部署edgex 1.运行命令行,进入放置docker-compose-fuji-no-secty.yml文件的路径下 下载到本地的docker-compose文件 执行: docker-compose -f docker-compose-fuji-no-secty.yml pull 拉取相关镜像,这里默认将文件中没有注释的服务镜像全部…

27、Flink 的SQL之SELECT (SQL Hints 和 Joins)介绍及详细示例(2-1)

Flink 系列文章 1、Flink 部署、概念介绍、source、transformation、sink使用示例、四大基石介绍和示例等系列综合文章链接 13、Flink 的table api与sql的基本概念、通用api介绍及入门示例 14、Flink 的table api与sql之数据类型: 内置数据类型以及它们的属性 15、Flink 的ta…

HarmonyOS开发环境搭建

一 鸿蒙简介: 1.1 HarmonyOS是华为自研的一款分布式操作系统,兼容Android,但又区别Android,不仅仅定位于手机系统。更侧重于万物物联和智能终端,目前已更新到4.0版本。 1.2 HarmonyOS软件编程语言是ArkTS&#xff0c…

Flutter快速入门学习(一)

目录 前言 新建项目 项目入口 Dart的入口(项目的入口) 布局 视图组件 Container(容器) Text(文本) Image(图片) Row(水平布局)和Column&#xff08…