本发明涉及计算机安全领域,尤其是一种恶意程序行为特征库构建方法及装置。
背景技术:
随着个人电脑和手机的广泛应用,信息安全日益成为现代社会重要的研究方向。对恶意程序的检测手段也从单纯的静态特性值检测,发展到对恶意程序动态行为的检测。恶意程序动态检测主要通过提取程序的行为,与已知的恶意行为特征库进行对比。而目前构建恶意行为特征库主要是靠人工对恶意程序进行分析,主要采用特征字符串或特征关键字匹配技术,通过抽取关键特征字组成特征字库,针对被检测样本进行扫描,一旦在其内发现有特定特征字,即表明被检测样本归属该特征字所代表的病毒种类。此方法运行速度快、误报频率低、但需要不断的对特征字进行更新扩充。同时无法检测新型恶意程序,旧型恶意程序变种也可以通过调整指令序列等方法躲避基于匹配的检测。随着恶意程序的变种能力日益增强,新的恶意程序的产生速度加快,靠人工分析来构建恶意程序的行为特征库的方式就显得效率十分低下。
技术实现要素:
本发明所要解决的技术问题是:针对现有技术存在的问题,提供一种恶意程序行为特征库构建方法及装置。本发明通过机器自动提取行为,并按照行为的恶意值排序来自动构建恶意程序行为特征库,能够极大的提高恶意程序的行为提取效率,减少人工参与的程度。
本发明采用的技术方案如下:
一种恶意程序行为特征库构建方法包括:
步骤1:收集样本文件,并标注样本文件是恶意文件还是正常文件,形成样本文件集;
步骤2:将样本文件集的第n个样本文件放到沙箱运行,提取出样本文件运行时的行为操作,每个行为操作包括:样本文件类型、行为操作类型、行为操作名称、行为操作的附加参数;将第n个样本文件的行为操作加入行为列表中,并根据该样本文件是恶意文件还是正常文件对该样本文件行为进行标记,获得第n个样本文件的行为操作;
步骤3:重复步骤2,获得样本文件集中n个样本文件的行为操作;然后对所有样本文件的行为操作进行相似行为操作的合并;
步骤4:计算行为的恶意值=tf*idf*vf;其中tf为每条行为出现的频率;ldf为每条行为的逆向样本频率;vf为计算行为的恶意频率数,根据行为的恶意值进行排序,确定恶意行为特征,构建恶意程序行为特征库。
进一步的,所述步骤3中对所有样本文件的行为操作进行相似行为操作的合并具体过程是:
步骤31:将行为操作列表中相同行为操作类型划分在同一列表中,然后在每个列表中根据行为操作名称判断行为操作所述的文件类型是否一致,若一致,则执行步骤32;否则,不合并;
步骤32:判断行为操作的附加参数是否相似,若相似,则合并行为操作;否则,不合并。
进一步的,当行为操作类型是网络类型时,则不对行为操作类型的附加参数值进行比较,比较行为操作的名称是否一致即可,若行为操作名称一致,则相似,进行合并行为操作;否则,不合并。
进一步的,所述步骤32行为操作的附加参数相似判断依据是:多个行为操作的附加参数中至少有一个参数相似;
若行为操作类型是文件类型时,比较所操作的文件目录和文件类型是否一致;若是注册表类型:比较目标键路径是否一致;若行为操作类型是进程、内存或系统类型时,比较所有的附加参数值是否一致;若行为操作类型是网络类型时,不对附加参数值进行比较,即如果是网络类型的行为操作,只比较行为操作的名称是否一致即可。
进一步的,所述计算行为的恶意值=tf*idf*vf具体过程是:
步骤41:统计相似行为操作合并前,所有的行为操作出现的总次数之和m;
步骤42:计算每条行为出现的频率tf=该行为出现总次数/m;
步骤43:计算每条行为的逆向样本频率ldf:
ldf=log(样本文件总数)/包含该行为的样本数)
步骤44:计算行为的恶意频率数vf:
vf=该行为出现在恶意文件中的次数/该行为出现总次数;
步骤45:计算行为的恶意值=tf*idf*vf。
一种恶意程序行为特征库构建装置包括:
样本文件集装置,用于收集样本文件,并标注样本文件是恶意文件还是正常文件;
样本文件的行为操作提取装置,用于将样本文件集的第n个样本文件放到沙箱运行,提取出样本文件运行时的行为操作,每个行为操作包括:样本文件类型、行为操作类型、行为操作名称、行为操作的附加参数;将第n个样本文件的行为操作加入行为列表中,并根据该样本文件是恶意文件还是正常文件对该样本文件行为进行标记,获得第n个样本文件的行为操作;最终获得样本文件集中n个样本文件的行为操作;
相似行为操作合并装置,用于对所有样本文件的行为操作进行相似行为操作的合并;
恶意程序行为特征库构建装置,用于计算行为的恶意值=tf*idf*vf,根据行为的恶意值进行排序,确定恶意行为特征,
进一步的,所述相似行为操作合并装置对所有样本文件的行为操作进行相似行为操作的合并具体过程是:
将行为操作列表中相同行为操作类型划分在同一列表中,然后若每个列表中根据行为操作名称判断行为操作所述的文件类型一致,若一致,判断行为操作的附加参数是否相似,若相似,则合并行为操作;否则,不合并;若每个列表中根据行为操作名称判断行为操作所述的文件类型不一致,不合并。
进一步的,当行为操作类型是网络类型时,则不对行为操作类型的附加参数值进行比较,比较行为操作的名称是否一致即可,若行为操作名称一致,则相似,进行合并行为操作;否则,不合并。
进一步的,所述行为操作的附加参数相似判断依据是:多个行为操作的附加参数中至少有一个参数相似;
若行为操作类型是文件类型时,比较所操作的文件目录和文件类型是否一致;若是注册表类型:比较目标键路径是否一致;若行为操作类型是进程、内存或系统类型时,比较所有的附加参数值是否一致;若行为操作类型是网络类型时,不对附加参数值进行比较,即如果是网络类型的行为操作,只比较行为操作的名称是否一致即可。
比如读写文件操作,其附加参数为所操作的文件的全路径名,只比较操作文件的文件目录名和文件类型是否一致;如果是注册表的行为操作,其附加参数有目标键路径和目标键值两个参数,只比较目标键路径这一个附加参数值是否一致。
进一步的,所述计算行为的恶意值=tf*idf*vf具体过程是:
统计相似行为操作合并前,所有的行为操作出现的总次数之和m;
计算每条行为出现的频率tf=该行为出现总次数/m;
计算每条行为的逆向样本频率ldf:
ldf=log(样本文件总数/包含该行为的样本数)
计算行为的恶意频率数vf:
vf=该行为出现在恶意文件中的次数/该行为出现总次数;
步骤45:计算行为的恶意值=tf*idf*vf。
综上所述,由于采用了上述技术方案,本发明的有益效果是:
与现有通过大量人工分析木马病毒的行为,提取出木马病毒行为的共性,而形成的恶意程序行为特征库不同,本发明主要通过样本行为提取沙箱技术、样本的操作行为恶意度计算方法、操作行为相似度计算方法这几个关键技术特征,实现了恶意行为特征库通过机器自动构建。
附图说明
本发明将通过例子并参照附图的方式说明,其中:
图1本发明原理框图。
图2是本发明流程图。
图3是相似行为操作合并装置工作流程图。
具体实施方式
本说明书中公开的所有特征,或公开的所有方法或过程中的步骤,除了互相排斥的特征和/或步骤以外,均可以以任何方式组合。
本说明书中公开的任一特征,除非特别叙述,均可被其他等效或具有类似目的的替代特征加以替换。即,除非特别叙述,每个特征只是一系列等效或类似特征中的一个例子而已。
实施例一:比如收集了3个样本,样本A和样本B都是恶意文件,样本C是正常文件。将样本集放到沙箱中运行得到每个样本的行为操作列表如下:
样本A行为操作列表1:
样本B行为操作列表2:
样本C行为操作列表3:
合并相似的操作行为得到所有的操作行为列表4如下:
统计所有的行为操作出现的总次数之和m=5
计算每个行为操作的恶意程度值
按照恶意程度值进行排序得到以下恶意行为特征列表
本发明并不局限于前述的具体实施方式。本发明扩展到任何在本说明书中披露的新特征或任何新的组合,以及披露的任一新的方法或过程的步骤或任何新的组合。