TEE软硬件检测
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Page 32
芯片安全简介
非易失性ROM信息的泄露 评估芯片是否具备足够的防护措施,防止ROM信息被泄露
Page 33
芯片安全简介
被动探测 评估在芯片信号线路暴露的情形下对其进行被动探测攻击的难度
Page 34
芯片安全简介
主动探测 评估在芯片信号线路暴露的情形下对其进行被动探测攻击的难度
Page 35
芯片安全简介
非易失性ROM信息的产生 评估芯片是否具备足够的防护措施,防止ROM信息被泄露
Page 36
芯片安全简介
直接读取非易失性可编程存储器 评估芯片是否具备足够的防护措施,防止非易失性可编程存储器中的 某些关键数据被窃取
Page 37
芯片安全简介
非易失性可编程信号的产生 评估芯片是否具备足够的防护措施,防止非易失性可编程存储器中的 数据被窃取
Page 42
芯片安全简介
光注入 检查芯片是否具备足够的保护以防止通过光注入改变芯片程序流程或 使芯片进入一个非预期或者未定义的状态
Page 43
芯片安全简介
放射线注入 检查芯片是否具备足够的保护以防止通过放射线注入改变芯片程序流 程或使芯片进入一个非预期或者未定义的状态
Page 44
保证不会因为硬件设计 失误导致软件攻击成功
Page 13
硬件安全等级(金融行业的安全等级)
银联产业链相关芯片安全等级
银行卡芯片 安全单元芯片 • 高层次芯片硬件 安全 • 软件安全要求 • CC EAL4+ • EMVCO芯片安 全
POS机芯片
个人支付终端 • 几乎不考虑硬件 安全 • 软件安全要求 • 通关过终端硬件 安全 • 不要求芯片硬件 安全 • 软件安全要求
TEE硬件规范符合性检查
结合设计角度和实际查看,检测TEE硬件在设计上是否符合TEE的安全 功能要求
结合TEE特色的新增项目
检测Secure boot流程是否符合需要的安全要求
我们的优势
在TEE方面已开展相当长时间的研发工作 智能卡卡芯片和TEE硬件不能完全等同,但测试方向是一致的 在智能卡芯片检测环境(硬件和软件)的基础上,很容易开展TEE硬件 测试,且自主设备的研发经验使得可以更快的修改软硬件,保证TEE硬 件测试在完备的条件下进行 公司相关技术人员系统接受过ARM Trust Zone的培训,对此有较长时间 的研究
19.供电电源操纵 20.其他非侵入式操纵 24.形象化功耗信息 25.简单功耗分析(SPA) 26.差分能量分析(DPA) 28.随机数发生器测试 29.差分故障分析 30.中断处理
详细介绍芯片安全项目
4.芯片表面简要分析 21.电磁操纵 22.光注入 23.放射线注入 27.电磁辐射(EMA)
1.芯片表面准备 2.芯片背部准备 5.芯片表面详细分析 6.传输系统的物理位置探测 7. 传输系统的FIB修改 8.逻辑建立模块的干扰 9.逻辑建立模块的修改 10.测试模式的重激活 Page 15
Page 47
芯片安全简介
电磁辐射分析 评估芯片是否具备足够的保护以防止通过电磁辐射分析恢复密码或程 序代码信息
Page 48
芯片安全简介
随机数发生器测试 检查芯片中的随机数产生器产生的随机数是否具备足够的随机性,以 保证其无法被预测
Page 49
芯片安全简介
差分错误分析 评估芯片是否具备足够的保护以防止通过差分错误分析获取密钥信息
•代码存储在片上ROM中 •初始化NVM控制器 •将校验第二步程序的代码 •代码存储在NVM中 •将校验TEE的代码 •初始化可信执行环境 •将校验主操作系统的代码
3rd 第三步 启动可信执行环境 (TEE)
富操作系统 (如Android)
Page 9
硬件安全是TEE的基石
如果硬件功能本身即不具备或不正确 或 易受攻击导致很容易进入功能不正确状态
芯片安全简介
传输系统物理位置探测 评估芯片是否具备足够的保护以防止其传输系统的物理位置被探测
Page 27
芯片安全简介
传输系统的FIB修改 评估芯片是否具备足够的防护措施,使得攻击者对于传输系统的FIB 修改变得非常困难
Page 28
芯片安全简介
逻辑建立模块的干扰 评估芯片是否具备足够的防护措施,抵抗对于逻辑模块(协处理器、 RNG、安全机制等)的干扰
典型的如显示模块(内容保护的关键组成部分)
当前如果在播放受保护的影视内容,非安全区的程序应不能执行截屏操 作(不可以读取相关显存)
TEE对硬件要求(固件,可信启动)
在可信操作系统(由软件开发商提供)启动之前,芯片需要一个可信 的启动过程,以防止可信操作系统被篡改
1st 第一步 片上引导程序 Boot Strap 2nd 第二步 引导转载程序 Boot Loader
Page 23
芯片安全简介
传感器功能验证 检查芯片是否应具备环境传感器并正常工作
Page 24
芯片安全简介
芯片表面简要分析 验证芯片指标(如存储器大小等),评估芯片硬件复杂性
Page 25
芯片安全简介
芯片表面详细分析 评估芯片(或芯片的某部分)的功能性和安全性
Page 26
Page 29
芯片安全简介
逻辑建立模块的修改 评估芯片是否具备足够的防护措施,抵抗对于逻辑模块(协处理器、 RNG、安全机制等)的修改
ቤተ መጻሕፍቲ ባይዱ
Page 30
芯片安全简介
测试模式的重激活 评估芯片是否具备足够的保护以防止测试模式被重激活
Page 31
芯片安全简介
利用片上测试特性 评估芯片是否备足够的保护以防止测试特性被滥用
Page 40
芯片安全简介
其他非侵入性操纵 检查芯片是否具备足够的保护以防止通过外部参数操纵改变芯片程序 流程或使芯片进入一个非预期或未定义的状态。改变芯片的时钟参数、 复位信号参数、输入输出参数,不能影响程序流程
Page 41
芯片安全简介
电磁操纵 检查芯片是否具备足够的保护以防止通过使用高压电场或强磁场改变 芯片程序流程或使芯片进入一个非预期或者未定义的状态
Page 11
硬件安全等级
需求场景决定产品的安全等级
攻击所得
攻击花销
Page 12
硬件安全等级
TEE硬件安全等级分类
有很强的抵抗硬件 攻击能力 有一定的抵抗硬件 攻击能力 保证安全功能实现 的正确性
可以抵抗如DPA、多点 错误攻击等实施难度较 大的硬件攻击
可以抵抗如SPA、简单 的单点错误攻击等硬件 攻击
数据1
全 数据2
TEE对硬件要求(存储器)
包括片上及片外RAM,ROM,NVM等 未分配前可不区分状态 分配使用后硬件区分安全/非安全态
非安全
指令
非安全 安
数据1
全 数据2
TEE对硬件要求(总线)
额外传输安全状态
某种实现
1bit
表明传输的 安全属性
8bit
正常传输数 据和指令
TEE对硬件要求(外围附件)
11.利用片上测试特性 12.非易失性ROM信息泄露 13.被动探测 14.主动探测 15.非易失性ROM信息产生 16.直接读取非易失性可编程存储器 17.非易失性可编程存储器信号的产生 31.传输信息分析
硬件检测内容及优势
芯片安全31项测试
基于智能卡芯片安全31项检测的经验,开展同等项目的测试
大纲
为什么需要检测硬件 硬件安全等级 硬件检测内容
1 2 3 4 5 6
软件检测范围
软件测试架构 软件检测大纲(要点)
Page 2
为什么需要检测硬件
TEE的安全思想是基于硬件的
典型的TEE架构
非常适合“内容保护”
一个CPU
物理上只有一个 安全区代码的执 行和非安全区性 能一致
测试软件 测试软件与Rich OS连接,通过如ADB Rich OS端测试应用 Rich OS(如TVOS、Android) TEE Client API 监视器(Monitor) 非可信硬件 可信硬件 时间服务
测试工具
TEE端测试应用 可信存储
TEE内核 安全启动 (Secure boot)
Page 18
TEE的安全性就无从保证!
现实情况
TEE相关硬件并没有统一标准
ARM Trust Zone:提供各厂商理论上的指导和符合标准的硬件IP(收 费),但不限制厂商的具体实现,也不强制厂商购买ARM的IP,厂商自 行设计所有IP都是可以的 Intel:不公开硬件实现细节
在没有第三方检测认证的情况下 都无法保证厂商在功能上的正确实现,更不用说抵抗硬件攻击!
On-Soc
CPU(处理器) 非安全区 安全区
硬件保证安全区 的安全性
实现完善的系统 可以屏蔽来自软 件层面的攻击
非安全存储区和外围硬件 可自由被访问 安全区可以以非安全区一 样的能力访问非安全区硬 件资源 安全存储区和外围硬件 只有硬件安全标识位标识 为有效时,才允许访问
不允许非安全区访问
Page 50
芯片安全简介
中断处理 检查芯片是否能够正确执行中断处理,强制中断不会使芯片进入非预 期或未定义状态
Page 51
芯片安全简介
传输信息分析 芯片应具备足够保护,防止芯片内部传输的数据被恢复为可读的信息
Page 52
待测样品
软件测试大纲(要点)
Page 19
芯片安全简介
芯片安全测试共有31个测试项按照测试手段的不同可分为:侵入式, 半侵入式,非侵入式三类
非侵入式
• 侧信道攻击、各类干扰攻击、随机数验证等11个项目 • 能够以最小成本实施攻击
半侵入式
• 错误注入、传输信息分析等8个项目 • 对芯片受到光、放射线等干扰,并且对芯片内部传输信息进行分析处理,获取内部总 线明文信息
隔离的安全区
TEE对硬件要求(CPU)
指令区分安全/非安全态
TEE新增! 安全/非安全标识
指令 指令
指令访问硬件资源时能表明自己的安全属性
我是XX指令,来自非安全区 要访问XX位置
CPU
硬件资源
内部寄存器和缓存区硬件区分安全/非安全态
XX位置是安全区 不可以访问,错误!
非安全
指令
非安全 安
Page 38
芯片安全简介
电压对比/电子束探测 评估芯片是否具备足够的保护以防止通过形象化芯片表面电压的手段 获取存储器中敏感信息的内容和位置
Page 39
芯片安全简介
供电电源操纵 检查芯片是否具备足够的保护以防止通过供电电源操纵改变芯片程序 流程,或使芯片进入一个非预期或未定义的状态
芯片安全简介
形象化功率消耗中隐藏的重复信息 评估芯片是否具备足够的保护以防止通过形象化功率消耗中隐藏的重 复信息来获取芯片上运行的程序信息
Page 45
芯片安全简介
简单功耗分析 评估芯片是否具备足够的保护以防止通过简单功耗分析恢复密钥信息
Page 46
芯片安全简介
差分功耗分析 评估芯片是否具备足够的保护以防止通过差分功耗分析恢复密钥信息
Page 16
软件检测范围
客 户 端 应 用
客 户 端 应 用
可 信 应 用
可 信 应 用
Rich OS(如TVOS、Android) TEE Client API
时间服务
可信存储
TEE内核 安全启动 (Secure boot)
监视器(Monitor) 非可信硬件 可信硬件
Page 17
软件测试架构
• 较低层次芯片硬 件安全 • 软件安全要求
Page 14
硬件检测内容(芯片安全以往经验)
公司的相关技术人员曾是“国家金融IC卡安全检测中心”项目(获 2014年度银行科技发展特等奖)的主要技术参与人员 在芯片安全领域有丰富的实践经验(相关人员平均有4年以上的相关 工作经验) 3.传感器功能验证
侵入式
• 逻辑建立模块、各类存储器攻击等12个项目
• 分别从芯片逻辑单元、模拟单元、存储器、传输总线、芯片总体设计等角度,全面地 对芯片硬件安全实现提出要求
Page 21
芯片安全简介
芯片表面准备 评估芯片是否具有足够的保护以防止芯片表面被攻击
Page 22
芯片安全简介
芯片背部准备 评估卡与其嵌入式芯片是否具有足够的保护以防止芯片背面被攻击