查看: 5877|回复: 17

《Android安全机制解析与应用实践》有奖图书试读活动

[复制链接]
论坛徽章:
49
现任管理团队成员
日期:2012-10-18 17:10:46妮可·罗宾
日期:2018-04-03 13:57:49
发表于 2013-6-5 13:07 | 显示全部楼层 |阅读模式
《Android安全机制解析与应用实践》有奖图书试读活动
活动已结束,现将获奖人员公布如下:
AppleIV
chszs
lastwinner
mcyeah
纯洁的敏敏
请以上五位获奖人员尽快与ITPUB运营团队联系,我们将尽快安排快递。
      Android是Google于2007年11月5日宣布的基于Linux内核的手持终端操作系统的名称。由于该系统自身具备开放源码的特征,所以它的安全性能正在成为信息安全领域研究的一个重要课题,也对我们的现实工作有较大借鉴作用。
      Android操作系统建立于Linux操作系统之上,该平台由操作系统、中间件、用户界面和应用软件层组成。手机相对于PC而言私密性更强,一旦手机遭受到安全攻击,将带来直接的经济损失。智能手机浏览网站、下载图片、收发E-mail、接收短信,都有可能会遇到安全问题。

话题讨论:
    1、常用的Android安全机制有哪些
    2、Android安全机制在实际应用中最应该注意哪些
    3、试读图书章节后谈谈您的感想?


活动奖励:
    针对以上任意一个问题跟帖回答,我们会在讨论结束后,随机抽选5名网友赠送《Android安全机制解析与应用实践 》这本书作为奖励。

活动时间:2013-6-5——2013-6-22


图书基本信息
      Android安全机制解析与应用实践立体书.jpg
    书      名:Android安全机制解析与应用实践
    作  者:吴倩,赵晨啸,郭莹 著
    出 版 社:机械工业出版社
    ISBN:9787111420163
    出版时间:2013-04-01
    定    价:¥59.00

    购买地址:京东
    样章试读下载:http://wenku.it168.com/d_001004208.shtml

内容简介:
      本书是Android安全领域的经典著作,不仅深入剖析了原理,而且还给出了应对各种安全问题的方法,原理与实践并重。首先,结合Android系统的源代码从应用层、应用框架层、硬件抽象层、系统内核层等多角度剖析了Android的安全机制和实现原理,以及安全机制中存在的不足和潜在风险;然后详细讲解了各种常用的实用分析工具、安全风险分析方法、安全策略,以及各种常见安全问题(内核、文件系统、应用程序及无线通信)的解决方案。   
    全书共9章,分为三部分:准备篇(1~2章)介绍了Android的系统架构和安全模型;原理篇(3~5章)首先从源代码的角度深入剖析了Android系统的安全机制、系统安全性和应用安全性的实现原理,然后详细讲解了各种实用分析方法、分析工具和核心技术;实践篇(6~9章)分别讲解了如何通过修改源代码来增强Android系统的安全性、加密文件系统的原理分析和系统配置、各种实用的安全解决方案(应用权限控制、应用程序签名、静态代码分析、防火墙、存储加密、组件开发的安全要点等),以及Android的无线通信安全。


论坛徽章:
115
萤石
日期:2013-12-02 12:51:35祖母绿
日期:2013-12-02 12:51:35海蓝宝石
日期:2013-12-02 12:51:35紫水晶
日期:2013-12-02 12:51:35红宝石
日期:2013-12-02 12:51:35奥运会纪念徽章:马术
日期:2013-12-03 22:30:38奥运会纪念徽章:皮划艇激流回旋
日期:2013-12-03 22:52:41奥运会纪念徽章:铁人三项
日期:2013-12-03 22:52:41奥运会纪念徽章:棒球
日期:2013-12-03 22:52:41奥运会纪念徽章:皮划艇静水
日期:2013-12-03 22:52:41
发表于 2013-6-5 13:19 | 显示全部楼层
Android 是这样设计的,对于大多数开发者而言,使用默认设置就可以开发应用,而不需要因为安全的问题而苦恼。Android有很多安全的特性集成到了操作系统里,显著的降低了频率和安全应用问题的影响。
下边一些安全特性有助于开发出安全的应用:
  • 在每一个基础应用里,Android应用沙盒能够隔离数据和代码的执行
  • 对于常见的安全功能,Android应用层框架做了很好的实现,比如密码学,权限问题,以及安全的IPC机制。
  • 像ASLR,NX,ProPolice,safe_iop,OpenBSD dlamlloc,OpenBSD calloc和Linux mmap_min_addr对于减少常见内存管理错误起了很大的作用
  • 加密系统能够很好的保护数据不被盗取。

