[发明专利]一种安卓应用并发漏洞检测系统有效

专利信息
申请号: 201610952304.7 申请日: 2016-10-27
公开(公告)号: CN106529304B 公开(公告)日: 2019-06-14
发明(设计)人: 许畅;马晓星;吕建;李其玮;蒋炎岩 申请(专利权)人: 南京大学
主分类号: G06F21/57 分类号: G06F21/57
代理公司: 南京钟山专利代理有限公司 32252 代理人: 戴朝荣
地址: 210046 *** 国省代码: 江苏;32
权利要求书: 查看更多 说明书: 查看更多
摘要: 发明公开了一种安卓应用并发漏洞检测系统,包含并发漏洞分析模块、应用插装模块和应用执行模块;所述并发漏洞分析模块用于分析应用中的潜在并发漏洞,并传递给应用插装模块;应用插装模块根据并发漏洞分析模块的检测结果,在疑似数据竞争代码处插入能够改变线程调度的语句,在后台线程入口方法处插入能够阻塞线程运行的控制代码,同时插入获取应用运行时刻状态信息的后台服务;应用执行模块会运行被插装过的应用,并产生成对的疑似事件发送给应用以触发潜在的并发漏洞。本发明检测结果正确高效,全程自动化,不需要用户额外参与。
搜索关键词: 一种 应用 并发 漏洞 检测 系统
【主权项】:
1.一种安卓应用并发漏洞检测系统,其特征在于:包含并发漏洞分析模块、应用插装模块和应用执行模块;所述并发漏洞分析模块用于分析应用中的潜在并发漏洞,并传递给应用插装模块;应用插装模块根据并发漏洞分析模块的检测结果,在疑似数据竞争代码处插入能够改变线程调度的语句,在后台线程入口方法处插入能够阻塞线程运行的控制代码,同时插入获取应用运行时刻状态信息的后台服务;应用执行模块会运行被插装过的应用,并产生成对的疑似事件发送给应用以触发潜在的并发漏洞;所述并发漏洞分析模块由静态分析部分和动态分析部分组成,静态分析部分直接分析应用的安装文件,找到所有可能的程序任务中的疑似数据竞争作为潜在并发漏洞;动态分析部分首先需要按照深度优先搜索的方式运行被测应用,同时记录所有程序任务的程序执行事件,包括全局的资源访问和方法调用,最后找到任务中的潜在疑似数据竞争作为潜在并发漏洞;所述并发漏洞分析模块静态分析部分的工作流程为,并发漏洞分析模块的静态分析部分通过分析应用的安装文件,找到疑似数据竞争,并报告给下一个模块;所述并发漏洞分析模块静态分析部分的工作流程具体为,并发漏洞分析模块首先读入应用的安装文件,然后解析得到所有的程序任务,即事件处理方法和后台线程,以及它们的入口方法;该模块会对每一个程序任务进行单独处理,计算出它们的方法调用图,这里使用了深度优先遍历的方法,首先将入口方法压入栈内,判断当前的栈是否为空,如果为空,则结束遍历;否则,取出栈顶的方法,并标记该方法,并解析得到该方法调用的所有其它方法,将没有被标记过的方法压入栈内,接着回到之前判断栈是否为空的步骤继续执行;当为所有的程序任务生成了方法调用图后,解析出它们的方法调用图中的每一个方法对资源的访问的指令,接着处理所有的程序任务对,即将程序任务两两组合以进一步分析,对于每一对程序任务,将两者所有的资源访问指令配对进行比较,如果两条指令访问的是同一个共享资源,且至少一个是写操作,则标记为疑似的数据竞争;最后,当处理完了所有的程序任务对后,为所有的疑似数据竞争生成报告,并结束该流程。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于南京大学,未经南京大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/patent/201610952304.7/,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top