可信动态度量过程中不可信进程自恢复方法技术

技术编号:39518241 阅读:12 留言:0更新日期:2023-11-25 18:56
本发明专利技术属于可信计算技术领域,提供可信动态度量过程中不可信进程自恢复方法

【技术实现步骤摘要】
可信动态度量过程中不可信进程自恢复方法、系统及设备


[0001]本专利技术涉及可信计算
,具体涉及一种可信动态度量过程中不可信进程自恢复方法

系统及设备


技术介绍

[0002]目前,电力控制系统仍面临注入攻击

篡改和渗透控制等一系列致命安全隐患,造成电站运行异常或发电中断,甚至对重要发电设备造成重大破坏

传统防火墙

入侵检测

病毒防范的封堵查杀方式仅能通过内外网安全隔离来横向保障系统安全,不能保证内网安全,无法达到纵深防护效果,可信计算技术有望解决该问题

[0003]可信度量是可信计算的关键技术,用于测量和评估系统预期描述与系统实际行为的符合程度,对于可信计算平台的信任链构建和远程证明起到重要的支撑作用

可信度量在一定的时间点对度量对象的状态信息进行采集,以检验度量对象的当前状态是否符合预期

可信度量分为静态度量和动态度量两部分,静态度量在计算实体启动和控制权传递之前,使用签名或者杂凑算法计算度量对象静态文件的度量值,与事先记录的基准值进行比较,从而判定将要运行的计算实体是否符合预期

动态度量是计算实体获得控制权并处于运行状态之后,在计算实体运行过程中的一些关键环节,对计算实体的运行内存

执行环境和行为等进行的度量

操作系统内核在运行过程中可能受到缓冲区溢出

符号表替换

进程挟持和直接内存访问(
DMA
)外设攻击等动态的攻击行为,使操作系统进入到非预期状态

因此,操作系统内核的动态度量技术对构建可信计算环境和实现动态的远程证明具有十分重要的意义

[0004]可信动态度量通常包括4个步骤:(1)构建行为预期,也就是收集基准值;(2)获取度量平台运行时证据,也就是获取进程当前的度量值;(3)可信性验证;(4)行为决策

[0005]目前,针对操作系统动态度量问题已经有了一些相对成熟的技术应用

比如在进程执行的关键环节,通过定时器周期性触发的方式,基于
DMA
分析进程虚拟内存区域的代码段和只读数据段计算杂凑值,与预先定义的基准值进行比较

目前市场上现有的可信动态度量产品存在的一个最大的问题就是不具备自恢复能力

这些产品在检测到进程被篡改以后一般采取告警或者中止进程的方式

告警的方式往往具有滞后性,从发出告警到工作人员处理现场会有段时间的空档期,在这段空档期内进程是不可信的,进程的运行也是危险的

中止进程的方式虽说通过暴力中止了不可信进程的运行,使其不具备破坏性,但是这也给用户的业务运行带来了麻烦

尤其是在一些电力等工控领域中,要求业务系统
24
小时不间断运行,不能中止

因此,对于动态度量的决策问题,无论是告警或者中止进程的方式,都有一定的弊端


技术实现思路

[0006]为了解决上述现有技术的问题,本专利技术提供可信动态度量过程中不可信进程自恢复方法

系统及设备,当经过动态度量确定一个进程为不可信进程后,不需要中止不可信进
程,而是通过自恢复方法使进程从不可信状态自动地转变为可信状态,从而保证业务运行的连续性

[0007]本专利技术通过以下技术方案实现:可信动态度量过程中不可信进程自恢复方法,包括:在进程启动过程中,将所述进程对应的代码段和只读数据段映射到内存中;在进程运行过程中,对所述进程进行可信动态度量;当可信动态度量结果显示所述进程不可信时,表示在进程运行过程中所述内存被修改,对所述内存进行重写以恢复到被修改之前的状态

[0008]优选的,所述的将所述进程对应的代码段和只读数据段映射到内存中,具体是:将所述进程对应的可执行文件的代码段和只读数据段以及所述可执行文件依赖的依赖库的代码段和只读数据段映射到内存中

[0009]进一步的,当可信动态度量结果显示所述进程不可信时,表示在进程运行过程中所述内存被修改,对所述内存进行重写以恢复到被修改之前的状态,具体包括:当可信动态度量结果显示所述进程对应的可执行文件的代码段或只读数据段不可信时,表示在进程运行过程中所述可执行文件的代码段或只读数据段对应的内存被修改,对所述可执行文件的代码段或只读数据段对应的内存进行重写以恢复到被修改之前的状态

