论文相关笔记2

二、Android安全机制分析(2011《第26次全国计算机安全学术交流会论文集》)

1.综述

2007年11月5日,Google牵头的开放手机联盟(Open Handset Alliance)发布第一款完全开源的移动设备综合平台——Android。

2008年9月22日,T-Mobile USA发布第一款基于Android平台的智能手机——T-Mobile G1。

2010年11月,业界首次公开了一种针对Android自带浏览器的攻击代码。

2.Android系统架构

(1)Android为移动设备而生,基于Linux内核,由操作系统、中间件、应用程序运行时和核心应用程序组成。

(2)Android系统架构图如下:

图中看出Android分为4层,从高到低分别为应用程序层、应用程序框架层、Android本地库及运行环境层和Linux内核层。

3.Android安全机制

在Android安全机制中,既有传统的Linux安全机制,也有Delvik虚拟机的相关安全机制。同时,Google还设计了Android特有的安全机制。如下图:

(1)POSIX User

每个应用程序(.apk)安装时,Android会赋予该应用程序唯一的ID。因此,每个应用程序都运行于不同的进程。这样,系统为每个程序建立一个沙箱,不管应用程序是被激发或调用,它始终运行在属于自己的进程中,拥有固定的权限。

(2)文件访问控制

Android中的文件访问控制来源于Linux权限控制机制。每个文件访问权限都与其拥有者、所属组号和读写执行三个向量组共同控制。文件在创建时将被赋予不同应用程序ID,从而不能被其他应用程序访问,除非它们拥有相同ID或文件被设置为全局可读写。

另一个增强安全的设计——将系统镜像挂载为只读。所有重要的可执行程序和配置文件位于固件(Firmware),只有在系统初始化中加载。所有的用户和程序数据都存储在数据分区。数据分区有别于系统分区,是在系统运行中有效的存储和加载用户数据。而且,党Android系统处于“安全模式”时,数据分区的数据不会加载,从而可以对系统进行有效的恢复管理。

(3)内存管理单元

一个现代操作系统的必要条件,是内存管理单元——对进程分配不同的虚拟内存空间的硬件设备。进程只能访问自身分配的内存空间,而不能访问其他进程所占用的内存空间。因此,进程的权限提升的可能性受到限制,因为其不能运行在系统特权级内存空间。

(4)强制类型安全

类型安全是编程语言的一个特性,它强制变量在赋值时必须符合其声明的类型,从而阻止变量被错误或不恰当地使用。

缓冲区溢出攻击通常由类型转化错误或缺少边界检查而造成。

Android使用强制类型Java语言,Java语言依靠三种机制达到类型安全:编译期间的类型检查、自动的存储管理和数组的边界检查。

(5)移动设备安全

Android安全机制中引用AAA原则——认证(Authentication)、授权(Authorization)和审计(Accounting)。

Android借鉴智能手机典型安全特性,认证和授权过程由SIM卡及其协议完成,SIM卡中通常保存使用者的密钥。

(6)应用程序权限控制

Android应用程序安全的核心机制是权限控制。应用程序必须在系统给予的权限中运行,不得访问未被赋予权限的其他任何内容。

程序安装时由包管理器赋予权限,运行时由应用程序框架层执行权限控制。Android大约有一百多种行为或服务的权限控制(打电话、发短信、访问互联网等)。

(7)组件封装

通过组件封装,应用程序的内容能被其他程序访问。

(8)签名机制

Android中每个程序都被打包成apk格式以便安装。Android要求所有应用程序都经过数字签名认证。签名文件通常是Android确认不同应用程序是否来自同源开发者的依据。

4.Android安全隐患分析

对Android移动设备的攻击进行分类:基于硬件的攻击、基于Linux内核的攻击、基于系统核心程序的攻击和基于应用程序的攻击。

(1)基于硬件的攻击

由于硬件的通用性和拥有系统最高权限,且在使用过程中难以被升级和维护,是的基于硬件的攻击危害更大。

移动设备中,SD卡和SIM卡均能脱离移动设备而单独使用。在安全机制设计中,辨识这些卡的正常使用和丢失状态下的恶意使用,从而不导致隐私泄露。

(2)基于Linux内核的攻击

Linux每年都有近百个漏洞被CVE收录。

时间: 2024-08-05 15:25:49

论文相关笔记2的相关文章

论文相关笔记4

