[发明专利]一种基于调用行为的恶意代码自动化同源判定方法及系统有效
| 申请号: | 201510398323.5 | 申请日: | 2015-07-08 |
| 公开(公告)号: | CN104933364B | 公开(公告)日: | 2018-06-19 |
| 发明(设计)人: | 云晓春;张永铮;乔延臣 | 申请(专利权)人: | 中国科学院信息工程研究所 |
| 主分类号: | G06F21/56 | 分类号: | G06F21/56 |
| 代理公司: | 北京君尚知识产权代理事务所(普通合伙) 11200 | 代理人: | 冯艺东 |
| 地址: | 100093 *** | 国省代码: | 北京;11 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 恶意代码 同源 调用 样本 判定 交集 自动化 恶意代码样本 实时检测系统 攻击事件 关联关系 快速检测 实时捕获 行为判定 有效防范 准确率 场景 传播 部署 发现 | ||
1.一种基于恶意代码作者调用行为的恶意代码自动化同源判定方法,包括以下步骤:
(1)提取每个恶意代码样本的WinAPI调用行为集合与样本中调用的WinAPI集合,所述WinAPI调用行为包括:
①Proc级2-WinAPI组合调用行为:恶意代码作者在编写函数中同时调用的两个WinAPI,表征在函数设计中的WinAPI组合调用行为;
②Proc级2-WinAPI分离调用行为:恶意代码作者在不同函数中使用的两个WinAPI,表征在函数设计中的不同WinAPI分开使用的调用行为;
③Loc级2-WinAPI组合调用行为:恶意代码作者在Loc代码段中同时调用的两个WinAPI,表征Loc代码段中的WinAPI组合调用行为;
④Loc级WinAPI单独调用行为:恶意代码作者在Loc代码段中只调用了一个WinAPI,表征作者在Loc代码段中的WinAPI调用行为;
⑤Loc级WinAPI序列调用行为:恶意代码作者在Loc代码段中调用的WinAPI序列,表征作者在Loc代码段中的WinAPI调用序列调用行为;
⑥Loc级WinAPI调用先后次序组合调用行为:恶意代码作者在Loc代码段中调用WinAPI的先后关系,表征作者在Loc代码段中调用WinAPI的顺序调用行为;
(2)提取两样本调用的WinAPI集合的WinAPI交集;
(3)从两样本WinAPI调用行为集合中筛选出由WinAPI交集构成的调用行为集合;
(4)依据步骤(3)中提取的调用行为集合,通过以下公式计算两样本间的同源度:
其中,simi表示第i类行为的相似度,S′A为样本A的WinAPI调用行为集合,为S′A中第i类行为的集合,S′B为样本B的WinAPI调用行为集合,为S′B中第i类行为的集合,i=1,2,3…6,依据设定的同源度阈值判定恶意代码样本是否同源。
2.如权利要求1所述的基于恶意代码作者调用行为的恶意代码自动化同源判定方法,其特征在于,步骤(1)中,恶意代码样本的WinAPI调用行为集合与样本中调用的WinAPI集合通过以下方法进行提取:
1)检测样本是否加壳;
2)若加壳判断是否能脱壳;
3)对未加壳与成功脱壳的样本做反汇编处理,获取反汇编代码,同时获取导入表中的WinAPI集合;
4)提取反汇编代码中的WinAPI调用行为集合。
3.如权利要求1所述的基于恶意代码作者调用行为的恶意代码自动化同源判定方法,其特征在于,步骤(3)中通过以下方法进行筛选:
1)从WinAPI调用行为集合中依次取出每个行为,每个行为均由1个到多个WinAPI构成;
2)对每个行为,若其中的WinAPI均属于WinAPI交集,则将其加入新的WinAPI调用行为集合中;
3)否则,回到步骤1);
4)直到WinAPI调用行为集合中再无行为为止,最终得到的新的WinAPI调用行为集合为由WinAPI交集构成的调用行为集合。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国科学院信息工程研究所,未经中国科学院信息工程研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201510398323.5/1.html,转载请声明来源钻瓜专利网。





