ARMv8 Security

2024-05-27 15:08
文章标签 security armv8

本文主要是介绍ARMv8 Security,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

内容来自 DEN0024A_v8_architecture_PG.pdf
本质
  • ARMv8 Security 是什么
本质增加了一个 Secure world , 该体系结构的增加意味着单个物理内核可以以时间切片的方式执行来自正常世界和安全世界的代码定义了 硬件实现 , 规范了 软件实现 软件实现 : TrustZone安全扩展硬件实现 : 安全外围设备ARM安全模型将设备硬件和软件资源进行了划分,以便它们要么存在于安全子系统的安全世界中,要么存在于其他所有系统的正常世界中。world这个词不仅用于描述执行状态,还用于描述所有只能在该状态下访问的内存和外围设备。Secure world 		包括 软件和硬件Non-secure world  也包括 软件和硬件
目的:Security is usually defined by the principles of Confidentiality, Integrity, and Availability.A system that offers a certain level of security, a trusted system, is one that protects assets, prevent them from being copied or damaged, or made unavailable.for example passwords and cryptographic keys, or credit card details, from a range of plausible attacks,阻挡两种攻击1. Software attacks通常不需要对设备进行物理访问,并且可以利用操作系统或应用程序中的漏洞进行攻击。2. Simple hardware attacks这些攻击通常是被动的,主要是非破坏性的攻击,需要访问设备和接触电子设备,并使用常见的工具,如逻辑探针和JTAG运行控制单元。不阻挡 "实验室硬件攻击"这种攻击需要复杂且昂贵的工具,如聚焦离子束(FIB)技术或功率分析技术,并且更常用于对付智能卡设备。
  • 硬件
平行世界的诞生将之前的所有都封装到了 Non-secure world , 并增加了一个 Secure worldworld这个词不仅用于描述执行状态,还用于描述所有只能在该状态下访问的内存和外围设备。
  • 软件
除非执行正常世界要求的某些操作,否则通常应避免消耗大量执行时间,并且应尽快向正常世界发送非安全中断信号。
相关概念
  • 两个world的切换 与交互
切换Non-secure world -> Secure world1. Non-secure world 执行代码时 ,调用SMC2. Non-secure world 执行代码时 ,发生 secure world 中的设备中断(一般被映射为FIQ)Secure world  -> Non-secure world1. Secure world 执行代码时 , 调用ERET2. Secure world 执行代码时 , 发生 Non-secure world 中的设备中断 // ?? TODO交互相关组织封装了 SMC 普通世界库提供的高级API,例如authenticate()。该库由与受信任服务相同的供应商提供用户应用程序调用API进行适当的操作系统调用,然后传递到驱动程序代码,然后通过安全监视器将执行传递到TEE
  • SMP 中的 Security
多核系统中的每个核心都具有 两个 world
  • 如何在 Secure world 下调试
安全系统还控制调试供应的可用性。
您可以通过完整的JTAG调试和跟踪控制为正常和安全的软件世界配置单独的硬件,这样就不会泄露有关受信任系统的信息。
您可以通过安全外围设备控制硬件配置选项,也可以通过以下信号对其进行硬连接和控制:•安全特权入侵调试启用(SPIDEN):JTAG调试。•安全特权非侵入性调试启用(SPNIDEN):跟踪和性能监视器。
  • boot
BL1 BL2 是芯片厂家固化到soc芯片里面的代码
BL31 一般是 ATF
BL32 一般是 arm trust os
BL33 一般是 UEFI或者u-boot最终启动后 // 所有的code时分复用同一个核心
EL0 (non-trust)	跑着 linux-app	/ EL0 (trust) 跑着 trust app
EL1 (non-trust) 跑着 linux 		/ EL1 (trust) 跑着 trust os
EL2 (non-trust) 跑着 HYP  		/ EL2 (trust) 什么都没跑
EL3  			跑着 ATF 		// EL3 只有 trust

在这里插入图片描述

这篇关于ARMv8 Security的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1007818

相关文章

Spring Security 基于表达式的权限控制

