[发明专利]基于自动化测试的安卓应用网络行为信息提取系统及方法有效
| 申请号: | 201911298364.1 | 申请日: | 2019-12-17 |
| 公开(公告)号: | CN111190813B | 公开(公告)日: | 2022-09-20 |
| 发明(设计)人: | 俞研;惠啸;邓芳伟;付安民;苏铓;张晗 | 申请(专利权)人: | 南京理工大学 |
| 主分类号: | G06F11/36 | 分类号: | G06F11/36 |
| 代理公司: | 南京理工大学专利中心 32203 | 代理人: | 薛云燕 |
| 地址: | 210094 江*** | 国省代码: | 江苏;32 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 基于 自动化 测试 应用 网络 行为 信息 提取 系统 方法 | ||
本发明公开了一种基于自动化测试的安卓应用网络行为信息提取系统及方法。该系统包括静态分析、字符串分析、测试用例生成和行为监控与信息提取等模块。方法为:静态分析模块通过对Android应用的Apk进行预处理,生成程序调用图,并以网络行为作为出发点对程序可能的执行路径进行探索,收集路径上的GUI驱动事件以及事件触发的条件;字符串分析模块对关键变量进行字符串求解,确定关键变量的实际值;测试用例生成模块根据收集的事件序列,生成覆盖网络行为执行路径的测试用例;将测试用例注入Davilk虚拟机,行为监控与信息提取模块在网络行为发生时拦截方法并提取相关信息。本发明提高了覆盖率、执行效率以及结果的准确率。
技术领域
本发明属于Android移动终端软件安全技术领域,特别是一种基于自动化测试的安卓应用网络行为信息提取系统及方法。
背景技术
在移动智能终端所搭载的操作系统中,Google公司推出的Android操作系统因为其开放性得到了广泛的应用。随着用户与应用开发者的不断加入,Android应用的数量也出现了爆发式的增长。面对海量的应用,如何保证应用的质量成为了亟待解决的难题。由于互联网技术的发展,人们的生活越来越离不开网络,想要在众多的网络行为中发现恶意网络行为是非常具有挑战性的。对Android应用进行静态分析的方式往往具有较高的误报率,而在用户实际使用时对网络行为进行管理又会占用较多的资源,并且对于网络行为频繁的应用来说,会严重影响用户的使用体验。因此,若果能够在用户使用之前,对应用在实际使用时可能发生的网络行为进行全面的检测,就会可以减少用户使用时发生的安全问题。
目前针对Android应用的自动化测试技术主要有三种:随机测试、基于状态模型的测试以及系统测试。随机测试是随机的生成GUI驱动事件来探索应用,在路径过长或路径中约束条件过多时,随机测试不能有效的覆盖,这是因为路径长度未知会使得随机测试产生大量的冗余事件或是因为生成事件太少而导致探索不完全。基于状态模型的测试技术是对程序的状态进行不同粒度的抽象,按照一定策略去探索程序所有可能状态,由于缺乏静态分析,无法根据应用状态描述应用行为,当抽象粒度过细时会遇到状态爆炸的问题,而粒度过粗则不能描述状态细节。系统测试是采用符号执行技术或启发式算法来对特定的路径产生测试用例,能够更加有效的发现应用中难以到达的状态。系统测试依赖于对应用的静态分析,而静态分析结果的准确性也决定了系统测试的效率。这三种自动化测试方法都没有目标导向性,对于网络行为的执行路径覆盖率不理想,同时由于缺少对应用行为的分析,因此当网络行为发生时也不能了解当前网络行为的实际意图。
发明内容
本发明的目的在于提出了一种覆盖率高、应用行为理解能力强的基于自动化测试的安卓应用网络行为信息提取系统及方法。
实现本发明的技术解决方案为:一种基于自动化测试的安卓应用网络行为信息提取系统,包括静态分析模块、字符串分析模块、测试用例生成模块和行为监控与信息提取模块;
所述静态分析模块,用于将Android应用的二进制码转换为Jimple中间码,采用生命周期建模与组件关联分析生成完整的程序调用图,在程序调用图上使用路径搜索算法计算出程序执行路径,采用符号执行技术对路径进行约束收集与事件收集;
所述字符串分析模块,用于对关键变量值的逆向计算,首先采用符号表达式来表示变量,采用污点传播分析技术不断更新相关变量的符号表达式,然后采用系统函数对表达式中的操作进行模拟还原,计算出最终的变量值;
所述测试用例生成模块,用于将静态分析所得到的事件序列翻译为可以在移动端实际运行的脚本语言,将事件信息中的源信息、事件类型及事件参数转换为对应的python脚本;
所述行为监控与信息提取模块,用于在Android应用运行时监控应用状态,当网络行为发生时拦截相关方法并提取出其中参数,网络行为信息用于网络流量分类和是判别否存在恶意行为。
一种基于自动化测试的安卓应用网络行为信息提取方法,包括以下步骤:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于南京理工大学,未经南京理工大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911298364.1/2.html,转载请声明来源钻瓜专利网。