因此对于开发者来说,熟悉android的一系列安全机制,能够很好的利用android的特性,并且能够减少无意中引入的安全问题。
这篇文档主要是围绕常见的API和开发技术而编写,能够对开发者和应用的用户有个很好的启示。随着这些最佳实践的不断发展,我们建议在您开发应用的过程中偶尔核对一下。
写安全代码运行在虚拟机上,是非常容易学习的,许多问题并非是针对android。我们推荐你熟悉已经存在的文档,而不是企图重新处理这些东西。下面是两个比较流行的资源:
http://www.securingjava.com/toc.html
https://www.owasp.org/index.php/Java_Security_Resources
这个文档主要是集中在android的一些特殊领域或者是不同于其他的环境。对于要在其他的环境中体验VM编程的开发者来说,有两个扩展的事情,这些东西是和写android应用是有很大不同的。
一些虚拟机,比如JVM或者.net runtime,实际上是作为一个安全边界,从底层操作系统隔离了代码。在android上,DalvidVM并不是一个安全边界,而是一个在操作系统等级上实现的应用沙盒,因此Dalvid在一些应用中能够和本地代码进行交互而没有任何的安全限制。
考虑到在移动手机有限的存储,对于开发者来说模块化应用和动态加载类是非常常见的。这个时候在做的时候需要考虑两个方面的问题,一个是重用你的应用逻辑,另一个资源本地化。不要从没有被核实的资源动态类加载,比如不安全的网络资源,或者外部存储资源,由于代码能够被恶意行为所修改。
通常对于大部分应用的开发,我们鼓励开发者使用androidSDK,而不是使用本地代码。带有本地代码的应用一般都是比较复杂,不那么便携。比较可能包含一些内存泄露的错误,比如缓存溢出。
Android是搭建在linux内核之上的,如果你要使用本地代码,熟悉linux开发的安全实践是特别有用的。这篇文档太短而不能讨论到所有的这些安全实践,但是下边有个很好的资源:对于linux和unix HOWTO编程 通过
http://www.dwheeler.com/secure-programs. 可以获得
Android和大部分linux环境最大的不同在于应用沙盒。在android上所有的应用都是运行在应用沙盒上。包括使用本地代码写的。在最基本的层面上,对于熟悉linux的开发者思考这些东西,一个很好的方法就是知道每一个应用被分配一个独特的UID,这个UID带有很少的权限。在  Android Security OverView里有很详细的讨论,你应该熟悉一些应用权限即使你在使用本地编码。
存储数据使用内部文件默认情况下,被创建在内存里的文件只能被创建这个文件的应用访问。这样的保护被android所使用,对于大部分应用是很有效的。
对于IPC的文件,使用全局写或者全局读是不被鼓励的,因为它没有能力提供一些限制数据获取的特殊应用,也没有提供任何的数据格式的控制。作为一个可选择的方法,你可以使用ContentProvider提供的读写权限,能够授予动态权限在个例上。
对于敏感数据,你可以提供一些额外的保护,一些应用可以使用带有密钥的加密文件。(例如,密钥可以放在KeyStore,使用一些不存在设备上的用户密码进行保护)。虽然这不能很好的保护来自监视用户输入密码数据,但是可以提供对于没有加密的文件系统的保护。
使用外部存储对于创建在外部的文件,不如在SD卡中,属于可读写的文件。因为外部存储的文件可以被用户移除,以及能够被应用程序所修改。应用程序不应该把一些敏感的数据放在外部存储里。
对于一些不可信的数据,应用程序从外部操作数据的时候,应该对其进行输入审核(查看输入审核片段)。我们强烈推荐应用程序使用动态加载的方式,而不要存储一些可执行文件和一些类文件在外部存储里。如果一个应用程序从外部存储获取可执行文件,在动态家在之前他们应该签署并使用密码验证。

使用道具 举报

