首页 | 本学科首页   官方微博 | 高级检索  
相似文献
 共查询到20条相似文献,搜索用时 31 毫秒
1.
Android supports seamless user experience by maintaining activities from different applications (apps) in the same activity stack. Although such close inter-app communication is essential in the Android framework, the powerful inter-app communication contains vulnerabilities that can inject malicious activities into a victim app's activity stack to hijack user interaction flows. In this article, we demonstrate activity injection attacks with a simple malware, and formally specify the activity activation mechanism using operational semantics. Based on the operational semantics, we develop a static analysis tool, which analyzes Android apps to detect activity injection attacks. Our tool is fast enough to analyze real-world Android apps in 6 seconds on average, and our experiments found that 1761 apps out of 129,756 real-world Android apps inject their activities into other apps' tasks. Moreover, we propose a defense mechanism, dubbed signature-based activity access control (SAAC), which completely prohibits activity injection attacks. The defense mechanism is general enough to keep the current Android multitasking features intact, and it is simple enough to be independent of the complex activity activation semantics, which does not increase activity activation time noticeably. With the extension of the formal semantics for SAAC, we prove that SAAC correctly mitigates activity injection attacks without any false alarms.  相似文献   

2.
马凯  郭山清 《软件学报》2018,29(5):1379-1391
现如今,许多Android开发人员为了缩短开发时间,选择在其应用程序中内置第三方SDK.第三方SDK是一种由广告平台,数据提供商,社交网络和地图服务提供商等第三方服务公司开发的工具包,它已经成为Android生态系统的重要组成部分.令人担心的是,一个SDK有安全漏洞,会导致所有包含该SDK的应用程序易受攻击,这严重影响了Android生态系统的安全性.因此,我们在市场上选取了129个流行的第三方SDK并对其安全性进行了全面分析.为了提高分析的准确性,我们将第三方SDK的demo应用作为分析对象并使用了在分析Android应用中有效的分析方法(例如静态污点追踪、动态污点追踪、动态二进制插桩等)和分析工具(例如flowdroid、droidbox等).结果显示,在选取的这些SDK中,超过60%含有各种漏洞(例如:HTTP的误用, SSL/TLS的不正确配置, 敏感权限滥用,身份识别, 本地服务,通过日志造成信息泄露,开发人员的失误).这对于相关应用程序的使用者构成了威胁.  相似文献   

3.
Android系统在智能手机、平板电脑中有着广泛的应用,研究利用Android系统漏洞成为计算机取证技术新的应用领域。文章通过分析Android系统特点,介绍了常见的Android系统漏洞和Root工具,研究了利用Android系统破解过程,利用的漏洞来实现Android设备取证过程中获取数据、恢复删除数据、获取系统内存镜像和绕过开机密码等课题。  相似文献   

4.
Smartphone and automotive technologies are rapidly converging, letting drivers enjoy communication and infotainment facilities and monitor in-vehicle functionalities, via on-board diagnostics (OBD) technology. Among the various automotive apps available in playstores, Android Auto infotainment and OBD-II apps are widely used and are the most popular choice for smartphone to car interaction. Automotive apps have the potential of turning cars into smartphones on wheels but can be also the gateway of attacks. This paper defines a static analysis that identifies potential security risks in Android infotainment and OBD-II apps. It identifies a set of potential security threats and presents an actual static analyzer for such apps. It has been applied to most of the highly rated infotainment apps available in the Google Play store, as well as on the available open-source OBD-II apps, against a set of possible exposure scenarios. Results show that almost 60% of such apps are potentially vulnerable and that 25% pose security threats related to the execution of JavaScript. The analysis of the OBD-II apps shows possibilities of severe controller area network injections and privacy violations, because of leaks of sensitive information.  相似文献   

5.
Android应用是一种事件驱动的并发程序。后台线程与异步事件执行顺序的不确定,导致数据竞争在Android应用中普遍存在。现有的针对Android应用的竞争检测工具会产生大量误报,且不能确定地重现竞争。针对以上问题,在现有的竞争检测结果的基础上,提出了一种基于测试用例生成的Android应用数据竞争验证方法。该方法首先构建应用的状态转化图,并基于状态转化图和现有竞争检测工具的检测结果自动生成包含潜在数据竞争的测试用例,然后在测试用例执行的过程中通过控制事件分发和线程的执行顺序来暴露竞争,观察竞争是否会引起程序异常。实验结果表明,该方法能有效地重现数据竞争引起的并发错误,并指出检测结果中的误报。  相似文献   

