码迷,mamicode.com
首页 > 移动开发 > 详细

一篇神仙文章 19年4月 IEEE 构建检测Android恶意应用程序的特性问题、分类和方向

时间:2019-11-15 12:26:42      阅读:101      评论:0      收藏:0      [点我收藏+]

标签:窗口管理   生成   str   受限   san   多个   文件   对象   层次结构   

Android简介

Android是一个基于Linux内核的开源移动操作系统,主要为智能设备设计。Android系统的层次结构分为Linux内核层、库层、应用框架层和应用层。Linux内核层提供一些基本功能,如内存管理、进程管理和网络协议。这一层包含硬件组件的所有底层设备的核心驱动程序。库层提供核心库,包括原始库和第三方应用库,以辅助应用框架层。应用程序框架层相当于一个中间层,它智能地协调组件,从而增强了整个系统的灵活性。为了完成这项工作,应用程序框架包含许多系统服务,如活动管理器、窗口管理器、资源管理器、位置管理器、内容提供程序等等。应用层是唯一可以与用户交互的层,由运行在Android设备上的所有应用程序组成。

Android应用程序使用Java编程语言编写,使用Android软件开发工具包(SDK)提供的api。除了Java代码,应用程序还可能包含一些Android系统提供或由开发人员实现的本地库。与数据和资源一起编译的应用程序代码被打包到一个归档文件中,即所谓的Android应用程序包(APK)。在Android设备上安装APK之后,它将使用Android运行时环境运行。Android应用程序包含四个主要组件:活动、广播接收器、服务和内容提供商。Activity指定用户界面并处理与智能手机屏幕的用户交互。广播接收器处理操作系统和应用程序之间的通信。服务管理应用程序的后台处理来执行longrunning操作。内容提供商提供跨应用程序的数据共享。

开发人员在设计Android平台时引入了各种安全机制。Android系统具有层次结构,每一层都有自己的安全机制,即传统的访问控制机制、基于权限检查的机制、沙箱机制、数字签名机制和加密机制:

  传统的访问控制机制相当于Android的Linux内核安全机制。访问控制限制主题(如用户或服务)访问对象(如资源)。它是保护数据机密性和完整性的主要方法。访问控制包括强制访问控制(MAC)和自主访问控制(DAC)两种方法。MAC由Linux安全模块实现。DAC是通过文件访问控制来实现的。

  Android使用基于许可的安全模型来限制应用程序访问某些资源。如果应用程序想要使用受限制的资源,它们必须通过XML文件申请许可。在Android系统批准之前,应用程序不能使用受限资源。Android权限有四个级别,即正常、危险、签名和签名/系统。低级权限,包括正常和危险级别,在应用程序申请后立即进行授权。签名级别和签名/系统级别权限称为高级权限。在应用程序可以应用这些权限之前,它需要实现平台级的身份验证。然而,这一机制存在许多缺陷。用户需要决定应用的权限是否应该被授权,但是用户没有足够的知识来判断。

  Sandbox用于分离Android系统中正在运行的应用程序。沙箱为应用程序提供了一组严格控制的资源。在Android应用程序的运行期间,每个应用程序运行在自己的Dalvik虚拟机中,拥有自己的进程空间和资源。因此,不同的应用程序不能相互交互,也不能访问彼此的资源和内存空间。

  数字签名机制在应用层的安全中起着非常重要的作用。Android应用程序开发人员必须给他们的应用程序添加数字签名,因为没有数字签名的应用程序是不允许安装的。如果攻击者故意更改APK的内部文件,他必须退出app。直到攻击者获得原始发布者的私钥,他才会生成与原始签名一致的签名。此外,当应用程序需要更新时,应用程序的签名也会被检查。 数字签名保证了完整性。

  Android系统可以支持加密机制,保护一些重要数据不被未经授权的用户或应用程序访问。Android系统在3.0及以上版本中实现了加密机制。由于用户越来越重视对隐私数据的保护,如手机事件、短信以及一些支付信息等,因此加密机制对Android系统的重要性越来越高。

论文筛选流程:

1)搜索方法

我们使用著名的文献搜索引擎和数据库来准备我们的调查。我们的目标是找到高质量和高相关性的参考论文,包括期刊文章和会议论文。所选的搜索引擎包括IEEE Explore、ACM Digital Library、施普林格、Elsevier和DBLP。这些期刊和会议与软件工程(包括软件测试和分析)、编程语言和系统、安全、移动计算和系统相关。

根据本次调查的主题,我们将重点放在文献检索的关键词上,如图。此外,我们还利用正则表达式和词性转换对其进行了扩展,以获得更多的关键字。

技术图片

2)选择标准并不是所有基于搜索方法的候选论文都适合本文的研究范围。因此,我们使用以下的包含和排除标准来进一步筛选候选论文。答:包含标准如上图所示,有三个由关键字组成的域。本调查的主题涉及三个领域的交集。属于这三个领域交集的论文可以纳入我们的综述。

  此外,我们排除了:1)论文关注的是Android以外的平台,如iOS, Windows Mobile, BlackBerry, Symbian。然而,包括Android在内的多个平台的论文也包括在内。2)论文只关注缓解安全威胁的技术,没有关注任何安全分析技术。这些技术试图通过不同的方法在应用程序级或Android平台级增强安全机制。3)论文对Android框架或应用程序进行了一次特定的攻击,没有描述检测技术或检测中使用的具体特性。4)论文侧重于app安全分析,没有提及任何类型的功能

3)选择的论文

  我们首先通过检索的方法收集1947年的研究论文。根据这些论文的评选标准和评审结果,我们最终评选出236篇论文。我们对这些论文进行了一些统计分析,找出它们在出版场所的分布情况以及每年的流行趋势。图2和图3描述了每个期刊/会议中被选论文的分布情况,表明被选论文大多发表在顶级会议和期刊上。图4为2011 - 2019年每年的入选论文数量。为了获得更先进的评审结果,我们主要收集最新发表的论文。从图中可以看出,近年来关于Android应用安全分析的论文数量总体呈上升趋势。

 

table 2中的引文总结

一篇神仙文章 19年4月 IEEE 构建检测Android恶意应用程序的特性问题、分类和方向

标签:窗口管理   生成   str   受限   san   多个   文件   对象   层次结构   

原文地址:https://www.cnblogs.com/yvlian/p/11865264.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!