四.Android安全机制分析及解决策略(2013<科技论坛>) 1.Android概况 (1)Android平台框架 Android是一种电子平台,用来给移动设备里的软件程序提供运行环境.由5部分构成Android的环境内容: 基于Linux2.6内核,主要提供进程管理.驱动.网络协议栈.内存管理.安全等核心系统服务: Android本地库,存在于Linux内核之上,是一套C/C++库,能够被上层各式的软件系统调用,通过Android应用程序内的Java本地调用(JNI),来合并这些库: D

论文相关笔记1

一.Android安全机制分析(2012<探索与观察>) 1.Android的安全设计原则 (1)默认情况下,在Android平台下运行的应用程序没有权限执行对其他应用程序.操作系统有害的操作. (2)Android应用程序的进程是运行在一个安全“沙箱”环境中.它不能干扰其他应用程序,除非它明确声明权限. 2.Android数据安全机制 (1)数据完整性的实现.根据Android的安全原则可知,Android中的数据在默认情况下(除系统授权外)不会被其他程序破坏.读取.修改.删除或丢失. (2

论文相关笔记5

五.Android安全机制分析与解决方案初探(2011<科学技术与工程>) 1.Android简介 (1)Android平台框架 Android是在移动设备上执行应用程序的环境. Android平台框架公由5部分组成: Android软件栈的基础是Linux2.6内核,它主要提供安全.驱动.内存管理.网络协议栈等核心系统服务. Linux内核上面是Android本地库,是一套C/C++库,被上层各种各样的系统组件调用. 在Android程序内通过Java本地调用(JNI)实现合并这些库. An

Google File System 论文阅读笔记

核心目标:Google File System是一个面向密集应用的,可伸缩的大规模分布式文件系统.GFS运行在廉价的设备上,提供给了灾难冗余的能力,为大量客户机提供了高性能的服务. 1.一系列前提 GFS的系统构建针对其自身使用的特点在传统的分布式系统的基础上又进行了一些创新,基于的前提假设主要包括以下方面: 1.由于系统由廉价的商用机构成,组件失效被认为是一种常态,系统必须可以持续监控自身的状态. 2.系统存储以大文件为主,小文件也支持,但是没有进行特别的优化处理. 3.系统的工作负载主要包含

Android在线升级相关笔记一(解析服务器版本与当前版本比较)

大概流程:Android客户端去访问服务器上的封装了版本号等信息的xml文件,对服务器上的版本和当前版本进行比较, 如果低于服务器的版本,则下载服务器上的新版软件,进行安装替换,完成升级. 一.首先用tomcat搭建服务器,用于开发测试. 下载tomcat请参考:http://blog.csdn.net/only_tan/article/details/25110625 1.在tomcat中新建自己的项目: \apache-tomcat-6.0.39\webapps 目录下新建自己的项目文件夹,

Linux 下面java编译环境相关笔记

1.如果自己编写的java文件依赖于很多第三方库(比如adir1和dir2下面都有很多jar包),加入自己的文件名叫foo.java那么可以用如下指令编译 javac -Djava.ext.dirs=dir1;dir2 foo.java 2.打包一个可执行的jar包的过程 a.写一个完整的java文件HelloWorld.java b.执行命令:javac HelloWorld.java生成HelloWorld.class c.执行命令 jar cvf HelloWorld.jar HelloW

软件安装相关笔记

程序的安装 rpm :redhat packagemanager早期 rpm is package manager现在 rpm:/var/lib/rpm数据库 rpm命名规则: 主包:bind-version-el5.i386.rpm 子包:bind-libs-version-el5.i386.rpm 格式: name-version-release.arch.rpm bind-major.minor.release.arch.rpm 主版本号:重大改进 次版本好:某个子功能发生重大改变 发行号

shell脚本相关笔记

书写一个shell脚本并使之执行的步骤: 1. 打开一个文件,以 #! bin/bash作为开头 2.在文件中写入一些正确可执行的shell语句 3.保存文件 4.更改文件权限,执行文件 一些小技巧: 如果想在系统中添加自己的命令,比如执行自己建好的shell脚本语句这样一条命令 实例: 1.创建文件cd.sh 内容为: #! bin/bash cd xxx/yyy/zzz 2.保存文件 3.执行文件./cd.sh 现在发现并没有能够打开我们想要打开的目录并进去. 原因是shell还有分父she

论文相关

MATLAB绘制函数的图形.pdf http://gc.nuaa.edu.cn/math/data/%E6%95%B0%E5%AD%A6%E5%AE%9E%E9%AA%8C/MATLAB/2-MATLAB%E7%BB%98%E5%88%B6%E5%87%BD%E6%95%B0%E7%9A%84%E5%9B%BE%E5%BD%A2.pdf 论文相关,布布扣,bubuko.com