6.
蔡华谦  张颖  黄罡  梅宏 《软件学报》2017,28(12):3367-3384
智能手机后台应用的网络请求极大地影响着待机时间.已有的工作提出了节省手机能耗的应用网络请求调度算法,然而,如何将算法自动地应用到既有手机系统,仍面临着巨大挑战:(1)在没有应用源代码的情况下,实现单个应用内的网络请求合并;(2)在不对操作系统进行任何修改的情况下,按需合并多个应用中的网络请求.以安卓应用为目标,给出了一种通过自动程序转换来支持现有移动应用中网络请求延迟调度的方法及其框架实现——DelayDroid,用以提升手机整体待机时间.通过字节码分析和程序自动转换技术解决以上挑战.与已有工作相比,DelayDroid有两大特色:一是程序转换自动执行;二是转换后的应用可支持多应用的后台网络请求调度,该调度机制可以降低安卓应用的待机耗电.此外,DelayDroid被设计为可对只有dex字节码的安卓应用进行转换,更具实用性.  相似文献   

7.
大多数现有的Android应用程序风险评估根据经验直接指定因素的权重,通过统计少量因素的使用频率来计算安全风险.提出一种新的Android应用风险评估方法,能够同时提供定量和定性评估.该方法融合系统权限、API调用、Intent Filter的action属性以及数据流等多种风险因素,基于因素的风险分类与加成进行风险赋...  相似文献   

8.
针对Android应用程序组件间通信过程中的消息载体Intent有可能被攻击者构造进而引发组件被恶意注入的安全风险问题,提出了一种基于静态污点分析的检测方法。在构建Android应用的函数调用图和控制流图的基础上,通过跟踪应用组件内和组件间不可信Intent消息的污点传播过程,检测应用中潜在的Intent注入漏洞。用该方法对4类标准测试应用和50款第三方应用进行测试,实验结果表明了该方法的可行性和有效性。  相似文献   

9.
Yifei Zhang  Yue Li  Tian Tan  Jingling Xue 《Software》2018,48(8):1419-1437
Reflection poses grave problems for static security analysis, despite its widespread use in Android apps. In general, string inference has been mainly used to handle reflection, resulting in significantly missed security vulnerabilities. In this work, we bring forward the ubiquity of incomplete information environments (IIEs) for Android apps, where some critical dataflows are missing during static analysis and the need for resolving reflective calls under IIEs. We present Ripple , the first IIE‐aware static reflection analysis for Android apps that resolves reflective calls more soundly than string inference. Validation with 17 popular Android apps from Google Play demonstrates the effectiveness of Ripple in discovering reflective targets with a low false positive rate (due to its trade‐off made among soundness, precision, and scalability). As a result, Ripple enables FlowDroid , a taint analysis for Android apps, to find hundreds of sensitive data leakages that would otherwise be missed. As a fundamental analysis, Ripple will be valuable for many security analysis clients, since more program behaviors can now be analyzed under IIEs.  相似文献   

10.
权限泄露是安卓应用中较为普遍存在的一类漏洞,可导致较为严重的安全问题,例如“串谋提权”等。通过Intent模糊测试技术发现暴露的组件,是挖掘权限泄露漏洞的有效方法。但是现有Intent模糊测试技术仅限于单机运行,效率低下。提出一种基于动态任务分配的并行模糊测试方法ParaIntentFuzz。该方法通过静态分析提取出安卓应用的extra信息并构造Intent命令,通过Drozer工具给目标应用发送命令,实现了独立的模糊测试,并部署到4台机器上。使用它分析了10 064个Android应用,最后发现有7 367个应用存在权限泄露的问题。  相似文献   

