[发明专利]一种基于虚拟机的信息记录方法有效
申请号: | 201210530485.6 | 申请日: | 2012-12-10 |
公开(公告)号: | CN102999374A | 公开(公告)日: | 2013-03-27 |
发明(设计)人: | 陈锦;刘业欣 | 申请(专利权)人: | 北京神州绿盟信息安全科技股份有限公司;北京神州绿盟科技有限公司 |
主分类号: | G06F9/455 | 分类号: | G06F9/455 |
代理公司: | 北京同达信恒知识产权代理有限公司 11291 | 代理人: | 郭红丽 |
地址: | 100089 北京*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 虚拟机 信息 记录 方法 | ||
技术领域
本发明涉及通信领域,尤指一种基于虚拟机的信息记录方法。
背景技术
目前,记录程序数据改写和代码块等信息的方式主要有两种:第一种是使用调试器记录程序运行的信息,常用的调试器有Safforn、PolyUnpack等等,这种方式记录效率比较高,但是程序可以通过反调试技术进行对抗,这样就会导致调试器崩溃或记录错误的信息;第二种是使用虚拟机记录程序运行的信息,虚拟机是指通过软件模拟的具有完整硬件系统功能的、运行在一个完全隔离环境中的完整计算机系统,常用的虚拟机有Renovo、Malware Normalization、PandorasBochs等,这种方式可以避开大部分程序的反调试,但是这种方式需要在记录文件中记录执行每条指令的信息,无论该条指令信息对后续信息分析是否有用,都会在记录文件中记录,最终得到的记录文件非常大,这样就会导致记录效率低、占用存储空间多;并且这种方式记录的信息类型非常有限,这就会不利于后续进行信息分析。
发明内容
本发明实施例提供一种基于虚拟机的信息记录方法,用以解决现有技术中存在的使用虚拟机记录程序运行的信息时记录效率低、占用存储空间多且不利于后续进行信息分析的问题。
一种基于虚拟机的信息记录方法,包括:
虚拟机运行选定程序时,根据所述选定程序中的跳转指令分割所述选定程序,得到若干代码块;以及
在执行代码块的过程中,所述虚拟机监控事件发生,并按照事件发生的先后顺序记录事件标识和事件信息,所述事件信息包括:创建的线程或进程信息、加载的模块信息、进程分配的堆信息、进程创建的栈信息、数据改写信息、代码块信息、循环次数信息、新栈顶的位置信息、函数调用信息、函数返回信息、以及中央处理器CPU异常信息中之一或组合。
本发明有益效果如下:
本发明实施例提供了一种基于虚拟机的信息记录方法,该方案虚拟机运行选定程序时,根据所述选定程序中的跳转指令分割所述选定程序,得到若干代码块;以及在执行代码块的过程中,所述虚拟机监控事件发生,并按照事件发生的先后顺序记录事件标识和事件信息,所述事件信息包括:创建的线程或进程信息、加载的模块信息、进程分配的堆信息、进程创建的栈信息、数据改写信息、代码块信息、循环次数信息、新栈顶的位置信息、函数调用信息、函数返回信息、以及中央处理器CPU异常信息中之一或组合。该方案将选定程序分割为若干个代码块,程序运行过程中,以代码块为单位,记录代码块的执行信息,这种以代码块为单位进行信息记录的方式相对于现有技术中需要记录每条执行指令的信息的方式,大大提高了记录效率,并且记录文件非常小,节省了存储空间;并且,还记录了新栈顶的位置信息、数据改写信息、代码块的信息、函数调用标识、函数调用信息、函数返回标识、函数返回信息、循环次数信息、异常信息,这些信息能够为后续信息分析提供更好的帮助。
附图说明
图1为本发明实施例中的基于虚拟机的信息记录方法的流程图;
图2为本发明实施例中的虚拟机监控事件发生和记录事件信息的流程图。
具体实施方式
针对现有技术中存在的使用虚拟机记录程序运行的信息时记录效率低、占用存储空间多且不利于后续进行信息分析的问题,本发明实施例提供了一种基于虚拟机的信息记录方法,该方法的流程如图1所示,具体执行步骤如下:
S10:虚拟机运行选定程序时,根据选定程序中的跳转指令分割选定程序,得到若干代码块。
S11:虚拟机执行得到的代码块。
可以利用动态翻译技术来分割选定程序,S11中执行代码块的过程和S10中的分割代码块的过程是同时进行的,不用等到将程序全部解析完代码块后再运行,节省了时间。
S12:在执行代码块的过程中,虚拟机监控事件发生,并按照事件发生的先后顺序记录事件标识和事件信息。
事件信息包括:创建的线程或进程信息、加载的模块信息、进程分配的堆信息、进程创建的栈信息、数据改写信息、代码块信息、循环次数信息、新栈顶的位置信息、函数调用信息、函数返回信息、以及中央处理器CPU异常信息中之一或组合。
要记录的信息有很多种,为了便于区分各类信息,以及后续能快速解析序列化后的日记文件,可以在每个信息前添加用设定字节的事件标识,在标识后紧接事件信息。这些信息的顺序是按照事件发生的先后顺序排列的,真实反应了选定程序的流程。当选定程序为32位时,设定字节为4个字节,事件标识为4个字节;当选定程序为64位时,设定字节为8个字节,事件标识为8个字节。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京神州绿盟信息安全科技股份有限公司;北京神州绿盟科技有限公司,未经北京神州绿盟信息安全科技股份有限公司;北京神州绿盟科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210530485.6/2.html,转载请声明来源钻瓜专利网。
- 上一篇:钢结构幕墙一体化型材
- 下一篇:旋盖头离合器装置
- 信息记录介质、信息记录方法、信息记录设备、信息再现方法和信息再现设备
- 信息记录装置、信息记录方法、信息记录介质、信息复制装置和信息复制方法
- 信息记录装置、信息再现装置、信息记录方法、信息再现方法、信息记录程序、信息再现程序、以及信息记录介质
- 信息记录装置、信息再现装置、信息记录方法、信息再现方法、信息记录程序、信息再现程序、以及信息记录介质
- 信息记录设备、信息重放设备、信息记录方法、信息重放方法、以及信息记录介质
- 信息存储介质、信息记录方法、信息重放方法、信息记录设备、以及信息重放设备
- 信息存储介质、信息记录方法、信息回放方法、信息记录设备和信息回放设备
- 信息记录介质、信息记录方法、信息记录装置、信息再现方法和信息再现装置
- 信息终端,信息终端的信息呈现方法和信息呈现程序
- 信息创建、信息发送方法及信息创建、信息发送装置