[发明专利]一种基于回调函数建模自动生成Android应用回调序列的方法有效
| 申请号: | 201710029661.0 | 申请日: | 2017-01-16 |
| 公开(公告)号: | CN106874764B | 公开(公告)日: | 2019-10-29 |
| 发明(设计)人: | 许静;过辰楷;刘奥;朱静雯;康介恢 | 申请(专利权)人: | 南开大学 |
| 主分类号: | G06F21/56 | 分类号: | G06F21/56;G06F11/36 |
| 代理公司: | 天津佳盟知识产权代理有限公司 12002 | 代理人: | 侯力 |
| 地址: | 300071*** | 国省代码: | 天津;12 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 基于 调函 建模 自动 生成 android 应用 序列 方法 | ||
本发明公开了一种基于回调函数建模自动生成Android应用回调序列的方法,该方法考虑了生命周期回调函数,GUI回调函数和系统驱动回调函数,在预先设计并搭建好的Android回调信息库基础上,对源程序进行函数‑回调映射预处理从而获取到回调集,非回调集和函数‑回调映射列表等建模所需基础数据,对应用组件内部的生命周期回调关系、注册关系和组件间的跳转关系进行了统一抽象并生成回调序列模型。本发明的这种基于回调函数建模自动生成Android应用回调序列的方法,建模全面统一,执行速度快,经过实践证明是可信的。可用于Android平台上应用程序的静态分析和内部回调建模领域。
【技术领域】
本发明属于Android平台上应用程序的静态分析和内部回调建模技术领域,具体涉及一种基于回调函数建模自动生成Android应用回调序列的方法。
【背景技术】
当前移动设备已经成为人们生活必不可少的一部分。为了满足人们日益增长的应用需求,移动设备上的应用层出不穷。其中基于Android平台的应用数量巨大并且仍在持续增长,大量的Android平台上的应用被证明具有功能或安全性方面的问题。因此,确保移动应用功能的正确性和使用的安全性越来越成为人们的关键需求。
对Android应用进行安全检查,静态分析,需要将apk文件反编译成介于java代码和二进制码之间的smali代码,并对smali代码进行静态分析。区别于传统的桌面应用程序,Andorid系统具有事件驱动的特性,虽然这个特性为其带来诸多用户体验的优势,然而高度的交互性不可避免的增加了程序分析和测试的难度。因为Android平台的事件驱动特性,在对Android应用进行静态分析基础上创建相应模型的方法比直接对源码进行分析要更具优势。
基于目前工作,能够总结以下两个结论:
1)回调函数序列,作为Android系统的一项主要特性,在分析和测试移动应用的过程中占据关键地位。以此为基础的回调函数序列提取技术弥补了传统程序分析方法的不足。与传统方法不同,回调函数序列不再考虑程序的控制流或数据流,而是关注事件序列的发生和相关特征的更新处理。因此,回调函数序列能够解决由事件不确定性引起的逻辑问题,如事件异常,回调函数序列违法等,而这些问题利用传统的分析技术是难以解决的。
2)现有的回调函数序列的处理工作仅仅是目标导向。即针对特殊问题构建特定的回调序列,所生成的序列往往是粗粒度、不可移植且不完备的。片面构建方法的缺陷主要表现在两方面:一是没有对生命周期回调,GUI(Graphic User Interface)回调,系统驱动回调,组件间关系进行统一构建。其原因是难以找到一个统一的序列模式。例如,检测一些控件的变化状态必须要处理其在不同组件间的传递关系,控件的变化与组件间的传递动作二者难以统一,一个不完备的模型序列使得分析的结果易于出错。二是不同类型的逻辑缺陷往往存在于同一程序块中。当前的部分构建方法无法利用一种通用的方法加以处理,从而严重限制了其实用性。另外,部分构建也使得所构建的序列模型难以运用到其他场景。
【发明内容】
本发明旨在使用静态分析的方法,为Android平台上的应用建立一种统一的回调序列模型,即提供一种基于回调函数建模自动生成Android应用回调序列的方法。该方法考虑了生命周期回调函数,GUI回调函数和系统驱动回调函数,它不仅对生命周期回调关系、注册关系这两种主要的应用组件内部的回调关系进行统一抽象生成回调序列,更重要的是关注了不同类型组件之间的跳转回调关系,生成组件跳转回调序列,从而提供完备的细粒度回调信息,便于分析各类相关的时序属性,比如权限使用属性等。
本发明提供的基于回调函数建模自动生成Android应用回调序列的方法包含以下步骤:
步骤1、搭建Android回调信息库;
步骤2、以Android应用的smali类型源码为输入,进行函数-回调映射预处理;
步骤3、根据生命周期时序关系,生成生命周期回调序列;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于南开大学,未经南开大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710029661.0/2.html,转载请声明来源钻瓜专利网。





