【技术实现步骤摘要】
本专利技术涉及计算机安全
,特别是指一种API日志的循环逻辑的识别方法及装置。
技术介绍
在反病毒领域,随着病毒技术和反病毒技术的日积月累,加密、对抗技术日新月异,单纯以静态特征来识别未知病毒变得越来越困难。因此,动态自动分析技术成为近年来热门技术。由于目前Windows系统几乎垄断个人电脑市场,针对Windows的恶意软件,如盗号木马等,在病毒领域占据绝大多数。随着云安全技术的不断进步,安全厂商可以借助强大的云端后台系统来对样本进行动态分析,而动态自动分析技术目前仍然处于发展阶段,对于安全厂商而言,目前通常采用模拟病毒执行环境,对Windows API(Windows系统接口函数)进行挂钩子(HOOK),记录病毒执行期间的API日志,包括执行期间的内存地址、返回地址、REIP(Windows PE文件在执行的过程中,调用到Windows系统接口函数的内存地址)、API以及参数信息,然后针对该API日志进行病毒行为的动态分析。但API日志的循环逻辑的存在,让日志变得异常冗余且可读性极差,不利用对病毒行为的动态分析。
技术实现思路
本专利技术要解决的技术问题是提供一种对API日志的循环逻辑的识别方法及装置,能够解决API日志信息冗余和可读性差的问题。为解决上述技术问题,本专利技术的实施例提供一种API日志的循环逻辑的识别方法,包括:对API日志进行解析,获得多个节点组成的节 ...
【技术保护点】
一种API日志的循环逻辑的识别方法,其特征在于,包括:对API日志进行解析,获得多个节点组成的节点序列;其中每一个所述节点包括:对可移植的执行体PE文件执行过程中调用到的系统接口函数的内存地址REIP以及该系统接口函数API名称的组合;获得所述REIP和所述API名称的组合的校验值,并将所述校验值作为所述节点的键值;根据节点的键值,在所述节点序列中,识别出一个节点子序列,并将所述节点子序列作为一个内层循环体;根据识别出的所述内层循环体,在所述节点序列中,识别出所有循环体;根据识别出的所有循环体对病毒行为进行动态分析。
【技术特征摘要】
1.一种API日志的循环逻辑的识别方法,其特征在于,包括:
对API日志进行解析,获得多个节点组成的节点序列;其中每一个所述
节点包括:对可移植的执行体PE文件执行过程中调用到的系统接口函数的内
存地址REIP以及该系统接口函数API名称的组合;
获得所述REIP和所述API名称的组合的校验值,并将所述校验值作为所
述节点的键值;
根据节点的键值,在所述节点序列中,识别出一个节点子序列,并将所述
节点子序列作为一个内层循环体;
根据识别出的所述内层循环体,在所述节点序列中,识别出所有循环体;
根据识别出的所有循环体对病毒行为进行动态分析。
2.根据权利要求1所述的API日志的循环逻辑的识别方法,其特征在于,
所述根据节点的键值,在所述节点序列中,识别出一个节点子序列,并将所述
节点子序列作为一个内层循环体的步骤包括:
在所述节点序列中,从第N+1个节点开始,在所述第N+1个节点之前的
N个节点中,如果查找到与所述第N+1个节点的键值相同的第P个节点,获
得所述第P个节点到所述第N+1个节点组成的第一节点子序列;其中,N为
正整数,P大于等于1且小于N+1;
将所述第一节点子序列与从第N+1节点到所述第P个节点组成的第二节
点子序列进行相应位置的节点匹配,若完全匹配,则将所述第二节点子序列作
为一个内层循环体。
3.根据权利要求2所述的API日志的循环逻辑的识别方法,其特征在于,
所述根据识别出的所述内层循环体,在所述节点序列中,识别出所有循环体的
步骤包括:
根据识别出的所述内层循环体,在所述节点序列中,识别出与所述内层循
环体相匹配的其它内层循环体;
对识别出的每一个内层循环体,进行内层循环体内的各节点的REIP和
API名称的合并;
获得合并后的REIP和API名称的组合的校验值,作为所述内层循环体的
键值;
根据内层循环体的键值,在多个内层循环体的键值形成的循环体节点序列
中,识别出外层循环体,从而得到包括内层循环体和外层循环体的所有循环体。
4.根据权利要求3所述的API日志的循环逻辑的识别方法,其特征在于,
所述根据识别出的所述内层循环体,在所述节点序列中,识别出与所述内层循
环体相匹配的其它内层循环体的步骤包括:
在所述节点序列中,从识别出的第一个内层循环体的结束位置的下一个节
点开始向后匹配,查找到与所述第一个内层循环体内的各节点的键值完全相同
的其它节点子序列,将所述其它节点子序列作为其它内层循环体。
5.根据权利要求4所述的API日志的循环逻辑的识别方法,其特征在于,
所述根据内层循环体的键值,在多个内层循环体的键值形成的循环体节点序列
中,识别出外层循环体,从而得到包括内层循环体和外层循环体的所有循环体
的步骤包括:
在多个内层循环体的键值形成的循环体节点序列中,从第M+1个循环体
节点开始,在所述第M+1个节点之前的M个循环体节点中,如果查找到与所
述第M+1个节点的键值相同的第T个循环体节点,获得所述第T个循环体节
点到所述第M+1个循环体节点组成的第一循环体节点子序列;其中,M为正
...
【专利技术属性】
技术研发人员:邹义鹏,刘欢,白彦庚,张楠,陈勇,
申请(专利权)人:北京金山安全软件有限公司,可牛网络技术北京有限公司,贝壳网际北京安全技术有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。