11.
陆一飞  潘敏学  张天  王林章  李宣东 《软件学报》2019,30(10):3148-3167
随着智能机以及平板电脑的普及,安卓应用逐渐成为日常生活中不可或缺的重要元素之一,其复杂度也呈几何倍数增长.安卓平台存在的多设备类型、多操作系统版本问题,使得应用的设计和开发更为复杂.在这一现状下,提倡在安卓应用开发中使用模型来描述其开发需求与设计,以帮助开发人员更好地将注意力集中于应用,加深对开发意图的理解,更好地进行后续的开发工作.然而,当前对安卓应用的建模都采用了传统模型,无法满足安卓应用事件驱动和注重图形用户界面的特点.为此,将注重前端展示以及事件交互的交互流建模语言(IFML)应用于安卓应用的建模,描述应用中的GUI结构以及其中工作流的传递,从而指导应用的开发工作.考虑到安卓平台的特点,对IFML进行了相应的面向安卓的扩展,提高了其可用性与对安卓应用的适用性,并对IFML模型进行了形式化定义,使得IFML模型能以丰富而又精确的语义来刻画开发者对于安卓应用的设计,并在应用的实现和演化中不断发挥指导作用.另外,进一步探索了IFML模型在应用测试这一场景中的作用.基于模型的测试方法能够检验设计和实现的一致性,还能在应用的演化过程中避免测试用例的重复编写.在案例研究中,针对5个安卓应用进行了IFML建模与测试.实验结果表明,扩展后的IFML在安卓应用的建模上可行、有效,所建立的IFML模型可直接用于测试工作,用于检测应用实现与设计是否保持一致,从而保证应用的开发质量.  相似文献   

12.
提出一种自动化检测Android应用反射型跨站脚本漏洞的方法,通过对Android应用组件的识别和分类,自动化输入测试例和点击与输入框关联的按钮,监测运行结果判断应用是否具有潜在的反射型跨站脚本漏洞,并通过图像处理方法实现了对WebView的支持。基于该方法实现了一个原型工具。实验表明,该方法可以有效的检测Android应用的反射型跨站脚本漏洞,具有较高的实用性。  相似文献   

13.
针对目前Android应用第三方库增大了应用程序攻击面的现状,随机选取国内5大知名官方市场上的305个应用进行了安全性分析研究,设计了Android第三方库安全性分析系统。该系统先进行第三方库的检测,细粒度识别出Android应用中的第三方库,再通过逆向工程技术静态分析apk文件,同时在Android模拟器中安装运行apk并监控它的相关行为,从而检测出第三方库带来的安全威胁。分析结果显示,相对于当下的移动漏洞扫描平台不能很好对第三方库进行安全检测的不足,该系统能够有效的检测应用中第三方库的漏洞,具有一定是实用性。  相似文献   

14.
张胜桥  尹青  常瑞  朱晓东 《计算机应用》2016,36(11):3178-3182
为了提高应用程序自动执行技术的图形用户界面(GUI)覆盖率和自动化程度以满足Android应用程序动态安全分析和GUI测试的需求,提出了一种基于应用程序安装包(APK)的Android应用程序GUI遍历自动化方法。该方法通过动态地捕捉目标应用程序GUI并模拟用户行为与之交互,驱动应用程序自动执行。基于开源框架Appium实现了一个能够自动化遍历轻量Android应用程序GUI的跨平台原型工具。实验结果表明,该自动化方法能够获得较高的GUI覆盖率。  相似文献   

15.
随着移动互联网的快速发展,智能手机特别是Android智能手机的用户日益增多,Android应用的安全缺陷层出不穷。将Android应用安全缺陷分为漏洞缺陷、组件缺陷和配置缺陷等三方面,针对这些安全缺陷,对字节码文件进行静态分析,将解析的Android字节码作为检查载体,采用访问者模式为每一种脆弱性检测设计检测器。最后给出了部分代码实现,实践证明能够满足Android应用安全缺陷的静态检测需求。  相似文献   

