System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 保护程序逻辑一致性的协处理器架构及程序保护方法技术_技高网

保护程序逻辑一致性的协处理器架构及程序保护方法技术

技术编号:40354540 阅读:8 留言:0更新日期:2024-02-09 14:39
本发明专利技术公开一种保护程序逻辑一致性的协处理器架构及程序保护方法,该架构部署在CPU内部,包括LWC加密单元,NUM计算单元,Ctr表;所述LWC加密单元用于在内部预置轻量级密码算法,同时存储加密参数三元组(K,Ctr,NUM),其中K表示密钥,Ctr表示计数器,NUM表示加密序号;所述NUM计算单元用于存储程序/进程各段基地址并计算加密序号NUM;所述Ctr表用于存放程序编号ID,该ID下的若干进程编号PID以及应用于各段加解密的计数器Ctr。本发明专利技术可保证单个加密分组和系统处理指令/数据流分组相等,从而避免了对齐和重复存取等辅助操作,在节约硬件成本基础上提升了体系结构效率。

【技术实现步骤摘要】

本专利技术涉及程序保护,尤其涉及一种保护程序逻辑一致性的协处理器架构及程序保护方法


技术介绍

1、随着对计算机系统攻击手段的普及和演化,保证系统中程序安全的必要性正逐渐上升,因为程序中可能包含对数据处理和分析等各种敏感的操作。如果这些数据和操作在系统中被泄露或破坏,将会带来巨大的风险和损失。对计算机系统中程序保护的概念最早来源于文献[lampson b w.protection[j].acm sigops operating systems review,1974,8(1):18-24.]和[wilkes m v.hardware support for memory protection:capability implementations[c]//international symposium on architecturalsupport for programming languages&operating systems.acm,1982.],经过半个世纪的发展,该领域涌现出众多优秀的保护方案,特别是对细粒度的控制流保护,如在程序执行期间监控控制流传输以执行安全策略的program shepherding[kiriansky v,bruening d,amarasinghe s p.secure execution via program shepherding[c]//usenix securitysymposium.2002,92:84.];显著提高计算系统安全性,性能开销可忽略不计的dynamicinformation flow tracking[suh g e,lee j w,zhang d,et al.secure programexecution via dynamic information flow tracking[j].acm sigplan notices,2004,39(11):85-96.]等。然而,目前已有工作大多集中于突出程序生成、存储或运行的某一阶段或若干阶段,研究者找寻其中可能存在的安全漏洞或给出防护策略,但对程序全流程的安全性尚未提出统一定义和防护策略。

2、为了保护程序全流程的安全性,我们首先需要分析程序执行的本质。一个程序的执行可视为一个状态机从初始状态出发遵循某种逻辑,不断地通过指令的执行进行状态变更的过程。因此程序的正常执行是依赖于其固有逻辑实现的。换言之,逻辑不仅是程序本身意义的一部分,也贯穿了其生成、存储和运行的全流程,对程序逻辑的保护意味着保护程序全流程的安全性。特别地,目前已有的攻击方式如:软件升级攻击、基于硬件的密钥窃取攻击、算法替换攻击、基于软硬件和操作系统的漏洞挖掘利用等攻击等,本质上都是为了寻找可以触发篡改原本程序功能和意图的逻辑的可能性。篡改程序逻辑可能会将敏感流程、系统、网络和数据置于攻击者手中,从而可用于攻击传统it资产。因此,程序逻辑的安全性是至关重要的。


技术实现思路

1、针对当前程序面临的逻辑安全现实威胁,本专利技术提出程序的逻辑一致性(logicconsistency,lc)这一安全定义,该概念是指程序实际的执行结果与指令的预定逻辑保持一致,不能被恶意用户或第三方篡改、伪造或破坏。这是一种保证程序逻辑机密和正确的重要安全属性。程序的逻辑一致性旨在从更细粒度的指令/数据流层次来刻画从程序生成到静态存储再到动态执行的连续逻辑安全性,该概念可被抽象为一种全流程的系统整体安全。

2、目前学界尚未提出保护程序lc的相关架构。考虑到lc刻画了程序全流程的安全性,参考已有策略可知,为有效达成保护系统整体安全的目的,在片上增加协处理器的方案通常是合适的选择。例如jintide通过架构状态记录、回放、分析cpu的io和内存行为,同时验证记录是否正确回放指令集架构或涉及恶意行为。更为重要的是,我们必须保证当系统的外部安全组件失效或被屏蔽/绕过时,攻击者仍然无法篡改程序逻辑。将系统安全性紧密归约到cpu内核硬件层次。此外,我们希望在对程序运行流程改动尽可能小的前提下,利用操作系统已有的策略实现指令/数据流粒度的程序内容保护。因此,我们需要利用硬件底层设计并结合软件架构实现以保护程序lc。

3、进一步地,采用密码学原语保护程序lc也是必须的,因为通过加密方式可以在源头上阻断敌手篡改程序执行逻辑的途径。特别地,作为存储程序指令和数据的关键载体,对内存的加密具有重要意义。内存加密技术是一种保护内存中指令和数据免遭未授权敌手窥探或篡改的技术,其直接目的是增加与制造漏洞和窃取敏感信息相关的攻击者的工作负载。由于内存加密仅与执行期间数据和代码的机密性有关,因此我们的方案需要对传统的me技术进行补充和扩展以确保程序逻辑在运行之前的安全性。此外,对于已有的程序加密框架具体实现方案,提供可证明安全的相关工作较少。而对于程序lc安全性的理论扩展而言,该证明是重要且必须的。

4、基于以上考虑,在本专利技术中我们设计了一种基于密码学原语保护程序逻辑一致性(lc)的协处理器架构ecp(encrypting core processing)及程序保护方法,对程序全生命周期安全性进行系统地描述。本专利技术的贡献主要包含以下三个方面:

5、1.本专利技术研究了一个以前未被探索的程序保护安全问题——对程序全生命周期的安全性尚未提出统一的定义和保护策略。本专利技术提出程序的逻辑一致性(lc)概念,从细粒度的指令/数据流层次来刻画从程序生成到静态存储再到动态执行的连续安全性。

6、2.本专利技术设计了用于保护程序lc的协处理器架构ecp,使用密码学原语对程序的全流程安全进行保护。通过可证明安全理论将敌手破坏程序lc的能力归约到密码算法本身的安全性上,并分析该架构抵御不同攻击能力敌手的有效性。

7、3.在ecp具体实现细节方面,本专利技术提出ctrn分组加密模式,基于程序指令和数据相对段基址的偏移值实现加解密。同时,ecp基于x64架构采用轻量级密码算法,既节约了硬件成本,也有效避免了分组对齐和重复存取等预处理操作,从而提高了实现效率。

8、为了实现上述目的,本专利技术采用以下技术方案:

9、本专利技术一方面提出一种保护程序逻辑一致性的协处理器架构,该架构部署在cpu内部,包括lwc加密单元,num计算单元,ctr表,ctr生成单元,程序和进程的编号单元;

10、所述lwc加密单元用于在内部预置轻量级密码算法,同时存储加密参数三元组(k,ctr,num),其中k表示密钥,ctr表示计数器,num表示加密序号;

11、所述num计算单元用于存储程序/进程各段基地址并计算加密序号num;

12、所述ctr表用于存放程序编号id,该id下的若干进程编号pid以及应用于各段加解密的计数器ctr;

13、所述程序和进程的编号单元用于生成程序编号id及该程序的若干进程编号pid;

14、所述ctr生成单元用于生成应用于各段加解密的计数器ctr;

15、本文档来自技高网...

【技术保护点】

1.一种保护程序逻辑一致性的协处理器架构,其特征在于,该架构部署在CPU内部,包括LWC加密单元,NUM计算单元,Ctr表,Ctr生成单元,程序和进程的编号单元;

2.根据权利要求1所述的保护程序逻辑一致性的协处理器架构,其特征在于,所述密钥K默认是固定的,若更换则需要对已加密的程序解密后重新加密。

3.根据权利要求1所述的保护程序逻辑一致性的协处理器架构,其特征在于,所述LWC加密单元内部预置SIMON算法,将三元组(K,Ctr,NUM)视为加密参数。

4.根据权利要求1所述的保护程序逻辑一致性的协处理器架构,其特征在于,加密时NUM计算单元存储PE文件文字段和数据段的基地址,根据待加密指令/数据相对基地址的偏移计算NUM;解密时NUM计算单元中存储该进程内存映射中指令段和数据段的基地址,根据从内存中取得的密文指令/数据相对基地址的偏移计算NUM。

5.根据权利要求1所述的保护程序逻辑一致性的协处理器架构,其特征在于,所述Ctr表中,程序加密过程中的Ctrcode和Ctrdata不同,其中Ctrcode表示指令加密计数器,Ctrdata表示数据加密计数器;exe加密过程中用到的Ctr和运行过程中用到的Ctr也不同。

6.利用权利要求1所述协处理器架构对可执行文件生成时的保护方法,其特征在于,包括:

7.利用权利要求1所述协处理器架构对可执行文件运行时的保护方法,其特征在于,包括取指令操作保护和调用函数操作保护。

8.根据权利要求7所述的保护方法,其特征在于,所述取指令操作保护包括:

9.根据权利要求8所述的保护方法,其特征在于,所述调用函数操作保护包括:

...

【技术特征摘要】

1.一种保护程序逻辑一致性的协处理器架构,其特征在于,该架构部署在cpu内部,包括lwc加密单元,num计算单元,ctr表,ctr生成单元,程序和进程的编号单元;

2.根据权利要求1所述的保护程序逻辑一致性的协处理器架构,其特征在于,所述密钥k默认是固定的,若更换则需要对已加密的程序解密后重新加密。

3.根据权利要求1所述的保护程序逻辑一致性的协处理器架构,其特征在于,所述lwc加密单元内部预置simon算法,将三元组(k,ctr,num)视为加密参数。

4.根据权利要求1所述的保护程序逻辑一致性的协处理器架构,其特征在于,加密时num计算单元存储pe文件文字段和数据段的基地址,根据待加密指令/数据相对基地址的偏移计算num;解密时num计算单元中存储该进程内存映射中指令段和数据段的基地址,根...

【专利技术属性】
技术研发人员:郑建华陆思奇王永娟高杨樊昊鹏冯珮轩冯叶
申请(专利权)人:中国人民解放军战略支援部队信息工程大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1