Android中的Permission权限机制介绍

Android 通过在每台设备上实施了基于权限的安全策略来处理安全问题,采用权限来限制安装应用程序的能力。当某个权限与某个操作和资源对象绑定在一起,我们必须获得这个权限才能在对象上执行操作。由于Android设计本身就是为Android开发人员着想,所以一切权限许可权由用户决定而不是手机制造商和平台提供商,但这不得不带来了开发者滥用权限,黑客通过权限来进行恶意行为的风险,所以作为静态分析一个app是否为恶意软件的第一道关,获取并了解Android Permission权限意义是十分重大的。

权限策略

Android 框架提供一套默认的权限存储在android.anifest.permission 类中,同时也允许我们自己定义新的权限。我们在写应用程序时声明权限,程序安装时新权限被引入系统。权限授权在应用程序被安装时执行。当在设备上安装应用程序时,程序将请求完成任务必需的权限集合。被请求的权限列单显示在设备屏幕上以待用户审查只有用户同意授权后,程序才会被安装,该应用程序获得所有被请求的权限。所以,Android 系统实施的主要安全准则是应用程序只有得到权限许可后,才能执行可能会影响到系统其它部分的操作。

每个权限被定义成一个字符串,用来传达权限以执行某个特殊的操作。所有权限可以分为两个类别:一种是执行程序时被应用程序所请求的权限,一种是应用程序的组件之间通信时被其它组件请求的权限。开发者通过在AndroidManifest.xml文件中编写权限标签来定义以上两种类别的权限策略。

权限声明

应用程序可以用一个<permission>元素来声明权限, 用于限制访问特定组件或应用程序 在安装程序时, 这个已声明的权限被加入到系统中,具体可以参看:Android 自定义权限

权限请求

应用程序列出所有需要用来完成任务的权限,分别用 <use-permission>元素标识这些权限。在程序安装时被请求,列表显示在屏幕上用户要么同意安装,要么中止安装。同意安装则意味着授权所有被请求的权限。

获取权限

获取权限,是我们静态分析某个app的第一关,通过知道app所具有的权限,我们一般能够基本知道该app或许会有那些行为。

工具:目前已有多个工具可以静态检测Android app所具有的Permissions,这类工具有:aapt、apktool、androguard等等;

时间: 2024-09-12 17:49:31

Android中的Permission权限机制介绍的相关文章

Android中的Permission权限机制介绍_Android

Android 通过在每台设备上实施了基于权限的安全策略来处理安全问题,采用权限来限制安装应用程序的能力.当某个权限与某个操作和资源对象绑定在一起,我们必须获得这个权限才能在对象上执行操作.由于Android设计本身就是为Android开发人员着想,所以一切权限许可权由用户决定而不是手机制造商和平台提供商,但这不得不带来了开发者滥用权限,黑客通过权限来进行恶意行为的风险,所以作为静态分析一个app是否为恶意软件的第一道关,获取并了解Android Permission权限意义是十分重大的. 权限

Android中Permission权限机制的具体使用_Android

由上篇Android Permission权限机制引子,我们知道Android 通过在每台设备上实施了基于权限的安全策略来处理安全问题,采用权限来限制安装应用程序的能力.本篇文章继续来探讨和Android权限相关的话题,主要集中在权限级别.ICC(inter- component communication)权限保护两个方面. 权限级别 protection level 每一个Permission权限都设有了权限级别(protection level),分别如下: 复制代码 代码如下: "nor

Android中Permission权限机制的具体使用

由上篇Android Permission权限机制引子,我们知道Android 通过在每台设备上实施了基于权限的安全策略来处理安全问题,采用权限来限制安装应用程序的能力.本篇文章继续来探讨和Android权限相关的话题,主要集中在权限级别.ICC(inter- component communication)权限保护两个方面. 权限级别 protection level 每一个Permission权限都设有了权限级别(protection level),分别如下: 复制代码 代码如下: "nor

Android权限管理之Permission权限机制及使用详解_Android

前言: 最近突然喜欢上一句诗:"宠辱不惊,看庭前花开花落:去留无意,望天空云卷云舒." 哈哈~,这个和今天的主题无关,最近只要不学习总觉得生活中少了点什么,所以想着围绕着最近面试过程中讨论比较多的一个知识点Android 6.0 权限适配问题来进行学习,不过我不想直接进入这个主题,所以选择先去了解一下Android的Permission权限机制及使用 Android权限机制: 权限是一种安全机制.Android权限主要用于限制应用程序内部某些具有限制性特性的功能使用以及应用程序之间的组

Android权限管理之Permission权限机制及使用详解

前言: 最近突然喜欢上一句诗:"宠辱不惊,看庭前花开花落:去留无意,望天空云卷云舒." 哈哈~,这个和今天的主题无关,最近只要不学习总觉得生活中少了点什么,所以想着围绕着最近面试过程中讨论比较多的一个知识点Android 6.0 权限适配问题来进行学习,不过我不想直接进入这个主题,所以选择先去了解一下Android的Permission权限机制及使用 Android权限机制: 权限是一种安全机制.Android权限主要用于限制应用程序内部某些具有限制性特性的功能使用以及应用程序之间的组

android中获取root权限的方法以及原理(转)

一. 概述 本文介绍了android中获取root权限的方法以及原理,让大家对android 玩家中常说的"越狱"有一个更深层次的认识. 二. Root 的介绍 1. Root 的目的 可以让我们拥有掌控手机系统的权限,比如删除一些system/app下面的无用软件,更换开关机铃声和动画,拦截状态栏弹出的广告等. 2. Root的原理介绍 谷歌的android系统管理员用户就叫做root,该帐户拥有整个系统至高无上的权利,它可以访问和修改你手机几乎所有的文件,只有root才具备最高级别

详细分析Android中onTouch事件传递机制_Android

onTach介绍 ontach是Android系统中整个事件机制的基础.Android中的其他事件,如onClick.onLongClick等都是以onTach为基础的. onTach包括从手指按下到离开手机屏幕的整个过程,在微观形式上,具体表现为action_down.action_move和action_up等过程. onTach两种主要定义形式如下: 1.在自定义控件中,常见的有重写onTouchEvent(MotionEvent ev)方法.如在开发中经常可以看到重写的onTouchEv

详细分析Android中onTouch事件传递机制

onTach介绍 ontach是Android系统中整个事件机制的基础.Android中的其他事件,如onClick.onLongClick等都是以onTach为基础的. onTach包括从手指按下到离开手机屏幕的整个过程,在微观形式上,具体表现为action_down.action_move和action_up等过程. onTach两种主要定义形式如下: 1.在自定义控件中,常见的有重写onTouchEvent(MotionEvent ev)方法.如在开发中经常可以看到重写的onTouchEv

Android中修改设备权限的方法_Android

本文实例讲述了Android中修改设备权限的方法.分享给大家供大家参考.具体如下: 有时我们编写了驱动后,在上层程序中要访问设备,但android代码编译后的设备权限是root的,其他用户不可访问(包括system),只是就需要在android源码中将设备的权限修改下. 具体的修改位置为源码的system/core/init/devices.c文件中static struct perms_ devperms[]的定义中,如添加设备hidraw0的权限,只需添加一行: 复制代码 代码如下: { "