回复
论坛徽章:
764
2014年世界杯参赛球队: 加纳
日期:2014-05-20 17:24:592014年世界杯参赛球队:墨西哥
日期:2014-05-20 17:25:142014年世界杯参赛球队: 波黑
日期:2014-05-20 17:27:292014年世界杯参赛球队: 希腊
日期:2014-07-15 11:05:212014年世界杯参赛球队: 阿尔及利亚
日期:2014-07-15 11:05:212014年世界杯参赛球队: 厄瓜多尔
日期:2014-07-15 14:14:452014年世界杯参赛球队: 哥斯达黎加
日期:2014-06-16 15:29:332014年世界杯参赛球队: 智利
日期:2014-06-16 17:03:11 2014年世界杯参赛球队: 德国
日期:2014-06-16 17:10:512014年世界杯参赛球队: 葡萄牙
日期:2014-06-18 09:28:47
发表于 2013-6-5 13:19 | 显示全部楼层
支持

使用道具 举报

回复
论坛徽章:
342
ITPUB社区千里马徽章
日期:2013-06-09 10:15:34ITPUB社区12周年站庆徽章
日期:2013-08-12 09:34:36ITPUB社区12周年站庆徽章
日期:2013-08-20 11:30:11凯迪拉克
日期:2013-09-12 15:56:12ITPUB社区12周年站庆徽章
日期:2013-10-17 13:56:59一汽
日期:2013-11-14 21:55:12技术图书徽章
日期:2013-11-19 14:47:26红旗
日期:2013-11-24 12:29:47三菱
日期:2013-11-25 11:21:19保时捷
日期:2013-11-27 09:15:09
发表于 2013-6-5 13:38 | 显示全部楼层
支持

使用道具 举报

回复
招聘 : Oracle 课程老师
论坛徽章:
48
19周年集字徽章-周
日期:2019-09-03 17:47:002011数据库大会纪念章
日期:2015-04-23 10:33:192010数据库技术大会纪念徽章
日期:2015-04-23 10:33:192014年世界杯参赛球队: 俄罗斯
日期:2014-07-17 17:21:42ITPUB伯乐
日期:2014-07-17 14:45:422014年世界杯参赛球队: 希腊
日期:2014-06-20 16:01:122014年世界杯参赛球队:克罗地亚
日期:2014-06-12 16:53:56马上加薪
日期:2014-04-25 14:18:13目光如炬
日期:2014-04-21 06:00:12马上有房
日期:2014-03-31 15:10:37
发表于 2013-6-5 14:37 | 显示全部楼层
支持

使用道具 举报

回复
论坛徽章:
0
发表于 2013-6-5 14:41 | 显示全部楼层
非常值得学习

使用道具 举报

回复
论坛徽章:
0
发表于 2013-6-5 15:15 | 显示全部楼层
因为Android操作系统是建立于Linux开源操作系统上,虽然易学易用但总感觉开源的软件系统安全性不高。而且随着Android智能手机的普及如何防止用户资料被窃取,更好得保护个人隐私很有必要对其安全机制有一个基本的认识。
1、权限机制
2、组件包装
3、数字签名

使用道具 举报

回复
论坛徽章:
4555
菠菜神灯
日期:2016-10-27 15:43:20菠菜神灯
日期:2016-10-27 16:05:30菠菜神灯
日期:2016-10-27 16:05:30菠菜神灯
日期:2015-07-24 14:56:20菠菜神灯
日期:2016-10-27 16:05:30菠菜神灯
日期:2015-04-17 18:02:23菠菜神灯
日期:2015-04-17 18:02:23菠菜神灯
日期:2016-10-27 16:05:30菠菜神灯
日期:2016-10-27 16:05:30菠菜神灯
日期:2016-10-27 16:05:30
发表于 2013-6-5 15:36 | 显示全部楼层
不错,支持一个的说!

使用道具 举报

回复
论坛徽章:
9
ITPUB 11周年纪念徽章
日期:2012-10-09 18:16:00灰彻蛋
日期:2013-06-19 17:33:42保时捷
日期:2013-10-06 00:09:052014年新春福章
日期:2014-05-07 16:35:452014年新春福章
日期:2014-05-14 12:32:03青年奥林匹克运动会-现代五项
日期:2014-09-20 14:03:47马上有房
日期:2014-10-13 16:43:18优秀写手
日期:2015-03-03 06:00:14ITPUB14周年纪念章
日期:2015-10-26 17:23:44
发表于 2013-6-5 19:16 | 显示全部楼层
不懂安卓的飘过~

