[发明专利]软件运行时执行恢复与重放方法无效
申请号: | 200710049856.8 | 申请日: | 2007-08-27 |
公开(公告)号: | CN101154185A | 公开(公告)日: | 2008-04-02 |
发明(设计)人: | 梁晓;曹跃;李毅超;李晓冬;肖武 | 申请(专利权)人: | 电子科技大学 |
主分类号: | G06F11/36 | 分类号: | G06F11/36 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 610054四川*** | 国省代码: | 四川;51 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 软件 运行 执行 恢复 重放 方法 | ||
1.软件运行时执行恢复与重放方法,其特征在于包括如下组成部件:
代码注入部件:检测点设置部件和执行恢复部件都是以动态链接库(DLL)的方式存在的,它们的功能独立于目标二进制程序。为了能将检测点设置与恢复的功能增加到目标二进制程序,必须通过代码注入方式将动态链接库的代码远程注入到目标二进制程序中,并按代码的指令执行相应的功能。
函数拦截部件:操作系统内核对象的状态是进程状态重要的一部分。微软Windows系统将内核对象的数据结构保存在内核空间中,而内核空间不能由用户线程直接访问,如果需对内核对象进行访问和操作,必须通过系统提供的应用程序接口(API)调用。因此保存系统内核对象状态的一个可行的方法是截获对内核对象进行访问和操作的API。从截获的API中可以获知操作内核对象的API调用、参数、返回值等,将他们都保存到检查点文件中。当程序出现故障进行恢复时,将重新执行保存的有关API调用,创建及操作内核对象来恢复其状态。函数拦截部件包含对系统进程、文件、注册表、网络等API函数的拦截。
检测点设置部件:进程状态由其用户地址空间的状态和内核对象的状态组成。因此检测点设置部件分为用户地址空间状态的保存,内核对象状态的保存两部分。
执行恢复部件:执行恢复部件利用检测点设置部件记录的进程用户地址空间信息,以及函数拦截部件记录的内核对象操作信息,将目标二进制程序重新设置为对应检测点位置的状态。
2.根据权利要求1所述的软件运行时执行恢复与重放方法,其特征在于:代码注入部件利用CreateRemoteThread函数,能够容易的在另一个进程中创建线程。利用在目标进程中新创建的线程调用LoadLibrary函数来加载想要插入的DLL。该方法的基本操作步骤:使用VirtualAllocEx函数,在目标进程的地址空间中分配内存;使用WriteProcessMemory函数,将DLL的路径拷贝到第一步中分配的内存中;使用GetProcAddress函数,获取在Kerne132.dll中的LoadLibraryA或LoadLibraryW函数的实际地址;使用CreateRemoteThread函数,在目标进程中创建一个线程,它调用正确的LoadLibrary函数,为它传递第一步中分配的内存地址。
3.根据权利要求1所述的软件运行时执行恢复与重放方法,其特征在于:检测点设置部件首先利用SuspendThread函数将目标二进制程序的所有应用线程挂起;获取并保存用户地址空间布局以及区域或块对应的文件名;保存地址空间中可读写块并已提交的数据;保存用户线程的上下文及线程局部存储;保存用户线程有关内核对象的API跟踪记录;保存活动文件的信息;检查点线程对所有应用线程分别调用ResumeThread函数恢复其执行,然后进入等待状态直到下一次检查点。
4.根据权利要求1所述的软件运行时执行恢复与重放方法,其特征在于:执行恢复部件一致恢复进程用户地址空间状态;以挂起方式创建除主线程之外的其它线程,恢复所有应用线程的栈内容,线程的上下文,线程局部存储等。对线程局部存储恢复的策略为:当线程创建并开始执行时,通过TlsSetValue实现对应线程局部存储的恢复;根据保存的API系统调用创建其他内核对象,并通过重新执行API恢复内核对象状态;对于活动文件信息,重新打开这些文件并设置指针的位置;检查点线程对所有应用程序线程分别调用ResumeThread函数恢复其执行。然后进入等待状态直到下一次检查点时刻。
5.根据权利要求1所述的软件运行时执行恢复与重放方法,其特征在于:
步骤(1),系统启动目标二进制程序;
步骤(2),代码注入部件将检测点设置部件和执行恢复部件注入到目标二进制程序的进程空间;
步骤(3),函数拦截部件监控记录进程、文件、注册表、网络等内核对象的行为;
步骤(4),检测点设置部件在程序运行过程中安装检测点;
步骤(5),得到恢复命令后;
步骤(6),执行恢复部件将目标二进制程序的运行状态恢复到对应检测点位置的状态。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于电子科技大学,未经电子科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200710049856.8/1.html,转载请声明来源钻瓜专利网。
- 上一篇:背光源及其发光二极管模组
- 下一篇:一种现浇砼用轻质胎模构件