[发明专利]一种基于程序关键字调用序列的脚本病毒检测方法及系统在审
申请号: | 201410738723.1 | 申请日: | 2014-12-08 |
公开(公告)号: | CN105488399A | 公开(公告)日: | 2016-04-13 |
发明(设计)人: | 苏培旺;童志明;张栗伟;何公道 | 申请(专利权)人: | 哈尔滨安天科技股份有限公司 |
主分类号: | G06F21/56 | 分类号: | G06F21/56;G06F17/27;G06F17/30 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 150090 黑龙江省哈尔滨*** | 国省代码: | 黑龙江;23 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 程序 关键字 调用 序列 脚本 病毒 检测 方法 系统 | ||
1.一种基于程序关键字调用序列的脚本病毒检测方法,其特征在于,包括:
对待检测程序的字符序列进行词法分析,生成一系列单词,并将单词分类,得到单词序列;
根据得到的单词序列,进行语法分析,记录调用的脚本程序关键字信息;
语义分析,根据每行程序语义,确定语义类型,并标记助记符;
创建待检测数据流;
逐行遍历待检测程序,判断当前行是否调用了脚本程序关键字信息,如果是,则将所述脚本程序关键字信息添加到待检测数据流中;否则判断当前行是否标记了助记符,如果是,则将所述助记符添加到待检测数据流中,否则跳过当前行;
将所述待检测数据流与特征库中的关键字调用序列特征串匹配,如果匹配成功,则判定所述待检测程序为恶意,否则所述待检测程序非恶意。
2.如权利要求1所述的方法,其特征在于,所述记录调用的脚本程序关键字信息具体为:记录程序调用的API名称作为脚本程序关键字信息。
3.如权利要求1所述的方法,其特征在于,所述的语义分析,根据每行程序语义,确定语义类型,并标记助记符中,所述语义类型包括:赋值语句、跳转语句、循环语句和返回语句。
4.如权利要求1所述的方法,其特征在于,在将所述待检测数据流与特征库中的特征串匹配成功后,还包括:将所述判定为恶意的待检测程序与白名单匹配,如果不存在于白名单中,则确定所述待检测程序为恶意,否则所述待检测程序非恶意。
5.如权利要求1或4所述的方法,其特征在于,所述特征库中的关键字调用序列特征串为从已知恶意脚本代码中提取。
6.一种基于程序关键字调用序列的脚本病毒检测系统,其特征在于,包括:
词法分析模块,用于对待检测程序的字符序列进行词法分析,生成一系列单词,并将单词分类,得到单词序列;
语法分析模块,用于根据得到的单词序列,进行语法分析,记录调用的脚本程序关键字信息;
语义分析模块,用于根据每行程序语义,确定语义类型,并标记助记符;
待检测数据流创建模块,用于创建待检测数据流;
遍历检测模块,用于逐行遍历待检测程序,判断当前行是否调用了脚本程序关键字信息,如果是,则将所述脚本程序关键字信息添加到待检测数据流中;否则判断当前行是否标记了助记符,如果是,则将所述助记符添加到待检测数据流中,否则跳过当前行;
匹配模块,用于将所述待检测数据流与特征库中的关键字调用序列特征串匹配,如果匹配成功,则判定所述待检测程序为恶意,否则所述待检测程序非恶意。
7.如权利要求6所述的系统,其特征在于,所述记录调用的脚本程序关键字信息具体为:记录程序调用的API名称作为脚本程序关键字信息。
8.如权利要求6所述的系统,其特征在于,所述的语义分析,根据每行程序语义,确定语义类型,并标记助记符中,所述语义类型包括:赋值语句、跳转语句、循环语句和返回语句。
9.如权利要求6所述的系统,其特征在于,匹配模块后,还包括:白名单模块,用于将所述判定为恶意的待检测程序与白名单匹配,如果不存在于白名单中,则确定所述待检测程序为恶意,否则所述待检测程序非恶意。
10.如权利要求6或9所述的系统,其特征在于,所述特征库中的关键字调用序列特征串为从已知恶意脚本代码中提取。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于哈尔滨安天科技股份有限公司,未经哈尔滨安天科技股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410738723.1/1.html,转载请声明来源钻瓜专利网。