[0010]进一步的,在将所述进程对应的代码段和只读数据段映射到内存中之后,且对所述进程进行可信动态度量之前,还包括:对所述可执行文件的代码段和只读数据段的恢复点进行标记和记录以得到恢复点信息,将所述恢复点信息存储在度量表中

[0011]进一步的,所述的恢复点信息包括:1)所述可执行文件的代码段和只读数据段映射到内存中对应的
struct file
指针;2)数据段类型,所述数据段类型为代码段或只读数据段;3)所述可执行文件的代码段或者只读数据段对应的
ELF
文件中的偏移量;4)所述可执行文件的代码段或者只读数据段的总长度

[0012]进一步的,对所述可执行文件的代码段或只读数据段对应的内存进行重写以恢复到被修改之前的状态,具体是:依据所述度量表中存储的恢复点信息,对所述可执行文件的代码段或只读数据段对应的内存进行重写以恢复到被修改之前的状态

[0013]进一步的,当可信动态度量结果显示所述进程不可信时,表示在进程运行过程中所述内存被修改,对所述内存进行重写以恢复到被修改之前的状态,具体包括:当可信动态度量结果显示所述依赖库的代码段或只读数据段不可信时,表示在进程运行过程中依赖库的代码段或只读数据段对应的内存被修改,对所述依赖库的代码段或只读数据段对应的内存进行重写以恢复到被修改之前的状态

[0014]进一步的,所述的对所述依赖库的代码段或只读数据段对应的内存进行重写以恢复到被修改之前的状态,具体是:从操作系统内核的全局偏移量表中查询所述依赖库的代码段或只读数据段映射到内存中的真实数据,使用所述真实数据对所述依赖库的代码段或只读数据段对应的内存
拷贝进行重写

[0015]可信动态度量过程中不可信进程自恢复系统,包括:映射模块,用于在进程启动过程中将所述进程对应的代码段和只读数据段映射到内存中;可信动态度量模块,用于在进程运行过程中对所述进程进行可信动态度量;恢复模块,用于当可信动态度量结果显示所述进程不可信时,对所述内存进行重写以恢复到所述内存被修改之前的状态

[0016]计算机设备,包括存储器

处理器以及存储在所述存储器中并可在所述处理器上运行的计算机本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.
可信动态度量过程中不可信进程自恢复方法,其特征在于,包括:在进程启动过程中,将所述进程对应的代码段和只读数据段映射到内存中;在进程运行过程中,对所述进程进行可信动态度量;当可信动态度量结果显示所述进程不可信时,表示在进程运行过程中所述内存被修改,对所述内存进行重写以恢复到被修改之前的状态
。2.
根据权利要求1所述的可信动态度量过程中不可信进程自恢复方法,其特征在于,所述的将所述进程对应的代码段和只读数据段映射到内存中,具体是:将所述进程对应的可执行文件的代码段和只读数据段以及所述可执行文件依赖的依赖库的代码段和只读数据段映射到内存中
。3.
根据权利要求2所述的可信动态度量过程中不可信进程自恢复方法,其特征在于,当可信动态度量结果显示所述进程不可信时,表示在进程运行过程中所述内存被修改,对所述内存进行重写以恢复到被修改之前的状态,具体包括:当可信动态度量结果显示所述进程对应的可执行文件的代码段或只读数据段不可信时,表示在进程运行过程中所述可执行文件的代码段或只读数据段对应的内存被修改,对所述可执行文件的代码段或只读数据段对应的内存进行重写以恢复到被修改之前的状态
。4.
根据权利要求3所述的可信动态度量过程中不可信进程自恢复方法,其特征在于,在将所述进程对应的代码段和只读数据段映射到内存中之后,且对所述进程进行可信动态度量之前,还包括:对所述可执行文件的代码段和只读数据段的恢复点进行标记和记录以得到恢复点信息,将所述恢复点信息存储在度量表中
。5.
根据权利要求4所述的可信动态度量过程中不可信进程自恢复方法,其特征在于,所述的恢复点信息包括:1)所述可执行文件的代码段和只读数据段映射到内存中对应的
struct file
指针;2)数据段类型,所述数据段类型为代码段或只读数据段;3)所述可执行文件的代码段或者只读数据段对应的
ELF
文件中的偏移量;4)所述可执行文件的代码段或...

【专利技术属性】
技术研发人员:汤福项涛李业旺程国栋吴龙飞张昇张斌管磊贾泽冰李亚都韩培林王鑫豆心杰
申请(专利权)人:大唐高鸿信安浙江信息科技有限公司
类型:发明
国别省市:

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

1