当前位置: 首页 > 专利查询>李清宝专利>正文

自动二进制恶意代码行为分析系统技术方案

技术编号:5349576 阅读:257 留言:0更新日期:2012-04-11 18:40
本发明专利技术涉及一种自动二进制恶意代码行为分析系统;该系统含有全系统模拟器、符号执行模块、路径解析模块、路径选择模块、恶意行为分析模块、控制流分析模块和有效输入集分析模块,符号执行模块发现二进制恶意代码中依赖于符号变量的分支后产生路径判定谓词逻辑;路径解析模块对路径判定谓词逻辑进行解析,并产生新的执行路径加入到路径存储池中;路径选择模块对路径存储池中的路径进行优先级设置;控制流分析模块生成并连续更新控制流图CFG;恶意行为分析模块提取关联代码段实现的恶意行为特征和结构特征;有效输入集分析模块找出使恶意行为程序按照特定路径执行的输入值集;本发明专利技术提供了一种高效的自动二进制恶意代码行为分析系统。

【技术实现步骤摘要】

本专利技术涉及一种恶意代码行为分析系统,特别是涉及一种自动 二进制恶意代码行为分析系统。
技术介绍
恶意代码是威胁计算机系统和网络安全的重要因素之一。 恶意代码是对在不被用户所知的情况下渗透或破坏计算机系统的具有恶意行为的软件的 总称,是各种攻击、入侵、破坏软件或代码的泛指,包括计算机病毒、蠕虫、特洛伊木 马、Rootkits、间谍软件等。恶意代码分析用于提取恶意代码的特征信息,是恶意代码检 测和发现的基础和前提,近年来,由于恶意代码发展迅猛,自动分析二进制恶意代码显 得十分必要,分析结果不仅在设计防御系统方面很有用,还有助于了解攻击者的攻击能 力。目前,恶意代码分析的方法之一是人工使用调试器,并且对代码执行行为进行 推理。然而,人工分析的效率很低,还比较容易出错,无法与大量涌现的恶意代码进行 对抗。二进制恶意分析的另一种方法就是在一个有条件限制的环境(比如虚拟机环境) 中运行一段二进制代码程序观察并记录其行为。然而,此类方法提供的信息十分有限, 日志信息只记录了在具体设置下运行的恶意代码的表象行为。二进制恶意代码某些功 能,只在某些特定的环境或是条件下(比如当收到一个正确的命令或是设置了一个特定 的register key)才会被触发。如果用于测试的环境设置没有满足所需条件,相关的恶意 功能不会被激活。人们可以在各种不同的环境设置下对程序示例进行测试,并且随意给 定网络输入。然而,设置不同的环境,并在这个环境下测试程序的花费较大,并且效率 较低,猜测满足条件的正确环境的可能性非常小。因此,这种方法不能完全有效地对二 进制恶意代码进行分析。为了研究有效的恶意代码防御技术,自动分析恶意代码就显得 尤为重要了。
技术实现思路
本专利技术要解决的技术问题是克服现有技术的缺陷,提供一种自动二进制 恶意代码行为分析系统,该系统基于全系统模拟技术,采用动态符号执行探查可 执行程序中所有可能的执行路径,发现其中恶意代码的操作行为,分析恶意行为与输入 的关联关系,并可以有效分析出恶意代码执行行为的控制结构关系,建立相应的控制流 图,提取出恶意行为执行的触发输入条件,给出恶意行为执行与输入的关联关系;该系 统可以有效提高恶意代码分析的效率。本专利技术的技术方案一种自动二进制恶意代码行为分析系统,含有全系统模拟器、符号执行模 块、路径解析模块、路径选择模块、恶意行为分析模块、控制流分析模块和有效输 入集分析模块,符号执行模块为全系统模拟器的插件,符号执行模块为输入源引入符号 变量的输入,符号执行模块发现二进制恶意代码中依赖于符号变量的分支后,为每一条 分支构建一个路径判定谓词逻辑;路径解析模块对符号执行模块生成的路径判定谓词逻 辑进行解析,并对分支进行排序,如果路径判定谓词逻辑是可满足的,路径解析模块返回的是使路径判定谓词逻辑满足的输入实例集,并且路径解析模块产生一条新的执行路 径加入到路径存储池中;路径选择模块对路径存储池中的路径进行优先级设置,选择当 前最优路径反馈给符号执行模块,作为符号执行模块下一步的执行路径;控制流分析模 块为符号执行模块的插件,控制流分析模块在二进制恶意代码动态符号执行过程中动态 生成并连续更新控制流图CFG (Control FlowGraph);恶意行为分析模块依据恶意行为 列表分析符号执行模块中是否调用相关Windows API函数实现的相应恶意行为,并分析 和这些相关Windows API函数相关联的关联代码段,提取关联代码段实现的恶意行为特 征和结构特征;有效输入集分析模块可根据恶意行为分析模块的结果找出使恶意行为程 序按照特定路径执行的输入值集。全系统模拟器用于对二进制恶意代码执行的系统环境进行模拟,它能够对寄存 器和内存的状态、外设的执行情况等各种硬件组件进行模拟,还能够对操作系统内核里 的操作以及在多种进程之间的交互进行模拟,并提供相应的开发接口,因此全系统模拟 器可以搭建一个全系统模拟环境。全系统模拟器采用动态插桩技术对系统执行进行细粒 度监视,提取程序执行、系统内核操作和进程间交互信息。符号执行模块通过动态插桩技术提取被检测软件的执行状态信息,并分析被检测软件的指令来自于哪一个进程或模块;如果所述全系统模拟器正在执行的指 令为输入指令,符号执行模块则将输入变量的值定义为符号值,在后续指令中该输入变 量以符号值形式参加执行,使得任何依赖于输入的指令都一定会被符号地执行,执行结 果为符号表达式,例如,指令add X,y (x,y是由输入得来的,被设为符号)产生了符号 表达式x = x + y,并且它不会被x,y的具体值所限制;在指令被符号地执行的过程中条件 跳转真分支的成立条件是当前的符号公式的值必须为非零;在指令被符号地执行的过 程中条件跳转假分支的成立条件是当前的符号公式的值为零;符号执行模块根据当前 的符号公式的值得出不同的程序路径,从而在不同的条件下观察恶意代码的执行行为; 所述输入源为网络输入,或为文件描述符,或为库;每一个路径判定谓词逻辑描述了符 号输入需要满足程序执行规定路径的条件约束,新的路径判定谓词逻辑是当前分支的路 径约束条件和当前分支之前的路径约束条件的并;所述路径判定谓词逻辑是一个布尔函 数,要么满足,要么不满足。符号执行模块采用hook方式截取全系统模拟器的windows API函数调用,当全 系统模拟器的模拟CPU到达第一 hook函数的入口点处时,模拟CPU将执行第一 hook函 数,第一 hook函数执行结束后,模拟CPU执行windows API函数或跳过windows API函 数,如果windows API函数被调用了,那么当windows API函数返回时,第二 hook函数就能被动态地添加从而被调用,第二 Hook函数将Windows API函数调用时的返回值或返 回的缓冲区标记为符号变量。符号执行模块用于以符号而非具体值的形式为二进制恶意代码的执行提供输 入,为分支跳转语句生成路径判定谓词逻辑,使得探查的代码执行路径不受具体输入的 限制,和传统方法相比,可以探查到更多的程序片段,获取更多的程序信息,为进一步 的分析奠定基础。一个能满足的路径判定谓词逻辑意味着路径谓词中的符号变量有一个赋值,该 赋值使得路径判定谓词为真。由于路径判定谓词逻辑中的符号变量是输入变量,因此,能满足的路径判定谓词逻辑说明存在一个输入集,该输入集能使代码执行该路径。相 反,一个不能满足的路径判定谓词逻辑说明不存在输入集使代码执行该路径。路径判定 谓词逻辑可以采用多种方法来解析,如判定过程(decision procedure)方法和定理证明 (theory prove)方法等,以检查路径判定谓词逻辑是否是可满足的。路径解析模块检查每一个生成的路径判定谓词逻辑是否是可满足的,有以下三 种情况1.路径判定谓词逻辑是可满足的,则意味着路径是可行的,在这种情况下,路 径解析模块将可行路径添加至待进一步探索的路径池中。同时,返回使程序执行该路径 的输入例集,也就是说,使得程序按照可行路径执行的输入值。2.路径判定谓词逻辑是 不可满足的,则意味着路径不可行,也就是说,没有执行特定路径的输入。3.解析耗费 太多的时间和内存,就不再进一步考虑这条路径,选择一些其他的方法,比如增本文档来自技高网
...

