[发明专利]一种基于TrustZone的内核数据完整性保护方法在审
申请号: | 202211514849.1 | 申请日: | 2022-11-30 |
公开(公告)号: | CN115964758A | 公开(公告)日: | 2023-04-14 |
发明(设计)人: | 韩皓;王彩亦;黄健;薛善良 | 申请(专利权)人: | 南京航空航天大学 |
主分类号: | G06F21/64 | 分类号: | G06F21/64 |
代理公司: | 江苏圣典律师事务所 32237 | 代理人: | 于瀚文 |
地址: | 210016 江*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 trustzone 内核 数据 完整性 保护 方法 | ||
1.一种基于TrustZone的内核数据完整性保护方法,其特征在于,包括如下步骤:
步骤1,向编译器输入内核及待保护的应用程序的源代码,编译器执行静态分析,确定所有需要保护的安全关键数据,并在程序中插入必要的监控代码,以向独立操作系统运行的监控器报告与需要保护的目标相关的操作;
步骤2,监视器接收到受保护程序中安全关键数据的合法操作后,在专用表中生成或更新关键数据的卷影副本;当使用所述安全关键数据时,监视器将通过比较运行时值和卷影副本来检查关键数据的完整性,如果检测到不匹配,则表示受保护程序中安全关键数据被非法更改,作为响应,监视器将终止相应的程序,并通过proc文件系统向用户报告违规情况。
2.根据权利要求1所述的方法,其特征在于,步骤1中,所述安全关键数据包含:
返回地址;
函数指针;
Vtables指针;
用户注释的非控制数据。
3.根据权利要求2所述的方法,其特征在于,步骤1包括如下步骤:
步骤1-1,编译器定位目标,确定在待保护的应用程序或内核中插入代码的位置,以报告目标内存数据;
步骤1-2,编译器进行代码插装,得到插入了安全代码的增强程序;
步骤1-3,增强程序中对安全关键数据的操作,通过高速共享内存OCRAM从NormalWorld传递到Secure World的监控器中;
步骤1-4,受保护程序向监视器报告五种类型的操作,包括OP_STORE、OP_LOAD、OP_PUSH、OP_POP、OP_FORK和OP_FREE,来监控安全关键数据的生命周期。
4.根据权利要求3所述的方法,其特征在于,步骤1-2包括:
步骤1-2-1,通过堆或栈上帧指针的固定偏移量计算返回地址对象的位置;
步骤1-2-2,如果内存对象声明为函数指针类型,则直接检测到函数指针;如果函数指针是从其他类型转换而来的,则执行流分析来跟踪一组内存对象,所述内存对象的类型不是函数指针,而是从函数指针传播到函数指针;
步骤1-2-3,通过C++ABI实现Vtable指针的标识;
步骤1-2-4,使用属性注释(__attribute__((annotate(sensitive))))来定位用户注释的非控制数据。
5.根据权利要求4所述的方法,其特征在于,步骤1-3包括如下步骤:
步骤1-3-1,共享内存被组织为块矩阵,矩阵的每一列表示一个环形缓冲区;一个单独的环形缓冲区被分配给增强程序的操作的其中一组进程,一组进程的任务标识符具有相同的哈希值;当报告安全关键数据的操作时,程序进程会将环形缓冲区之一的一组进程推送到相应的环中;
步骤1-3-2,环形缓冲区中的每一组进程都由编写共享内存的程序签名,在程序启动时,编译器插入的额外监控代码将与监视器一起计算公私密钥对,公钥保存在监视器中,程序使用私钥对写入共享内存的操作进行签名,在执行任何操作请求之前,监视器将首先使用与程序ID关联的公钥检查签名是否有效;签名确保只有经过身份验证的进程才能写入环形缓冲区,从而防止恶意程序写入任意环形缓冲区;
步骤1-3-3,使用OCRAM作为Normal World和Secure World之间的共享内存,OCRAM在内存地址空间中静态映射,能够通过AXI总线直接访问。
6.根据权利要求5所述的方法,其特征在于,步骤2中,监视器是独立操作系统运行在ARM的TrustZone技术所分隔的Secure World中的。
7.根据权利要求6所述的方法,其特征在于,步骤2中,隔离执行允许两段不同代码完全隔离运行,将安全关键组件和其他非安全关键的软件组件放在不同域中运行。
8.根据权利要求7所述的方法,其特征在于,步骤2中,ARM提供两个执行域:NormalWorld和Secure World,隔离了内核空间和正确配置的安全外围设备。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于南京航空航天大学,未经南京航空航天大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202211514849.1/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种具有清障功能的消防机器人
- 下一篇:夹紧机构、攀爬保护系统及使用方法
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置