发明名称 一种基于虚拟化技术的恶意代码行为检测方法
摘要 本发明涉及一种基于虚拟化技术的恶意代码行为检测方法,其具体技术方案是:首先,利用信任链传递的技术,搭建一个确定可信的检测平台环境;在搭建好的可信的检测平台环境中,利用虚拟化技术根据实际情况建立若干个虚拟机,并在每个虚拟机中部署相应的度量程序等,用于捕获代码行为,同时为每个虚拟机建立原始状态的快照,用于度量结束后的恢复;在检测环境中部署用于分析行为的检测程序和用于维护虚拟机的监控程序,以及调度程序等。本专利有效解决了传统静态恶意代码检测方法中对变体和未知代码检测能力弱,误判率高的缺点。
申请公布号 CN102682229B 申请公布日期 2015.04.01
申请号 CN201110058633.4 申请日期 2011.03.11
申请人 北京市国路安信息技术有限公司 发明人 孙绍钢;李晓勇
分类号 G06F21/56(2013.01)I;G06F9/455(2006.01)I 主分类号 G06F21/56(2013.01)I
代理机构 北京风雅颂专利代理有限公司 11403 代理人 李莎;李弘
主权项 一种基于虚拟化技术的恶意代码行为检测方法,其特征在于,具体技术方案是:首先,利用信任链传递的技术,搭建一个确定可信的检测平台环境;在搭建好的可信的检测平台环境中,利用虚拟化技术根据实际情况建立若干个虚拟机,并在每个虚拟机中部署相应的度量程序,用于捕获代码行为,同时为每个虚拟机建立原始状态的快照,用于度量结束后的恢复;在检测环境中部署用于分析行为的检测程序和用于维护虚拟机的监控程序,以及调度程序;使用API HOOK和文件过滤驱动技术捕获代码对系统关键API的调用行为和对文件系统的操作行为,使其作为代码分析的依据;同时采用虚拟机的信任链传递技术,保证测试环境的可信;提供行为捕获工具,行为分析工具,以及分析数据传输工具;系统工作时,首先由调度程序将待检测的代码投入由多个虚拟机组成的沙箱环境中,在该环境中,通过预设的选择算法选择一个空闲的虚拟机,该虚拟机作为一个单独的虚拟运行环境来执行此待检测代码,并同时捕获该代码所产生的行为,将捕获到的行为记录成行为审计日志,并将该日志交递给分析程序,分析程序在收到审计日志后,通过构造改进过的攻击树模型,对该行为审计日志进行分析;其中,分析的过程包括:假设E是一段被分析的可执行代码,k1,k2,k3……kn为其度量得到的行为,单独行为所对应的权值为w1,w2,w3……wn,则可确定E的总权值为:<maths num="0001" id="cmaths0001"><math><![CDATA[<mrow><mi>W</mi><mrow><mo>(</mo><mi>E</mi><mo>)</mo></mrow><mo>=</mo><munderover><mi>&Sigma;</mi><mrow><mi>i</mi><mo>=</mo><mn>1</mn></mrow><mi>n</mi></munderover><msub><mi>k</mi><mi>i</mi></msub><msub><mi>w</mi><mi>i</mi></msub></mrow>]]></math><img file="FDA0000649778630000011.GIF" wi="324" he="134" /></maths>定义一个具有多层父子关系的树形结构,可执行代码A在运行期间,释放出或创建了新的可执行代码B,则认为A是B的父结点,B是A的子结点;同时B释放或创建了新的可执行代码C,则认为C是A的孙子结点,同时A是C的祖父结点;这种情况下,B和C产生的行为所需累加的权值,就同一在A的权值累加;通过该树形结构,可以有效提高分析的精度;在这种情况下,A的权值可以表示为:W(A)=W(B)+W(C)在获得了单个的恶意代码的权值后,就可以计算出相对应的恶意程序的权值;假设S(E)={E<sub>1</sub>,E<sub>2</sub>,E<sub>3</sub>...E<sub>n</sub>}是恶意程序S所包含的可执行代码的集合,则恶意程序S对应的权值W(S)即为<maths num="0002" id="cmaths0002"><math><![CDATA[<mrow><mi>W</mi><mrow><mo>(</mo><mi>S</mi><mo>)</mo></mrow><mo>=</mo><munderover><mi>&Sigma;</mi><mrow><mi>i</mi><mo>=</mo><mi>i</mi></mrow><mi>n</mi></munderover><mi>W</mi><mrow><mo>(</mo><msub><mi>E</mi><mi>i</mi></msub><mo>)</mo></mrow></mrow>]]></math><img file="FDA0000649778630000021.GIF" wi="373" he="139" /></maths>即可根据此W(S)判断被检测的代码是否为恶意代码。
地址 100089 北京市海淀区中关村南大街32号2号楼B座六层608