使用道具 举报

回复
论坛徽章:
63
2010广州亚运会纪念徽章:台球
日期:2010-10-18 12:43:48茶鸡蛋
日期:2013-01-09 10:59:002013年新春福章
日期:2013-02-25 14:51:24奥运会纪念徽章:帆船
日期:2013-04-02 17:07:052013年新春福章
日期:2013-04-08 17:42:48奥运纪念徽章
日期:2013-07-18 13:55:12优秀写手
日期:2013-12-18 09:29:10马上有车
日期:2014-03-20 16:13:24马上有房
日期:2014-03-20 16:14:11马上有钱
日期:2014-03-20 16:14:11
发表于 2013-6-5 21:02 | 显示全部楼层
1、常用的Android安全机制有哪些?
Android操作系统可以看作是Linux的衍生版本,它在保持开放性的同时,还提供强健的安全保障。Android系统的安全机制贯穿了Android框架的由下到上的三个层面,包括Linux内核层、系统运行库层、应用程序框架层。这三层的所有层面都有Android安全机制的身影。Android安全机制还渗透到了应用程序组件等功能模块的细节,力求保护用户信息、通信设备及无线网络安全。
Android内核层对Linux内核层做了增强,提升了内存管理、进程间通信等方面的安全性。从技术架构角度来看,Android安全模型基于Linux操作系统内核的安全性实现,通过进程沙箱机制隔离进程资源,并且辅以独特的内存管理技术与安全高效的进程间通信机制,以适应嵌入式移动终端处理器性能与内存容量的限制。
在应用层面,使用显式定义且经用户授权的应用权限控制机制等,系统化地规范并强制各类应用程序的行为准则与权限许可;引入应用程序签名机制定义应用程序之间的信任关系与资源共享的权限。
Android应用程序基于Android特有的应用框架,由Java语言编写,运行于Dalvik虚拟机。同时,部分底层应用仍可由C/C++语言设计实现,以原生库形式直接运行于操作系统的用户空间。应用程序及其Dalvik虚拟机运行环境都被限制在“进程沙箱”的隔离环境下,自行拥有专用的文件系统区域,独享私有数据。
Android 安全模型主要提供以下几种安全机制:
1)进程沙箱隔离机制
2)应用程序签名机制
3)权限声明机制
4)访问控制机制
5)进程通信机制
6)内存管理机制

2、Android安全机制在实际应用中最应该注意哪些?
在实际开发Android应用的过程中 ,要注意以下几点:
1)SharedUserID为具备信任关系的应用程序提供了共享资源的机制,不要滥用共享资源的机制。
2)要限制应用程序的功能,将其置于“沙箱”内,实现APK之间的隔离。
3)Android在Binder进程通信机制中采用接口描述语言AIDL实现,要正确使用它。
4)限制你开发的APK的功能。比如你开发一款新闻应用,就不要写成系统服务,常驻内存。
5)注意应用是否滥用权限。比如你开发一款新闻应用,就不需要访问手机通信录、短信、摄像头等。

3、试读图书章节后谈谈您的感想?
很喜欢这本书。试读章节提供了本书的前3章,相信读完本书,能够加深对Android系统的认识,尤其是正确的使用Android的安全机制,写出健康、健壮的应用程序。

使用道具 举报

回复

您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

TOP技术积分榜 社区积分榜 徽章 团队 统计 知识索引树 积分竞拍 文本模式 帮助
  ITPUB首页 | ITPUB论坛 | 数据库技术 | 企业信息化 | 开发技术 | 微软技术 | 软件工程与项目管理 | IBM技术园地 | 行业纵向讨论 | IT招聘 | IT文档
  ChinaUnix | ChinaUnix博客 | ChinaUnix论坛
CopyRight 1999-2011 itpub.net All Right Reserved. 北京盛拓优讯信息技术有限公司版权所有 联系我们 
京ICP备09055130号-4  北京市公安局海淀分局网监中心备案编号:11010802021510 广播电视节目制作经营许可证:编号(京)字第1149号
  
快速回复 返回顶部 返回列表