[发明专利]一种通过静态方法产生API序列并用于启发式病毒查杀的方法在审
申请号: | 202110161996.4 | 申请日: | 2021-02-05 |
公开(公告)号: | CN113946821A | 公开(公告)日: | 2022-01-18 |
发明(设计)人: | 尚昭宁 | 申请(专利权)人: | 北京火绒网络科技有限公司 |
主分类号: | G06F21/56 | 分类号: | G06F21/56 |
代理公司: | 北京喆翙知识产权代理有限公司 11616 | 代理人: | 胡文强 |
地址: | 100012 北京市朝阳*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 通过 静态 方法 产生 api 序列 用于 启发式 病毒 | ||
本发明公开一种通过静态方法产生API序列并用于启发式病毒查杀的方法,遍历待检出可执行文件导入的API,针对混淆后病毒样本中常用的API或API序列与待检出可执行文件导入的API序列进行比对,如果待检测样本中包含有相关引用,则进行统计计数等步骤,本发明利用静态方法产生的API序列进行启发式病毒查杀的方法,使用了混淆技术的病毒样本的二进制特征中,病毒样本所导入的API序列存在一定的结构性规律,进而可以通过此规律针对使用混淆技术的病毒样本进行启发式检测,采用本发明的方法最终达到对病毒样本的通用检出效果,增加信息的安全。
技术领域
本发明涉及信息安全技术领域,具体是设计一种通过静态方法产生API序列并用于启发式病毒查杀的方法。
背景技术
目前在信息安全领域中,恶意代码检测一直都是各个安全厂商所面临的首要问题。但是近年来,一些主流病毒家族为了与安全软件厂商进行免杀对抗,大范围在病毒样本中使用代码混淆技术。由于在使用混淆技术的相同病毒家族样本中,样本与样本之间可用于静态二进制检测的特征不断变化,所以增加了反病毒引擎对此类样本的静态检出难度。为了检测当前运行环境是否为真实环境,使用了代码混淆后的病毒样本调用API时,时常会使用诸如:传入无用参数调用API(如调用某API时,将所有参数都传入0,主要为检测当前环境中是否存在指定API)、通过判断。函数导入表是一个可执行文件的重要组成部分,根据函数导入表内函数被引用的情况,可以直观体现出可执行文件对外部动态库(包括系统库和第三方库)的函数调用情况,也可以反映出可执行文件的代码逻辑意图和运行时的行为特征。被导入的函数我们也称其为API(application programming interface),在可执行文件中被引用的API所形成的序列即为API序列。由于此类使用了混淆技术的病毒样本的二进制特征中,病毒样本所导入的API(application programming interface)序列存在一定的结构性规律,进而可以通过此规律针对使用混淆技术的病毒样本进行启发式检测。
发明内容
鉴于此,本发明提供了一种通过静态方法产生API序列并用于启发式病毒查杀的方法,具体方案如下:
一种通过静态方法产生API序列并用于启发式病毒查杀的方法,具体包括以下步骤:
步骤一:遍历待检出可执行文件导入的API,根据API所属动态库和API名称使用CRC32算法计算唯一标识,并将该数据与API函数VA地址相对应,基于红黑树结构整理出API序列;
步骤二:针对混淆后病毒样本中常用的API或API序列与待检出可执行文件导入的API序列进行比对,如果待检测样本中包含有相关引用,则进行统计计数;
步骤三:如果API序列中包括且不仅限于VirtualAlloc、PlaySoundA、PlaySoundW、_lopen、ReadFile、VirtualProtect、LoadLibraryA、GetProcAddress等API,则判断待检测样本可以通过单个API调用特征进行检出;
步骤四:如果待检测样本可以直接通过单个API调用特征进行检出,则检查引用API的地址附近若干的字节中所存放的二进制指令,是否为混淆代码常见的调用形式,如传入多个无效参数(全为0)、在函数调用地址附近通过call寄存器的方式完成函数调用、是否是以指定形式调用指定类型API(如在调用注册表相关API时,第一个参数传入0)、以特殊方式传入参数(包括但不限于push指令二进制为0xff35)、在引用位置附近使用指定代码(包括而不仅限于二进制代码8945F0C745FC000000008B、00F0FFFF),如果符合混淆代码常见的调用形式,则成功检出;
步骤五:如果待检测样本不能直接通过单个API调用特征进行检出,则通过遍历API信息表中的红黑树方式根据待检出可执行文件的API序列,进行加权分析、多条件组合分析等方式进行混淆代码检测,最终得出检测结果。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京火绒网络科技有限公司,未经北京火绒网络科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110161996.4/2.html,转载请声明来源钻瓜专利网。