16.
Jiaojiao Fu  Yangfan Zhou  Xin Wang 《Software》2019,49(9):1402-1418
Most Android applications include third-party libraries (3PLs) to make revenues, to facilitate their development, and to track user behaviors. 3PLs generally require specific permissions to realize their functionalities. Current Android systems manage permissions in app (process) granularity. As a result, the permission sets of apps with 3PLs (3PL-apps) may be augmented, introducing overprivilege risks. In this paper, we firstly study how severe the problem is by analyzing the permission sets of 27 718 real-world Android apps with and without 3PLs downloaded in both 2016 and 2017. We find that the usage of 3PLs and the permissions required by 3PL-apps have increased over time. As a result, the possibility of overprivilege risks increases. We then propose Perman, a fine-grained permission management mechanism for Android. Perman isolates the permissions of the host app and those of the 3PLs through dynamic code instrumentation. It allows users to manage permission requests of different modules of 3PL-apps during app runtime. Unlike existing tools, Perman does not need to redesign Android apps and systems. Therefore, it can be applied to millions of existing apps and various Android devices. We conduct experiments to evaluate the effectiveness and efficiency of Perman. The experimental results verify that Perman is capable of managing permission requests of the host app and those of the 3PLs. We also confirm that the overhead introduced by Perman is comparable to that by existing commercial permission management tools.  相似文献   

17.
移动应用和服务器交互的接口大多都采用Web API进行通信,但这些移动应用所引入的Web API会带来一些新的安全问题。为方便研究这些Web API的安全问题,在常规的Android程序测试框架的基础上,设计并实现了一个自动发现APK中面向服务器端Web API接口的系统,该系统有助于开展对服务器端私有Web API接口方面的安全研究。  相似文献   

18.
Input validation vulnerabilities are common in Android apps, especially in inter-component communications. Malicious attacks can exploit this kind of vulnerability to bypass Android security mechanism and compromise the integrity, confidentiality and availability of Android devices. However, so far there is not a sound approach at the source code level for app developers aiming to detect input validation vulnerabilities in Android apps. In this paper, we propose a novel approach for detecting input validation flaws in Android apps and we implement a prototype named EasyIVD, which provides practical static analysis of Java source code. EasyIVD leverages backward program slicing to extract transaction and constraint slices from Java source code. Then EasyIVD validates these slices with predefined security rules to detect vulnerabilities in a known pattern. To detect vulnerabilities in an unknown pattern, EasyIVD extracts implicit security specifications as frequent patterns from the duplicated slices and verifies them. Then EasyIVD semi-automatically confirms the suspicious rule violations and reports the confirmed ones as vulnerabilities. We evaluate EasyIVD on four versions of original Android apps spanning from version 2.2 to 5.0. It detects 58 vulnerabilities including confused deputy attacks and denial of service attacks. Our results prove that EasyIVD can provide a practical defensive solution for app developers.  相似文献   

19.
针对Android应用开发中应用内部及应用之间的交互非常频繁的问题,对应用交互的模式、返回路径、传输媒介与任务栈等进行研究,旨在提高应用的系统效率.Intent组件是应用之间交互的媒介,对Intent组件的主要属性、显式Intent与隐式Intent两种启动目标组件方式进行了详细的说明,并提供了具体的实现代码.在不同应用之间的交互情境下选择不同的Intent启动方式有利于提高交互的效率.在Activity的返回路径上,提出任务栈返回与TaskStackBuilder对象管理返回两种模式及解决方案,解决了顺序路径的返回及指定路径的返回等问题,并在多个型号的设备上进行了测试验证.  相似文献   

20.
Android系统提供了多种应用间交互机制,其中开放活动(Exported Activity,EA)不需要复杂的跨进程交互就可以被其他应用在运行时调用.现在很多研究主要关注GUI组件的功能性测试,但是在Android应用本身往往不会启动内部的开放活动,所以开放活动有时候很难被覆盖到.本文提出了一种系统化测试开放活动的方法,使用该方法可以生成一组代理应用作为测试驱动程序启动应用中的开放活动.首先,使用静态分析技术解析APK文件,提取出开放活动列表和启动它们需要数据的键值和类型;其次,将相应的数据填充到预先设置好的模板中,生成测试驱动应用.本文基于提出的测试方法开发了一款原型工具——EASTER,使用一些真实的应用进行了实验.实验结果显示,所有测试应用共有65个开放活动,其中有20个开放活动在被外部应用启动过程中存在漏洞.  相似文献   

设为首页 | 免责声明 | 关于勤云 | 加入收藏

Copyright©北京勤云科技发展有限公司  京ICP备09084417号