[发明专利]针对安卓应用程序的漏洞检测方法及相关装置有效
申请号: | 202111018641.6 | 申请日: | 2021-09-01 |
公开(公告)号: | CN113468534B | 公开(公告)日: | 2022-02-11 |
发明(设计)人: | 张华;秦佳伟;李文敏;涂腾飞;王华伟;严定宇;崔栋;杜代忠 | 申请(专利权)人: | 北京邮电大学;国家计算机网络与信息安全管理中心 |
主分类号: | G06F21/56 | 分类号: | G06F21/56;G06F21/57 |
代理公司: | 北京风雅颂专利代理有限公司 11403 | 代理人: | 王刚 |
地址: | 100876 *** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 针对 应用程序 漏洞 检测 方法 相关 装置 | ||
1.一种针对安卓应用程序的漏洞检测方法,包括:
基于预先构建的入口节点,构建目标安卓应用程序的控制流图;其中,所述预先构建的入口节点包括:onCreate(Bundle savedInstanceState)、onClick(View v)、onStart()、onCreate()、onStart(Intent intent)、onBind(Intent intent)、onUnbind(Intentintent)、onRebind(Intent intent)和onReceive(Context curContext, IntentbroadcastMsg);
基于所述控制流图,构建所述目标安卓应用程序的程序依赖图;
根据所述程序依赖图,获取所述目标安卓应用程序的疑似漏洞点;提取所述疑似漏洞点的前向切片和后向切片;提取所述前向切片和后向切片中的方法,并提取所述方法中的对象的前向切片和后向切片;其中,所述方法即设置参数的方法,将每一个涉及参数设置的方法都作为新的疑似漏洞点,并提取所述新的疑似漏洞点的前向切片和后向切片;将所有所述前向切片和后向切片存储至树结构中;遍历所述树结构中的所述前向切片和后向切片,将所有所述前向切片和后向切片汇总形成所述疑似漏洞点的代码抽象表达式,作为所述目标安卓应用程序的漏洞特征;其中,在得到所述目标安卓应用程序的漏洞特征之后,还包括:移除所述漏洞特征中的所述方法的异常处理信息;统一所述漏洞特征中的自定义信息;移除所述漏洞特征中的应用程序编程接口信息的包名,只保留类名;对于同一所述对象的所述方法进行组合,得到修正的漏洞特征;
利用所述漏洞特征训练预先构建的机器学习模型,得到漏洞检测模型,并基于所述漏洞检测模型检测所述目标安卓应用程序的漏洞。
2.根据权利要求1所述的方法,其中,所述构建目标安卓应用程序的控制流图,包括:
基于预先构建的入口节点,构建所述目标安卓应用程序的控制流图GFG=(N,E,nentry,nexit)|E={nk,nw|nk,nw∈N};
其中,GFG表示控制流图,N表示控制流图的节点集,E表示控制流图的边集,nentry和nexit分别表示目标安卓应用程序的入口节点和出口节点,nk和nw表示控制流图的节点集中的两个节点。
3.根据权利要求1所述的方法,其中,所述基于所述控制流图,构建所述目标安卓应用程序的程序依赖图,包括:
以所述控制流图为基础,去掉所述控制流图的控制流边,加入数据和新的控制流边,得到所述程序依赖图PDG=(V’,E’)|E’={sk,sw|sk,sw∈V’};
其中,PDG表示程序依赖图,V’表示程序依赖图的节点集,E’表示程序依赖图的边集,sk,sw表示程序依赖图的节点集中的两个节点。
4.根据权利要求1所述的方法,其中,所述自定义信息包括自定义变量信息、自定义方法信息和自定义类信息;所述统一所述漏洞特征中的自定义信息,包括:
获取所述漏洞特征中的所述自定义信息,按照先后顺序对所述自定义信息进行替换变成统一的命名方式;其中,不同的所述自定义变量信息、自定义方法信息和自定义类信息按照序号进行区分;相同的所述自定义变量信息、自定义方法信息和自定义类信息在不同的位置保持命名一致。
5.根据权利要求1所述的方法,其中,所述利用所述漏洞特征训练预先构建的机器学习模型,得到漏洞检测模型,并基于所述漏洞检测模型检测所述目标安卓应用程序的漏洞,包括:
对所述漏洞特征进行向量化处理,得到漏洞特征词向量,并将所述漏洞特征词向量加入到模型训练数据集中;
利用所述模型训练数据集训练预先构建的所述机器学习模型,得到所述漏洞检测模型;所述机器学习模型包括Bi-LSTM模型;所述机器学习模型中加入了注意力机制。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京邮电大学;国家计算机网络与信息安全管理中心,未经北京邮电大学;国家计算机网络与信息安全管理中心许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202111018641.6/1.html,转载请声明来源钻瓜专利网。