[发明专利]一种检测Android应用程序组件通信漏洞的方法在审
申请号: | 201610647400.0 | 申请日: | 2016-08-09 |
公开(公告)号: | CN106294149A | 公开(公告)日: | 2017-01-04 |
发明(设计)人: | 张华;涂腾飞;宋洪基;李文敏;温巧燕 | 申请(专利权)人: | 北京邮电大学 |
主分类号: | G06F11/36 | 分类号: | G06F11/36 |
代理公司: | 北京永创新实专利事务所11121 | 代理人: | 赵文利 |
地址: | 100876 *** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明是一种检测Android应用程序组件通信漏洞的方法,属于计算机测试领域;包括:首先定制ROM并刷入测试机;然后检测某个待测应用程序中的暴露组件信息;根据每个暴露组件的Action和Category信息,同时结合Android推荐的Extras的key与value构造测试数据;写入Intent中进行第一次Fuzz测试,检测每个暴露组件的通信漏洞,同时记录系统日志;测试完后分析所有日志信息,提取出真实的Extras详细信息,根据真实Extras的key和value信息,再次为该待测应用程序重新构造测试数据,进行第二次Fuzz测试;通过分析第二次测试返回的数据和日志信息,生成检测报告;优点在于:属于动态方法无需对Android应用程序进行反编译,能够直接给出漏洞攻击的结果;通过两次的Fuzz测试,构造针对性数据,提高测试效果。 | ||
搜索关键词: | 一种 检测 android 应用程序 组件 通信 漏洞 方法 | ||
【主权项】:
一种检测Android应用程序组件通信漏洞的方法,其特征在于,具体步骤如下:步骤一:定制ROM后将ROM刷入测试机;定制ROM具体为:修改Android源码Framework层的相关函数,将Extras的key和value绑定应用程序包名输出到日志中;步骤二、针对用户要检测的某个Android应用程序,在测试机上进行自动安装和启动;步骤三、检测待测应用程序中组件暴露的风险,并记录暴露组件的详细信息;暴露组件的定义为:待测应用程序中某个组件的配置信息中,组件exported属性值为True或者该组件的配置中包含Intent‑filter标签,则定义该组件为暴露组件;步骤四、针对每个暴露组件,根据该暴露组件配置信息中的Action和Category信息,同时结合Android推荐的Extras的key与value构造测试数据;步骤五、将构造好的测试数据写入Intent中,对该暴露组件进行Fuzz测试,检测暴露组件的通信漏洞,同时记录系统日志;写入Intent具体为:构造完当前暴露组件的测试数据后,利用Intent的putExtra函数将Android推荐的Extras的key与value数据加入到Intent中,利用setAction函数将Action信息加入Intent,利用addCategory函数将Category信息加入Intent;将测试数据写入Intent后,利用ComponentName类和Intent类的setComponent函数将待测应用程序包名(Package Name)和待测暴露组件的信息写入Intent,调用startActivityiForResult(Intent)函数、startService(Intent)函数和sendBroadcast(Intent)函数,对每个暴露组件进行Fuzz测试,并利用系统日志记录该暴露组件的运行状态和返回的数据;步骤六、依次对下一个暴露组件重复步骤四和步骤五进行测试,直至测完待测应用程序的所有暴露组件;步骤七、分析测试完该待测应用程序的所有日志信息,提取出该待测应用程序真实的Extras详细信息;Extras详细信息包括:Extras的key、value、数据类型信息和具体的触发函数;步骤八、根据真实Extras的key和value信息,结合每个暴露组件配置信息中的Action和Category信息,为该待测应用程序重新构造测试数据,并再次进行测试和记录系统日志;步骤九、通过分析第二次测试返回的数据和日志信息,生成检测报告。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京邮电大学,未经北京邮电大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201610647400.0/,转载请声明来源钻瓜专利网。
- 上一篇:一种防水性能好的对讲机
- 下一篇:一种绑带结构