前言 spring security 3.0已经可以使用spring el表达式来控制授权,允许在表达式中使用复杂的布尔逻辑来控制访问的权限。 常见的表达式 Spring Security可用表达式对象的基类是SecurityExpressionRoot。 表达式描述hasRole([role])用户拥有制定的角色时返回true (Spring security默认会带有ROLE_前缀),去

Security OAuth2 单点登录流程

单点登录(英语:Single sign-on,缩写为 SSO),又译为单一签入,一种对于许多相互关连,但是又是各自独立的软件系统,提供访问控制的属性。当拥有这项属性时,当用户登录时,就可以获取所有系统的访问权限,不用对每个单一系统都逐一登录。这项功能通常是以轻型目录访问协议(LDAP)来实现,在服务器上会将用户信息存储到LDAP数据库中。相同的,单一注销(single sign-off)就是指

浅析Spring Security认证过程

类图 为了方便理解Spring Security认证流程,特意画了如下的类图,包含相关的核心认证类 概述 核心验证器 AuthenticationManager 该对象提供了认证方法的入口,接收一个Authentiaton对象作为参数; public interface AuthenticationManager {Authentication authenticate(Authenti

Spring Security--Architecture Overview

1 核心组件 这一节主要介绍一些在Spring Security中常见且核心的Java类,它们之间的依赖,构建起了整个框架。想要理解整个架构,最起码得对这些类眼熟。 1.1 SecurityContextHolder SecurityContextHolder用于存储安全上下文(security context)的信息。当前操作的用户是谁,该用户是否已经被认证,他拥有哪些角色权限…这些都被保

Spring Security基于数据库验证流程详解

Spring Security 校验流程图 相关解释说明(认真看哦) AbstractAuthenticationProcessingFilter 抽象类 /*** 调用 #requiresAuthentication(HttpServletRequest, HttpServletResponse) 决定是否需要进行验证操作。* 如果需要验证,则会调用 #attemptAuthentica

Spring Security 从入门到进阶系列教程

Spring Security 入门系列 《保护 Web 应用的安全》 《Spring-Security-入门(一):登录与退出》 《Spring-Security-入门(二):基于数据库验证》 《Spring-Security-入门(三):密码加密》 《Spring-Security-入门(四):自定义-Filter》 《Spring-Security-入门(五):在 Sprin

spring security 中的授权使用

一、认证     身份认证,就是判断一个用户是否为合法用户的处理过程。Spring Security 中支持多种不同方式的认证,但是无论开发者使用那种方式认证,都不会影响授权功能使用。因为 SpringSecurity 很好做到了认证和授权解耦。   二、授权     授权,即访问控制,控制谁能访问哪些资源。简单的理解授权就是根据系统提前设置好的规则,给用户分配可以访问某一个资源的

spring security 中的异常

一、简介 Spring Security 中异常主要分为两大类: 1、AuthenticationException: 认证异常 2、AccessDeniedException:  授权异常 AuthenticationEntryPoint 该类用来统一处理  AuthenticationException 异常 AccessDeniedHandler 该类用来统一处理  AccessDe

活动预告|“AI+Security”系列第3期:AI安全智能体,重塑安全团队工作范式

由安全极客、Wisemodel社区、InForSec网络安全研究国际学术论坛和海升集团联合主办的 “AI+Security”系列第3期: AI 安全智能体,重塑安全团队工作范式  线下活动 将于2024年9月11日下午14:00 在中关村智造大街G座路演厅 正式举行 欢迎扫描海报中二维码报名参与 【会议议程】

Spring Security入门介绍

Spring Security 是一个功能强大且高度可定制的安全框架,专为基于 Spring 的企业应用系统提供声明式的安全访问控制解决方案。它充分利用了 Spring IoC(控制反转)、DI(依赖注入)和 AOP(面向切面编程)等核心功能,通过一组可配置的 Bean,为应用系统提供全面的安全服务,包括身份验证、授权、攻击防护、会话管理等。本文是对 Spring Security 的详细介绍,并