发明名称 反恶意程序隐蔽调试引擎与方法
摘要 本发明涉及计算机恶意程序的隐蔽调试引擎和方法。该引擎由页错误处理部件、单步执行处理部件、反汇编部件、引擎应用程序接口部件和隐蔽补丁部件组成。该方法是:加载页错误处理部件,引擎应用程序接口部件设置断点信息,当恶意程序执行到断点位置时,页错误处理部件接管控制权,经反汇编部件分析断点类型后,执行相应回调函数,由单步执行处理部件实现断点永久性机制,隐蔽补丁部件隐藏调试引擎的存在,返回恶意程序的正常执行。本发明适用于对运行时二进制程序的指令级分析,由此提供恶意程序内部结构与功能的详细信息。具有硬件断点的准确度,能提供无限数量的代码、数据和输入/输出断点。具有非常强的隐蔽性,逃避恶意程序的探测。
申请公布号 CN101364253A 申请公布日期 2009.02.11
申请号 CN200710049686.3 申请日期 2007.08.06
申请人 电子科技大学 发明人 曹跃;梁晓;李毅超;柴方明;黄沾
分类号 G06F21/22(2006.01) 主分类号 G06F21/22(2006.01)
代理机构 代理人
主权项 1.反恶意程序隐蔽调试引擎,其特征在于包括如下组成部件:页错误处理部件:调试引擎将安装一个自身的页错误处理部件,替换并链接已经存在的页错误处理部件,以实现对调试引擎的程序代码、数据和内存映射输入/输出断点的处理。单步执行处理部件:调试引擎安装自己的单步执行处理部件,并替换已经存在的单步执行处理程序来实现断点的永久性。单步执行处理部件是由调试引擎中的页错误处理部件按需加载的。当单步执行处理部件因单步执行异常而触发时,它首先确定陷阱标志位的作用都被屏蔽。然后,单步执行处理部件循环处理断点重触发列表模块中的每个断点,并设置相应的内存页属性为不存在。这将保证之后对本内存页的访问将重新触发该断点,由此实现断点的永久性。反汇编部件:采用反汇编部件来获取触发异常指令的有效地址。如果有效地址为断点地址,将分析反汇编后的指令来确定是否为程序指令、代码或内存映射输入/输出的读、写、执行断点。如果是,断点将被触发并处理。引擎应用程序接口部件:包括调试引擎初始化模块、断点设置与删除模块、断点列表模块和断点重触发列表模块。隐蔽补丁部件:所述隐蔽补丁部件的结构组成包括:时钟补丁模块、处理器补丁模块、中断向量补丁模块和多态/变形模块。
地址 610054四川省成都市成华区建设北路二段四号
您可能感兴趣的专利