一种恶意应用程序检测方法和装置的制造方法_4

文档序号:9866049阅读:来源:国知局
,被划分为发送类API和非 发送类API ; 将获取的发送类API的执行参数与提取的所有用户信息或者获取的非发送类API的结 果变量进行匹配,根据匹配结果确定所述应用程序是否为恶意应用程序。2. 如权利要求1所述的方法,其特征在于,将获取的发送类API的执行参数与提取的所 有用户信息或者获取的非发送类API的结果变量进行匹配,根据匹配结果确定所述应用程 序是否为恶意应用程序,具体包括: 针对所述应用程序包含的每一发送类API,判断提取的用户信息中是否存在与该发送 类API的执行参数匹配的用户信息; 如果存在,则确定所述应用程序为恶意应用程序; 如果不存在,则根据所述发送类API的执行参数和所述应用程序包含的非发送类API 的结果变量,从非发送类API中递归查找是否存在执行参数与提取的用户信息匹配的非发 送类API ; 如果存在,确定所述应用程序为恶意应用程序。3. 如权利要求2所述的方法,其特征在于,根据所述发送类API的执行参数和所述应用 程序包含的非发送类API的结果变量,从非发送类API中递归查找是否存在执行参数与提 取的用户信息匹配的非发送类API,具体包括: 根据所述发送类API的执行参数,从所述非发送类API中查找是否存在结果变量与所 述发送类API的执行参数一致的目标API ; 如果存在,则判断目标API的执行参数是否与提取的至少一个用户信息匹配; 如果是,则确定所述非发送类API中存在执行参数与提取的用户信息匹配的非发送类 API ; 如果否,则根据目标API的执行参数,从未遍历的非发送类API中继续递归查找是否存 在结果变量与目标API的执行参数一致的非发送类API,直至查找到执行参数与提取的用 户信息匹配的非发送类API或者遍历所有非发送类API为止。4. 如权利要求1所述的方法,其特征在于,获取移动终端安装的应用程序所包含的各 应用程序编程接口 API的参数变量,具体包括: 对所述应用程序进行逆向反编译,得到所述应用程序对应的源码; 根据所述源码获取所述应用程序包含的各API的参数变量。5. 如权利要求4所述的方法,其特征在于,根据所述源码获取所述应用程序包含的各 API执行参数变量,具体包括: 针对每一 API,分别在该所述源码中、该API执行前和执行后插入标记代码,所述标记 代码包括API分类标记代码; 记录每一 API的执行信息,根据该API的执行信息和该API的标记代码,获取该API的 类别和该API的参数变量。6. 如权利要求1至5任一权利要求所述的方法,其特征在于,所述获取移动终端安装的 应用程序所包含的各API的参数变量,包括: 通过用于记录所述各API的执行信息的日志,获取所述各API的参数变量。7. 如权利要求6所述的方法,其特征在于,还包括: 输出记录各API的执行信息的日志。8. 如权利要求1所述的方法,其特征在于,判断提取的用户信息中是否存在与该发送 类API的执行参数匹配的用户信息,具体包括: 依次比较该发送类的执行参数与提取的每一用户信息; 如果该发送类的执行参数与当前比较的用户信息相同,则确定提取的用户信息中存在 与该发送类API的执行参数匹配的用户信息; 如果该发送类的执行参数与提取的每一用户信息均不相同,则确定提取的用户信息中 不存在与该发送类API的执行参数匹配的用户信息。9. 一种恶意应用程序检测装置,其特征在于,包括: 提取单元,用于提取移动终端中的所有用户信息; 获取单元,用于获取移动终端安装的应用程序所包含的各API的参数变量,所述参数 变量包括执行参数,或者,执行参数和结果变量,其中,各API根据是否发送消息,被划分为 发送类API和非发送类API ; 确定单元,用于将获取的发送类API的执行参数与提取的所有用户信息或者获取的非 发送类API的结果变量进行匹配,根据匹配结果确定所述应用程序是否为恶意应用程序。10. 如权利要求9所述的装置,其特征在于,所述确定单元,包括: 判断子单元,用于针对所述应用程序包含的每一发送类API,判断提取的用户信息中是 否存在与该发送类API的执行参数匹配的用户信息; 确定子单元,用于在所述判断子单元的判断结果为是时,确定所述应用程序为恶意应 用程序;或者用于在查找子单元从非发送类API中查找到执行参数与提取的用户信息匹配 的非发送类API时,确定所述应用程序为恶意应用程序; 查找子单元,用于在所述判断子单元的判断结果为否时,根据所述发送类API的执行 参数和所述应用程序包含的非发送类API的结果变量,从非发送类API中递归查找是否存 在执行参数与提取的用户信息匹配的非发送类API。11. 如权利要求10所述的装置,其特征在于,所述查找子单元,具体包括: 查找模块,用于根据所述发送类API的执行参数,从所述非发送类API中查找是否存在 结果变量与所述发送类API的执行参数一致的目标API ;以及用于在判断模块的判断结果 为否时,根据目标API的执行参数,从未遍历的非发送类API中继续递归查找是否存在结果 变量与目标API的执行参数一致的非发送类API,直至查找到执行参数与提取的用户信息 匹配的非发送类API或者遍历所有非发送类API为止; 判断模块,用于在所述查找模块查找到所述目标API时,判断目标API的执行参数是否 与提取的至少一个用户信息匹配; 第一确定模块,用于在所述判断模块的判断结果为是时,确定所述非发送类API中存 在执行参数与提取的用户信息匹配的非发送类API。12. 如权利要求9所述的装置,其特征在于,所述获取单元,具体包括: 逆向反编译子单元,用于对所述应用程序进行逆向反编译,得到所述应用程序对应的 源码; 获取子单元,用于根据所述源码获取所述应用程序包含的各API的参数变量。13. 如权利要求12所述的装置,其特征在于,所述获取子单元,包括: 标记模块,用于针对每一 API,分别在该所述源码中、该API执行前和执行后插入标记 代码,所述标记代码包括API分类标记代码; 记录模块,用于记录每一 API的执行信息,根据该API的执行信息和该API的标记代 码,获取该API的类别和该API的参数变量。14. 如权利要求9~13任一权利要求所述的装置,其特征在于, 所述获取子单元,具体用于通过用于记录所述各API的执行信息的日志,获取所述各 API的参数变量。15. 如权利要求14所述的装置,其特征在于,所述装置还包括: 输出单兀,用于输出记录各API的执行信息的日志。16. 如权利要求10所述的装置,其特征在于,所述判断子单元,具体包括: 比较模块,用于依次比较该发送类的执行参数与提取的每一用户信息; 第二确定模块,用于如果该发送类的执行参数与当前比较的用户信息相同,则确定提 取的用户信息中存在与该发送类API的执行参数匹配的用户信息;如果该发送类的执行参 数与提取的每一用户信息均不相同,则确定提取的用户信息中不存在与该发送类API的执 行参数匹配的用户信息。
【专利摘要】本发明公开了一种恶意应用程序检测方法和装置,用以提高恶意应用程序检测的准确性。根据是否发送消息,将API划分为发送类API和非发送类API;所述方法,包括:提取移动终端中的所有用户信息;获取移动终端安装的应用程序所包含的各API的参数变量,所述参数变量包括执行参数或者执行参数和结果变量;将获取的发送类API的执行参数与提取的所有用户信息或者获取的非发送类API的结果变量进行匹配,根据匹配结果确定所述应用程序是否为恶意应用程序。
【IPC分类】G06F21/56
【公开号】CN105631325
【申请号】CN201410610791
【发明人】张二鹏, 彭华熹
【申请人】中国移动通信集团公司
【公开日】2016年6月1日
【申请日】2014年11月3日
当前第4页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1