【技术保护点】
一种自动二进制恶意代码行为分析系统,其特征是:含有全系统模拟器、符号执行模块、路径解析模块、路径选择模块、恶意行为分析模块、控制流分析模块和有效输入集分析模块,符号执行模块为全系统模拟器的插件,符号执行模块为输入源引入符号变量的输入,符号执行模块发现二进制恶意代码中依赖于符号变量的分支后,为每一条分支构建一个路径判定谓词逻辑;路径解析模块对符号执行模块生成的路径判定谓词逻辑进行解析,并对分支进行排序,如果路径判定谓词逻辑是可满足的,路径解析模块返回的是使路径判定谓词逻辑满足的输入实例集,并且路径解析模块产生一条新的执行路径加入到路径存储池中;路径选择模块对路径存储池中的路径进行优先级设置,选择当前最优路径反馈给符号执行模块,作为符号执行模块下一步的执行路径;控制流分析模块为符号执行模块的插件,控制流分析模块在二进制恶意代码动态符号执行过程中动态生成并连续更新控制流图CFG;恶意行为分析模块依据恶意行为列表分析符号执行模块中是否调用相关Windows API函数实现的相应恶意行为,并分析和这些相关Windows API函数相关联的关联代码段,提取关联代码段实现的恶意行为特征和结构特征;有效输入集分析模块可根据恶意行为分析模块的结果找出使恶意行为程序按照特定路径执行的输入值集。...

【技术特征摘要】

【专利技术属性】
技术研发人员:李清宝张平曾光裕
申请(专利权)人:李清宝
类型:发明
国别省市:41

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

1