黑客攻防从入门到精通手机安全篇全新升级版.pdf
http://www.100md.com
2020年2月14日
![]() |
| 第1页 |
![]() |
| 第4页 |
![]() |
| 第13页 |
![]() |
| 第29页 |
![]() |
| 第32页 |
![]() |
| 第136页 |
参见附件(41403KB,601页)。
黑客攻防从入门到精通,这是一本针对智能手机写的安全,全书一共有14个章节内容,为读者详细的介绍了智能手机的防攻击与安全防范。

黑客攻防从入门到精通简介
全书主要内容有14章,分别为认识黑客与智能手机攻防、智能手机操作系统——iOS、智能手机操作系统—— Android、智能手机病毒与木马攻防、无线通信技术之蓝牙、无线通信技术之Wi-Fi、DOS攻击、手机游戏安全攻防、QQ zhang号及电子邮件攻防、智能手机加密与性能优化、移动追踪定位与远程控制技术、保护移动支付安全、揭秘针对智能手机的攻击方式与安全防范、平板电脑的攻防技巧。
黑客攻防从入门到精通作者
本书由高翔编著,胡华、闫珊珊、王栋、宗立波、马琳、赵玉萍、栾铭斌等老师也参加了本书部分内容的编写和统稿工作。
黑客攻防从入门到精通主目录
第1章 认识黑客与智能手机攻防
第2章 智能手机操作系统—iOS
第3章 智能手机操作系统——Android
第4章 智能手机病毒与木马攻防
第5章 无线通信技术之蓝牙
第6章 无线通信技术之Wi-Fi
第7章 DOS攻击
第8章 手机游戏安全攻防
第9章 QQ账号及电子邮件攻防
第10章 智能手机加密与性能优化
第11章 移动追踪定位与远程控制技术
第12章 保护移动支付安全
第13章 揭秘针对智能手机的攻击方式与安全防范
第14章 平板电脑的攻防技巧
黑客攻防从入门到精通精彩内容
在学习DOS攻击原理之前,我们需要了解客户端与服务 器之间通过TCP(传输控制协议)建立连接的过程。TCP连 接的建立需要经过三次连接信息的传输,因此我们也称TCP 连接的建立过程为三次握手过程(Three-way hand shake) 。 下面我们来简单介绍一下这三次握手的过程。
第一次握手:连接建立开始,客户端向服务器发送SYN 包等待服务器确认。
第二次握手:服务器成功收到客户端发来的SYN包后, 必须向客户端回复一个确认SYN 包的确认包,即ACK包;同时自己也发送一个SYN包给客户 端。第二次握手服务器要向客户端发送的消息包为SYN-ACK包。
第三次握手:客户端成功收到服务器的SYN-ACK包后,要向服务器发送确认包ACK,确 认服务器发送的SYN-ACK包已经成功接收。第三次握手TCP连接也就完成了。
在三次握手的过程中,还有一些重要的概念需要大家了解。
半连接:服务器收到客户端发来的SYN包而还未收到ACK包时的连接状态称为半连接, 即尚未完全完成三次握手的TCP连接。
半连接队列:在三次握手协议中,服务器维护一个半连接队列,当同时有多个客户端向 服务器发送连接请求时,该队列为每个客户端的SYN包开设一个条目。队列中的这些条目表 明服务器收到SYN包后已经向客户发出SYN-ACK包,正在等待客户的ACK包来确认已经收 到SYN-ACK包。
Backlog参数:表示半连接队列的大容纳数目。
SYN-ACK重传次数:服务器发送完SYN-ACK包,在一段时间内如果未收到客户确认包,服务器会进行首次重传。重传SYN-ACK包后服务器等待一段时间仍未收到客户确认包,就会 进行第二次重传。重传间隔的时间不一定是相同的,重传的次数也并不是无限的,但是有 大重传次数的限制。如果重传次数超过大重传次数,则服务器将该条目从半连接队列中删除,本次连接失败。 半连接存活时间:是指服务器从收到SYN包到确认这个报文无效的长时间,也是半连接队列条目存活的长时间。该时间值是所有重传请求包长等待时间的总和。
黑客可以利用TCP协议三次握手过程中存在的缺陷进行DOS攻击。举一个简单的例子, 黑客想要攻击一台服务器,可以先伪造大量不存在的IP地址,然后利用这些不存在的IP地址 向服务器发送SYN包请求建立TCP连接。服务器在接收到SYN包后回复一个SYN-ACK包, 这时连接进入半连接状态,同时服务器在半连接队列中为半连接开设一个条目,等待客户端 回复ACK包。由于黑客使用的IP地址是伪造的,所以服务器收不到客户端发来的ACK包来 确认已经收到SYN-ACK包,等到一段时间后服务器会再次向客户端发送SYN-ACK包,这时 半连接队列中会新增一个条目。由于半连接队列中每个条目都有半连接存活时间,所以重传 SYN-ACK包后前面加入队列的条目并不会立刻失效,还会在队列中占用资源。服务器因为收 不到ACK包所以会一直重传下去,直到达到SYN-ACK重传次数。服务器不断地重传,大量伪 造的IP地址不停地向服务器发送SYN包请求建立连接,半连接队列的Backlog参数很快达到 上限。当正常的客户端向服务器发送SYN包请求建立连接的时候,服务器因资源被消耗用尽, 无法与正常的客户端建立TCP连接,继而不能提供服务。这样,一个DOS攻击就完成了。
黑客攻防从入门到精通手机安全篇截图


内容提要
本书由浅入深、图文并茂地再现了手机安全方面的相关知识。
全书主要内容有14章,分别为认识黑客与智能手机攻防、智能手机
操作系统——iOS、智能手机操作系统——Android、智能手机病毒与木
马攻防、无线通信技术之蓝牙、无线通信技术之Wi-Fi、DOS攻击、手
机游戏安全攻防、QQ账号及电子邮件攻防、智能手机加密与性能优
化、移动追踪定位与远程控制技术、保护移动支付安全、揭秘针对智能
手机 的攻击方式与安全防范、平板电脑的攻防技巧。
本书语言简洁、流畅,内容丰富、全面,适用于一般智能手机用
户、对移动设备感兴趣的人员、对移动设备维护的人员阅读和学习,也
可以作为各大计算机培训机构的辅导用书。图书在版编目(CIP)数据
黑客攻防从入门到精通.手机安全篇:全新升级版高翔编著.—北
京:北京大学出版社,2016.12
ISBN 978-7-301-27735-5
Ⅰ.①黑… Ⅱ.①高… Ⅲ.①黑客—网络防御②移动电话机—安全
技术 Ⅳ.①TP393.081②TN929.53
中国版本图书馆CIP数据核字(2016)第269933号
书 名:黑客攻防从入门到精通(手机安全篇·全新升级版)
HEIKE GONGFANG CONG RUMEN DAO JINGTONG
著作责任者: 明月工作室 高翔 编著
责任编辑: 尹 毅
标准书号: ISBN 978-7-301-27735-5
出版发行: 北京大学出版社
地 址: 北京市海淀区成府路205号 100871
网 址: http:www.pup.cn
电子信箱: pup7@pup.cn电 话: 邮购部62752015 发行部62750672 编辑部62580653
印 刷 者:
经 销 者: 新华书店
787毫米×1092毫米 16开本 21.5印张 462千字
2016年12月第1版 2016年12月第1次印刷
印 数: 1-4000册
定 价: 49.00元
未经许可,不得以任何方式复制或抄袭本书之部分或全部内容。
版权所有,侵权必究
举报电话:010-62752024 电子信箱:fd@pup.pku.edu.cn
图书如有印装质量问题,请与出版部联系,电话:010-62756370前言·全新升级版
INTRODUCTION
从2003年起,中国互联网逐渐找到了适合国情的商业模式和发展道
路,互联网应用呈现多元化局面,电子商务、网络游戏、视频网站、社
交娱乐等百花齐放。计算机技术及通信技术的进一步发展,持续推动中
国互联网用户新一轮的高速增长,到2008年已经达到2.53亿户,首次大
幅度超过美国,跃居世界首位。
从2009年开始,移动互联网兴起;互联网与移动互联网共同营造了
当前双网互联的盛世。网络已经成为个人生活与工作中获取信息的重要
手段,网络购物也已经成为民众重要的消费渠道。当前,“互联网+”的
战略布局与工业4.0的深度发展,使得国家经济发展、民众工作生活都
与网络安全休戚相关,因此,一个安全的网络环境是必不可少的。
当前最大的一个问题是广大用户对网络相关软硬件技术的掌握程度
远远不够,这就为不法分子提供了大量的可乘之机。这些不法分子借助
于计算机网络滋生的各种网络病毒、木马、流氓软件、间谍软件,给广
大网络用户的个人信息及财产带来了非常大的威胁。
为提升广大民众对于计算机网络安全知识的掌握程度,做好个人信
息财产安全的防护,我们策划了这套“黑客攻防从入门到精通”丛书,本
书为其中的《黑客攻防从入门到精通(手机安全篇·全新升级版)》分
册。
丛书书目黑客攻防从入门到精通(全新升级版)
黑客攻防从入门到精通(Web技术实战篇)
黑客攻防从入门到精通(Web脚本编程篇·全新升级版)
黑客攻防从入门到精通(黑客与反黑工具篇·全新升级版)
黑客攻防从入门到精通(加密与解密篇)
黑客攻防从入门到精通(手机安全篇·全新升级版)
黑客攻防从入门到精通(应用大全篇·全新升级版)
黑客攻防从入门到精通(命令实战篇·全新升级版)
黑客攻防从入门到精通(社会工程学篇)
本书特点
内容全面:本书首先介绍了黑客的相关知识和移动设备中各主流操
作系统的特点,为全书的学习奠定了一定的基础。后面的章节中以
Android和iOS两大操作系统为主线分别介绍了无线通信技术、木马
和病毒、移动跟踪定位等知识。本书在攻防实验的操作中涵盖了移
动攻防所需的各种攻防工具,适合各个层面、不同基础的读者阅
读。
与时俱进:本书主要适用于Android和iOS两大操作系统,并且包含
了Android6.0及iOS9版本的相关知识。虽然手机操作系统版本升级
较快,但本书中的知识适用于手机各种版本的操作系统。任务驱动:本书理论和实例相结合,在介绍完相关知识点以后,即
以案例的形式对该知识点进行介绍,从而加深读者对该知识点的理
解。
适合阅读:本书摒弃了大量枯燥文字叙述的编写方式,采用图文并
茂的方式进行编排,以大量的插图进行讲解,可以让读者的学习过
程更加轻松。
深入浅出:本书内容从零起步,步步深入,通俗易懂,使初学者和
具有一定基础的用户都能逐步提高。
读者对象
普通智能手机用户。
移动攻防爱好者。
移动安全研究人员。
移动攻防零基础读者。
移动设备维修人员。
无线通信爱好者。
移动应用开发人员。
大中专院校相关学生。
本书结构及内容
本书一共有14章,内容由浅入深,循序渐进,前后衔接紧密,逻辑
性较强。
第1章 认识黑客与智能手机攻防第2章 智能手机操作系统—iOS
第3章 智能手机操作系统—Android
第4章 智能手机病毒与木马攻防
第5章 无线通信技术之蓝牙
第6章 无线通信技术之Wi-Fi
第7章 DOS攻击
第8章 手机游戏安全攻防
第9章 QQ账号及电子邮件攻防
第10章 智能手机加密与性能优化
第11章 移动追踪定位与远程控制技术
第12章 保护移动支付安全
第13章 揭秘针对智能手机的攻击方式与安全防范
第14章 平板电脑的攻防技巧
超值赠送资源
1.黑客攻防全能视频
为了读者能全面地了解黑客方面的知识从而有效地防御黑客的不法入侵行为,本书特赠送全能教学视频,视频内容包括社会工程学、黑客
攻防入门、信息的扫描与嗅探、木马与病毒的防范、系统漏洞防范、远
程控制术、加密与解密、数据备份与恢复、移动网络安全等内容。
2.其他赠送资源
Windows系统安全与维护手册
计算机硬件管理超级手册
Windows文件管理高级手册
(140个)Windows系统常用快捷键大全
(157个)Linux基础命令手册
(136个)Linux系统管理与维护命令手册
(58个)Linux网络与服务器命令手册
黑客攻防命令手册
我们已将赠送内容上传百度网盘,在浏览器中输入下载链接,打开
链接后,在如下图所示的文本框中输入提取码便可下载赠送资源。下载
链接: http:pan.baidu.coms1eSfvxDK,提取码:ez6a。
提示
读者也可加入QQ群,在群文件中下载“资源下载地址列表”文
档,直接复制链接和密码,下载多媒体视频。(注意:我们会在群文
件中共享一些赠送资源,如百度网盘链接失效,请加入QQ群下载资
源。) 后续服务
本书由高翔编著,胡华、闫珊珊、王栋、宗立波、马琳、赵玉萍、栾铭斌等老师也参加了本书部分内容的编写和统稿工作,在此一并表示
感谢!在本书的编写过程中,我们竭尽所能地为您呈现最好、最全的实
用功能,但仍难免有疏漏和不妥之处,敬请广大读者不吝指正。若您在
学习过程中产生疑问或有任何建议,可以通过E-mail或QQ群与我们联
系。
投稿信箱:pup7@pup.cn
读者信箱:2751801073@qq.com
读者交流群:218192911(办公之家)、99839857 郑重声明
本丛书对大量计算机及移动端的攻击行为进行了曝光,可帮广大读
者做好安全防范工作。
请本丛书广大读者注意:据国家有关法律规定,任何利用黑客技术
攻击他人的行为都是违法的!目 录
CONTENTS
前言·全新升级版
第1章 认识黑客与智能手机攻防
1.1 丰富多彩的黑客文化
1.1.1 黑客的由来
1.1.2 手机黑客的由来
1.1.3 黑客守则
1.1.4 黑客常用攻击方式
1.2 黑客必备技能
1.2.1 英语阅读能力
1.2.2 使用黑客工具
1.2.3 具备编程技能
1.2.4 熟悉网络协议和工作原理
1.3 智能手机攻防基础
1.3.1 智能手机主流操作系统
1.3.2 智能手机漏洞简介
技巧与问答
第2章 智能手机操作系统——iOS
2.1 iOS操作系统的发展历程
2.1.1 iOS的发展回顾
2.1.2 iOS最新版本
2.1.3 iOS用户界面2.2 从底层剖析iOS
2.2.1 iOS的系统架构
2.2.2 iOS开发语言
2.3 刷新iOS操作系统——刷机
2.3.1 什么是刷机
2.3.2 iPhone刷机教程
2.4 iOS系统的数据备份与恢复
2.4.1 使用iCloud备份和恢复用户数据
2.4.2 使用iTunes备份和还原用户数据
2.4.3 使用91助手备份和还原用户数据
2.5 越狱让iOS更加完美
2.5.1 认识越狱
2.5.2 越狱的利与弊
2.6 苹果攻击案例
2.7 被用于iOS操作系统的攻击方式与防范技巧
2.7.1 Ikee攻击与防范技巧
2.7.2 中间人攻击与防范技巧
2.7.3 恶意应用程序攻击与防范
2.7.4 利用应用程序漏洞攻击与防范
技巧与问答
第3章 智能手机操作系统——Android
3.1 Android操作系统的发展历程
3.1.1 Android操作系统的发展回顾
3.1.2 Android 最新版本
3.1.3 Android 最新版本新特性
3.2 分层认识Android系统
3.2.1 认识系统分层3.2.2 系统架构分层的优势
3.2.3 Android操作系统的基本架构
3.2.4 应用程序层
3.2.5 应用程序框架层
3.2.6 系统运行库层
3.2.7 Linux核心层
3.3 Android安全模型
3.4 Android组件的基本功能
3.4.1 活动
3.4.2 服务
3.4.3 广播接收器
3.4.4 内容提供者
3.5 使用备份保护数据
3.5.1 手动备份
3.5.2 利用91助手备份
3.6 Android系统刷机
3.6.1 Android系统刷机常识
3.6.2 Android系统刷机教程
3.7 Android 系统获取Root权限
3.7.1 Root原理简介
3.7.2 获取Root权限的优点与缺点
3.7.3 获取Root权限的方法
3.7.4 避免一键Root恶意软件的危害
3.8 认识Android模拟器
3.9 Android平台常见恶意软件及病毒的分类
3.9.1 ROM内置类恶意软件病毒
3.9.2 破坏类恶意软件病毒3.9.3 吸费类恶意软件病毒
3.9.4 窃取隐私类恶意软件病毒
3.9.5 伪装类恶意软件病毒
3.9.6 云更新类恶意软件病毒
3.9.7 诱骗类恶意软件病毒
技巧与问答
第4章 智能手机病毒与木马攻防
4.1 认识手机病毒
4.1.1 手机病毒术语
4.1.2 手机病毒的组成
4.1.3 手机病毒的特点
4.2 认识手机木马
4.2.1 手机木马的组成
4.2.2 手机木马的分类
4.2.3 手机木马攻击的原理
4.3 常见的手机病毒
4.3.1 常见手机病毒之一——短信病毒
4.3.2 常见手机病毒之二——钓鱼王病毒
4.3.3 常见手机病毒之三——手机骷髅病毒
4.3.4 常见手机病毒之四——同花顺大盗
4.3.5 常见手机病毒之五——手机僵尸病毒
4.3.6 常见手机病毒之六——卡比尔病毒
4.3.7 常见手机病毒之七——老千大富翁
4.3.8 常见手机病毒之八——QQ盗号手
4.4 手机病毒与木马的危害和防范
4.5 网络蠕虫的危害及防范
4.5.1 认识网络蠕虫4.5.2 网络蠕虫的危害
4.5.3 网络蠕虫的防范
4.6 杀毒软件的使用
4.6.1 腾讯手机管家
4.6.2 百度手机卫士
4.6.3 360手机卫士
技巧与问答
第5章 无线通信技术之蓝牙
5.1 蓝牙基础知识简介
5.1.1 认识蓝牙
5.1.2 蓝牙的起源与发展
5.1.3 蓝牙的工作原理
5.1.4 蓝牙的体系结构
5.1.5 蓝牙的相关术语
5.1.6 蓝牙4.2的新特征
5.1.7 蓝牙4.2的发展前景
5.2 蓝牙设备的配对
5.2.1 启动蓝牙适配器
5.2.2 搜索周围开启蓝牙功能的设备
5.2.3 使用蓝牙进行设备间的配对
5.2.4 两台设备传递文件测试效果
5.3 蓝牙通信技术应用实例
5.3.1 让家居生活更便捷
5.3.2 让驾驶更安全
5.3.3 增强多媒体系统功能
5.3.4 提高工作效率
5.3.5 丰富娱乐生活5.4 蓝牙攻击方式与防范
5.4.1 典型的蓝牙攻击
5.4.2 修改蓝牙设备地址
5.4.3 利用蓝牙进行DOS攻击
5.4.4 蓝牙的安全防护
技巧与问答
第6章 无线通信技术之Wi-Fi
6.1 Wi-Fi基础知识简介
6.1.1 Wi-Fi的通信原理
6.1.2 Wi-Fi的主要功能
6.1.3 Wi-Fi的优势
6.1.4 Wi-Fi与蓝牙互补
6.1.5 Wi-Fi无线网络的建立
6.2 无线网络的安全加密
6.2.1 使用WEP加密
6.2.2 使用WPA-PSK安全加密算法加密
6.2.3 禁用SSID广播
6.2.4 基于MAC地址的媒体访问控制
6.3 智能手机Wi-Fi连接方式
6.3.1 Android手机Wi-Fi连接
6.3.2 iPhone手机Wi-Fi连接
6.4 Wi-Fi技术的应用
6.4.1 网络媒体
6.4.2 日常休闲
6.4.3 掌上设备
6.4.4 客运列车
6.5 无线路由器设置教程6.5.1 认识无线路由器
6.5.2 无线路由器基础设置
6.5.3 无线加密
6.5.4 禁用DHCP功能
6.5.5 修改Wi-Fi连接密码
6.5.6 关闭SSID广播
6.5.7 设置IP地址和MAC地址的绑定
6.6 使用软件破解Wi-Fi密码的方法及防范措施
6.6.1 手机版“Wi-Fi万能钥匙”破解Wi-Fi密码
6.6.2 PC版“Wi-Fi万能钥匙”破解Wi-Fi密码
6.6.3 防止“Wi-Fi万能钥匙”破解密码
6.7 Wi-Fi攻击方式
6.7.1 Wi-Fi攻击之一——钓鱼陷阱
6.7.2 Wi-Fi攻击之二——陷阱接入点
6.7.3 Wi-Fi攻击之三——攻击无线路由器
6.7.4 Wi-Fi攻击之四——内网监听
6.7.5 Wi-Fi攻击之五——劫机
6.8 Wi-Fi安全防范措施
技巧与问答
第7章 DOS攻击
7.1 DOS攻击概述
7.1.1 什么是DOS攻击
7.1.2 DOS攻击原理
7.2 DOS攻击方式的分类
7.3 DOS攻击方式举例
7.3.1 DOS攻击之一——SYN 泛洪攻击
7.3.2 SYN Cookie Firewall防御SYN 泛洪攻击7.3.3 DOS攻击之二——IP欺骗攻击
7.3.4 DOS攻击之三——UDP洪水攻击
7.3.5 DOS攻击之四——ping洪流攻击
7.3.6 DOS攻击之五——teardrop攻击
7.3.7 DOS攻击之六——Land攻击
7.3.8 DOS攻击之七——Smurf攻击
7.3.9 DOS攻击之八——Fraggle攻击
7.4 DDOS攻击揭密
7.4.1 什么是DDOS攻击
7.4.2 DDOS攻击原理
7.4.3 DDOS攻击与DOS攻击的区别
7.5 揭密对手机进行DOS攻击的方式
7.5.1 手机DOS攻击之一——蓝牙泛洪攻击
7.5.2 手机DOS攻击之二——蓝牙劫持攻击
7.5.3 手机DOS攻击之三——非正常的OBEX信息攻击
7.5.4 手机DOS攻击之四——非正常的MIDI文件攻击
7.5.5 防御DOS攻击的措施
技巧与问答
第8章 手机游戏安全攻防
8.1 手机游戏存在的风险
8.1.1 风险一——手机游戏病毒
8.1.2 风险二——手机账号密码采用明文传输
8.1.3 风险三——游戏权限滥用
8.1.4 风险四——手机游戏二次打包
8.2 手机游戏正确的下载途径
8.2.1 通过官网下载
8.2.2 第三方软件下载8.3 手机游戏必备常识
8.3.1 收费游戏的计费原理及漏洞
8.3.2 手机游戏卡顿原因
8.3.3 手机游戏加速技巧
8.3.4 将手机游戏移动到内存卡
8.3.5 卸载后及时删除手机数据包
8.4 手机游戏安全防护措施
技巧与问答
第9章 QQ账号及电子邮件攻防
9.1 QQ黑客工具的使用和防范
9.1.1 “啊拉QQ大盗”的使用和防范
9.1.2 “雨点QQ密码查看器”的使用与防范
9.1.3 “QQExplorer”的使用与防范
9.2 增强QQ安全性的方法
9.2.1 方法一——定期更换密码
9.2.2 方法二——申请QQ密保
9.2.3 方法三——加密聊天记录
9.3 手机电子邮件攻击与防范
9.3.1 电子邮件攻击简介
9.3.2 电子邮件系统的工作原理
9.3.3 电子邮件攻击方式
9.4 电子邮件攻击防范措施
9.4.1 根据IP地址判断邮件来源
9.4.2 软件过滤垃圾邮件
9.4.3 避免使用公共Wi-Fi发送邮件
9.4.4 谨慎对待陌生连接和附件
9.4.5 通过日常行为保护电子邮件9.5 利用密码监听器监听邮箱密码
9.5.1 密码监听器的使用方法
9.5.2 查找监听者
9.5.3 防止网络监听
技巧与问答
第10章 智能手机加密与性能优化
10.1 设置手机锁屏密码
10.1.1 密码锁屏设置
10.1.2 图案锁屏设置
10.1.3 PIN锁屏设置
10.2 个人隐私加密
10.3 智能手机省电小常识
10.3.1 常识一——调整屏幕显示
10.3.2 常识二——优化系统
10.3.3 常识三——管理后台程序
10.3.4 常识四——使用省电程序
10.3.5 常识五——合理使用飞行模式
10.3.6 常识六——关闭手机触屏音效和振动
10.4 智能手机连接互联网
10.4.1 Android智能手机网络接入点设置
10.4.2 iPhone智能手机网络接入点设置
10.5 智能手机优化软件
10.5.1 360手机卫士
10.5.2 腾讯手机管家
10.5.3 百度安全卫士
技巧与问答
第11章 移动追踪定位与远程控制技术11.1 移动定位基础知识简介
11.1.1 移动定位的分类
11.1.2 移动定位技术的现状
11.2 常用的定位技术
11.2.1 GPS定位
11.2.2 A-GPS定位
11.2.3 基站定位
11.2.4 Wi-Fi定位
11.2.5 RFID、二维码定位
11.3 移动定位的应用
11.3.1 应用一——紧急救援和求助
11.3.2 应用二——汽车导航、车辆追踪、舰队追踪
11.3.3 应用三——基于位置和事件的计费系统
11.3.4 应用四——移动性管理及系统优化设计
11.3.5 应用五——移动黄页查询、防止手机盗打
11.3.6 应用六——通过定位技术追踪手机
11.4 手机远程控制计算机
11.4.1 Android手机远程控制计算机
11.4.2 iPhone手机远程控制计算机
11.5 手机位置追踪
11.5.1 Android手机位置追踪
11.5.2 iPhone手机位置追踪
技巧与问答
第12章 保护移动支付安全
12.1 移动支付简介
12.1.1 什么是移动支付
12.1.2 移动支付的特点12.1.3 移动支付的模式
12.2 移动支付存在的风险
12.3 加强移动支付安全
12.3.1 加强手机银行安全
12.3.2 加强个人网上银行安全
12.4 警惕钓鱼网站
12.5 支付宝安全性能提升
12.5.1 加强支付宝PC端安全防护
12.5.2 加强支付宝手机端安全
12.6 手机安全软件的使用
12.6.1 开启腾讯手机管家安全支付
12.6.2 开启360手机卫士支付保护
技巧与问答
第13章 揭秘针对智能手机的攻击方式与安全防范
13.1 智能手机的攻击方式
13.1.1 方式一——通过下载软件攻击
13.1.2 方式二——利用红外或蓝牙攻击
13.1.3 方式三——通过发送短信攻击
13.1.4 方式四——利用系统漏洞攻击
13.1.5 方式五——制造手机炸弹攻击
13.2 智能手机防范攻击技巧
13.2.1 技巧一——关闭蓝牙功能
13.2.2 技巧二——保证手机软件下载的安全性
13.2.3 技巧三——不轻信怪异短信,不接乱码电话
13.2.4 技巧四——安装手机卫士软件
13.2.5 技巧五——对手机数据定期备份
技巧与问答第14章 平板电脑的攻防技巧
14.1 认识平板电脑
14.1.1 平板电脑操作系统
14.1.2 平板电脑的优缺点
14.2 针对平板电脑的攻击方式
14.3 平板电脑的防范技巧
14.3.1 及时更新平板电脑操作系统
14.3.2 锁定SIM卡
14.3.3 屏幕锁定
14.3.4 安装平板电脑安全软件
技巧与问答第1章 认识黑客与智能手机攻防
随着科技的进步,人们对移动终端变得越来越依赖。移动终端对我
们来说是一把双刃剑,它对我们有利,既提高了我们的工作效率,又改
变了我们的生活方式;同时也存在着弊端,即具有自身的漏洞,可以被
黑客利用,泄露我们的隐私。因此,我们应当具备一些基本的移动终端
攻防知识。本章简要介绍了黑客与智能手机的一些基础知识,为读者全
面学习移动终端的攻防技术做了铺垫。1.1 丰富多彩的黑客文化
我们在网络世界中看不到黑客,但他们却真实存在着。黑客们都会
刻意隐藏自己的行踪,以免暴露身份。同时黑客也是网络世界中的技术
高手,他们熟悉网络并且能够利用网络达到自己的目的。在互联网不断
的发展过程中,黑客这一群体也形成了自己独特的文化。
1.1.1 黑客的由来
在《牛津英语词典》中,“Hacker”具有“利用自己在计算机方面的
技术,设法在未经授权的情况下访问计算机文件或网络的人”的释义。
最初曾指热心于计算机技术、精通各种编程语言和各类操作系统、水平
高超的计算机专家,尤其是程序设计人员,后逐渐区分为白帽、灰帽、黑帽等。其中,黑帽(black hat)实际就是cracker。到了今天,黑客一
词已被用于泛指那些专门利用计算机病毒搞破坏的人。
最早的计算机于1946年在宾夕法尼亚大学诞生,而最早的黑客出现于麻省理工学院,另外贝尔实验室也有。最初的黑客一般都是一些高级
的技术人员,他们热衷于挑战、崇尚自由并主张信息的共享。计算机安
全黑客会使用密码破解(password cracking)或穷举法(brute force
attack)。对一个黑客来说,学会编程是必需的,计算机可以说就是为
了编程而设计的,运行程序是计算机的唯一功能。运行程序其实就是运
算,要具备离散数学、线性代数、微积分等方面的相关知识。所以,真
正的一流黑客并非整天不学无术,而是会热衷于追求某种特殊嗜好,如
研究电话、无线电或计算机。现在黑客一词通常被定义为:专门入侵他
人计算机系统进行不法行为的计算机高手。
1.1.2 手机黑客的由来
智能手机一旦联网就为黑客的攻击提供了条件,因此一些专注于攻
击智能手机的黑客便产生了。他们根据智能手机自身的特点来寻找可以
被用来攻击的漏洞,如利用无线通信进行攻击、制造病毒或木马程序、发送垃圾短信等。总之,手机黑客是随着智能手机联网而发展起来的。
1.1.3 黑客守则
① 不要恶意破坏任何系统,否则只会给你带来麻烦。恶意破坏他
人的软件将承担法律责任,如果你只是使用计算机,那仅为非法使用!
注意:千万不要破坏别人的软件或资料!
② 不要修改任何系统档案,如果你是为了要进入系统而修改它,请在达到目的后将它恢复原状。③ 不要轻易将你要hack的站台告诉你不信任的朋友。
④ 不要在BBS上谈论你hack的任何事情。
⑤ 在post文章的时候不要使用真名。
⑥ 正在入侵的时候,不要随意离开你的计算机。
⑦ 不要在电话中谈论你作为黑客的任何事情。
⑧ 将你的笔记放在安全的地方。
⑨ 要想成为黑客,就要学好编程和数学以及一些TCPIP协议、系
统原理、编译原理等计算机知识!
⑩ 已侵入计算机中的账号不得清除或修改。
· 不得修改系统档案,如果是为了隐藏自己的侵入而做的修改则
不在此限,但仍须维持原来系统的安全性,不得因得到系统的控制权而
将门户大开!
· 不要将你已破解的账号分享于你的朋友。
· 不要侵入或破坏政府机关的主机。
· 不会编程的黑客不是好黑客。
· 黑客世界的高手们不同于“盗取”。
· 黑客并不是一味地攻击用户,而是通过攻击来研究漏洞,从而
大大提高系统的安全性。1.1.4 黑客常用攻击方式
1.获取口令
获取口令的方式一般分为以下两种。
① 黑客通过监听的方式获取其所在网段的所有用户账号和口令,对局域网的安全威胁巨大。
② 在获取用户名后利用口令破解软件强行破解用户口令。这种方
法不受网段限制,但是破解所需时间以及是否能够破解成功都不确定。
2.利用木马程序
黑客通常会把木马程序伪装成一个正常的程序诱惑用户下载,当用
户运行该程序时木马程序就会悄悄地执行,将用户IP及预先设定的端口
发送给黑客。黑客就可以借助于木马程序打开的后门进入用户的计算
机,从而达到控制的目的。3.WWW的欺骗技术
当我们在浏览网页时会使用到WWW服务,且注意力一般会在网页
内容上,而黑客往往会在我们最容易忽略的地方做一些改动,以达到欺
骗的目的。例如,改写网页的URL,将URL指向黑客预先准备好的服务
器,这样用户所有的请求信息都将发到黑客的服务器,从而使得黑客轻
而易举地获得自己想要得到的信息。
4.电子邮件攻击
电子邮件攻击主要表现为两种方式。
① 邮箱炸弹,也称为电子邮件轰炸或电子邮件“滚雪球”,通过伪造
IP地址和电子邮件地址向同一信箱发送大量内容相同的垃圾邮件,将目
标邮箱挤爆炸;情况严重时可能会危及电子邮件服务器操作系统,使其
不能正常工作。
② 电子邮件欺骗,黑客使用和管理员相同的邮件地址伪装成管理
员,给用户发送邮件要求用户修改口令;或在正常的附件中加载病毒或
其他木马程序,以使用户受骗。
5.通过一个节点来攻击其他节点
黑客在控制一台主机后,往往会以此作为跳板攻击其他主机。例如
可以通过监听的方式获取被控制主机局域网内其他主机的信息,为攻击
其他主机做准备;也可以通过IP欺骗和主机建立信任关系,攻击其他主机。这类攻击隐蔽性很好,但有些技术实现难度大,需要具备一定的水
平。
6.网络监听
网络监听是主机的一种工作模式。在这种模式下,主机可以接收到
本网段在同一条物理通道上传输的所有信息,而不管这些信息的发送方
和接受方是谁。在信息交互过程中如果没有对内容进行加密,就可以借
助于一些软件达到监听的目的,例如,NetXray for Windows 9598nt、sniffit for linux、solaries等都是具有监听功能的软件。
7.寻找系统漏洞
漏洞又称为Bug,指可以被利用以实现攻击目的的程序、机制等。
有些漏洞是操作系统自带的,如Sendmail漏洞,Windows98中的共享目
录密码验证漏洞和IE5漏洞等;还有一些漏洞是由于系统管理员配置错
误引起的,如在网络文件系统中,将目录和文件以可写的方式调出,将
未加Shadow的用户密码文件以明码方式存放在某一目录下,一旦被黑
客获取将造成巨大的损失。
8.空口令和弱口令
空口令是指用户使用空账号和密码,或者设置了用户名没有设置密
码。弱口令是指用户设置的密码过于简单,很容易会被猜测出或通过破
解软件可以破解。防范此类攻击时用户必须提高警惕,在设置用户名和密码时不要给黑客留下可乘之机。
9.获取高级别的管理权限
黑客可以利用各种特洛伊木马程序和后门程序来攻击目标主机,从
而获取该主机的完全控制权限。黑客也可以通过编写缓冲区溢出获取超
级用户权限,从而控制整个网络。1.2 黑客必备技能
1.2.1 英语阅读能力
网络发展得十分迅速,知识也在不断地更新,黑客要想立于不败之
地就需要不断地学习新的知识来提高自己。现在大多数资料和教程都是
英文版本,所以黑客的学习需要从英文书籍开始。因为一个漏洞从发现
到出现中文介绍需要经过很长的一段时间,在这段时间内网络管理员可
能已经及时修复了漏洞;而当我们看到中文介绍的时候,这个漏洞早就
过时了。因此,学习黑客从一开始就要尽量阅读英文资料、使用英文软
件,并且及时关注国外著名的网络安全网站。
1.2.2 使用黑客工具
黑客工具一般分为两类:一类是
计算机操作系统自带的命令,例如,ftp、ping、net等。ping是我们常用的
命令,主要用于测试本主机与另一台
主机之间的连通性,判断是否具备远
程攻击的条件;另一类是各种主流的
黑客软件,主要包括端口扫描器、漏
洞扫描器、信息截获工具和密码破解
工具等。借助于黑客工具,可以提高
黑客的攻击速度和效率。当然,黑客也可以根据需要编写自己的黑客软件,达到更精确的攻击目的。
1.2.3 具备编程技能
具备编程技能最基本的要求就是能够掌握几种流行的编程语言和脚
本语言。计算机都是通过程序控制的,所以要想控制计算机就必须懂得
编程。这里不要求初学者对各类编程语言特别精通,只要能够看懂有关
语言、知道程序执行结果就可以了。编程语言都是相通的,当掌握了其
中一种编程语言后其他语言的学习就会非常简单。
1.2.4 熟悉网络协议和工作原理
知己知彼,百战不殆。要实现对网络的攻击,首先要了解网络,网
络之间的相互联系都是通过各种协议完成的。例如,TCP协议为相互通
信的两台主机提供可靠的传输机制,IP协议提供网络层的服务,ospf协
议为信息在网络中传输提供路由信息等。只有在对网络协议有了深入的
了解后,才可以抽象出整个网络工作的过程,进而实现攻击或保护的目
的。1.3 智能手机攻防基础
1.3.1 智能手机主流操作系统
随着智能手机的出现,我们的生活方式发生了巨大的变化,我们已
经离不开智能手机。智能手机能为我们提供各种各样的服务,而在这些
相似的服务下却有着不同的操作系统。下面将介绍几种主流的智能手机
操作系统。
(1)Android操作系统
Android是一种基于Linux的自由及开放源代码的操作系统,由
Google公司和开放手机联盟领导及开发,主要使用于移动设备,如智能
手机和平板电脑。2011年第一季度,Android在全球的市场份额首次超
过Symbian(塞班)系统,跃居全球第一。2013年的第四季度,Android
平台手机的全球市场份额已经达到78.1%。2013年9月24日,全世界采
用这款系统的设备数量已经达到10亿台。
该平台由操作系统、中间件、用户界面和应用软件组成。它采用软
件堆层的架构将系统分为3个部分:底层以Linux内核工作为基础,由C
语言开发,只提供基本功能;中间层包括函数库Library和虚拟机Virtual
Machine,由C++开发。最上层是面向用户的各种应用软件,包括通话
程序、短信程序等,由使用该系统的公司自行开发。Google通过与软
硬件开发商、设备制造商、电信运营商等其他有关各方结成深层次的合
作伙伴关系,旨在通过androiditong建立标准化、开放式的移动电话软件平台,从而在移动产业内形成一个开
放式的生态系统。
(2)iOS操作系统
iOS是由苹果公司开发的移动操作系统,最初是设计给iPhone使用
的,后来陆续套用到iPod touch、iPad以及Apple TV等产品上。iOS操作
系统是一种类Unix商业操作系统。
iOS的内置应用包括Siri、Facetime、Safari、Game Center等。Siri可
以使你通过语音发送短信、拨打电话,解放你的双手,实现语音控制手
机。Satari是一款深受大家喜爱的移动网络浏览器,可以帮助用户排除网页上的干扰,保存阅读列表,提供离线浏览服务。
(3)Windows Phone操作系统
Windows Phone是微软推出的一款手机操作系统,初始版本命名为
Windows Phone 7.0。该系统的内核使用Windows CE,用户界面采用
Metro,并且集成了微软旗下的Xbox Live游戏、Xbox Music音乐与独特
的视频体验。
Windows Phone可提供桌面定制、图标拖曳、滑动控制等一系列前
卫的操作体验。为了让用户能够随时更新重要信息,Windows Phone主
屏幕提供了类似仪表盘的体验来显示新的电子邮件、短信、未接来电
等。增强的触摸屏界面,让手指操作更加方便。而最新版本的IE Mobile
浏览器,为用户提供了更加便捷的服务。
(4)Symbian操作系统
Symbian是塞班公司为手机而设计的纯32位操作系统,具有实时
性、多任务、功耗低、内存占用少等特点。在有限的内存和运存情况
下,非常适合手机等移动设备使用,目前可以支持GPRS、蓝牙、SyncML、NFC及3G技术。它是一个标准化的开放式平台,任何人都可
以为支持Symbian的设备开发软件。Symbian将移动设备操作系统的内核
与图形用户界面技术分开,能很好地适应不同方式输入的平台,也使厂
商可以为自己的产品制作更加友好的操作界面,符合个性化的潮流,这
也是用户能见到不同样子的Symbian系统的主要原因。(5)BlackBerry OS操作系统
BlackBerry OS是Research In Motion专用的操作系统。这一操作系统
具有多任务处理能力,并支持特定的输入装置。BlackBerry平台处理邮件的能力十分突出,通过MIDP1.0以
及MIDP 2.0的子集,在与BlackBerry
Enterprise Server连接时,以无线的方
式激活并与Microsoft Exchange、Lotus Domino或Novell GroupWise同
步邮件、任务、日程、备忘录和联系
人。
1.3.2 智能手机漏洞简介
智能手机跟计算机系统一样,存在着许多可以被黑客利用以实施攻
击的漏洞。常见的漏洞有以下几种。
(1)系统软件漏洞
目前市面上的主流手机系统都曾被曝出存在系统漏洞,用户一般通
过打补丁和刷新系统的方式降低系统软件漏洞带来的风险。
(2)应用程序漏洞
应用程序漏洞是指智能手机下载的软件中出现漏洞。例如,在
iPhone手机APP商店中,有的银行软件就曾曝出错误收集用户敏感数
据,并且将其存储在手机文档中的漏洞问题。不过,该漏洞现在已经修
复。
(3)下载不安全程序
安装来历不明的软件很容易感染病毒,非常危险。随着手机软件市场的不断扩大,下载软件时经常会遇到一些来历不明的捆绑软件,稍有
疏忽就有可能造成手机安全漏洞。 技巧与问答
世界十大知名黑客
(1)凯文·米特尼克(Kevin Mitnick)
凯文·米特尼克被称为“世界第一黑客”,他有一句经典的名言被广
为传颂:“巡游五角大楼,登录克里姆林宫,进出全球所有计算机系
统,摧垮全球金融秩序和重建新的世界格局,谁也阻挡不了我们的进
攻,我们才是世界的主宰。”
凯文·米特尼克在15岁的时候就闯入了“北美空中防务指挥系统”的
计算机主机内,他和朋友们翻遍了美国指向苏联及其盟国的所有核弹头
的数据资料。如果当时米特尼克将这些情报卖给克格勃,那么他至少可
以得到50万美元的酬金,而美国则需花费数十亿美元来重新部署。但是
米特尼克并没有这么做,而是在查看资料后悄悄地离开了。
(2)丹尼斯·里奇(Dennis Ritchie)
丹尼斯·里奇是C语言之父、Unix之父,他设计开发的C语言不论在
当时还是在现在都是使用最广泛的语言之一。C语言的诞生是现代程序
语言革命的起点,是程序设计语言发展史中的一个里程碑。他和布莱恩
柯林汉(W. Kernighan)所编著的《C程序设计语言》(The C
Programming Language )一书已被翻译成多种语言,成为C语言方面最具权威性的教材之一。
(3)李纳斯·托沃兹(Linus Torvalds)
李纳斯·托沃兹为人所知的最大成就就是编写了一个操作系统的内
核——Linux,使自由软件从产业思想运动演变成为市场商业运动,从
此改变了软件产业乃至IT产业的面貌。李纳斯虽然是一位博士,但本人
看起来就像一名学生。他的房间非常简单,只有两只猫和几台计算机,另外还有一根由当地一家ISP安装并承担费用的专线。
(4)沃兹尼亚克
如果单单提到沃兹尼亚克这个名字大家会感到陌生,那么提到他的
朋友大家一定会非常熟悉——乔布斯。沃兹尼亚克与乔布斯一起创立了
苹果公司,他是一位技术天才,但也是一个淡泊名利、性格纯朴、在硅
谷被大家公认的“好人”。只不过他早早地离开了商场,过着平淡安静的
生活。
(5)汤普森
汤普生当初为了能让自己更方便地玩游戏,于是和朋友一起开发了
一个自己的操作系统。这个操作系统刚开始的时候很少有人知道,在
1974年以前他们甚至没有发表过任何关于项目的消息。他们并没有积极
推销,但大学、研究机构可以免费使用,而且还提供源代码,这个操作
系统很快就震动了整个计算机业。这个操作系统就是里奇和汤普森在
1969年创造的UNIX操作系统。
(6)理查德·马修·斯托曼
理查德·马修·斯托曼是一名老牌黑客,创立了自由软件基金,打破了软件是私有财产的概念。他还创建了GNU组织,GNU即“GNU’s Not
Unix”的缩写。另外,他还曾获得麦克阿瑟基金24万美元的天才奖。
(7)德拉浦
德拉浦是首位引入“盗用电话线路”打长途电话思想的人,他曾使
用“嘎吱嘎吱船长”牌的麦片盒里作为奖品的哨子向电话话筒吹声,音调
可达2600赫兹,将电话呼出的蓝匣子开启,以此来免费拨打长途电话。
(8)埃里克·雷蒙德(Eric S Raymond)
埃里克·雷蒙德是开放源代码运动和黑客文化的第一理论家。1998
年Mozilla的发布主要归功于他。大多数黑客和主流观察家也同意,正是
雷蒙德将开放源代码的理念成功地带到了华尔街。
(9)卡普尔
卡普尔与盖茨是美国软件业的双子星。他在1982年创办的Lotus公
司是当时最大的独立软件公司。直到1988年4月,微软才超过Lotus,成
为头号软件公司。卡普尔发起创办的电子边疆基金会(EFF),目的在
于维护黑客利益。也正因如此,卡普尔成为了20世纪80年代和90年代最
具影响力的计算机人物和黑客人物之一。
(10)罗伯特·塔潘-莫里斯(Robert Tappan Morris)
罗伯特·塔潘-莫里斯在1988年的第一次工作过程中戏剧性地散播出
了网络蠕虫病毒,使得“Hacker”一词被赋予了新的含义。在网络蠕虫病
毒事故中,成千上万的计算机受到了影响,并导致了部分计算机崩溃。
因此,黑客一词具有了贬义的色彩。黑客从此真正变黑,黑客伦理失去
约束,黑客传统开始中断。大众对黑客的印象永远不可能恢复,从此计算机病毒步入主流。
世界十大黑客组织
(1)ANONYMOUS
Anonymous的中文名称为匿名者,是全球最大的政治性黑客组织。
在巴黎恐怖袭击事件发生之后,Anonymous第一时间在 youtube上上传
了视频向ISIS宣战。从此人们记住了这个组织,也记住了盖伊·福克斯面
具。匿名者是一个开放性的网络黑客组织,在世界各地都有分部。该组
织的宗旨是:反对社会各行各业中存在的不公平现象。只要有不平等现
象发生,他们就会像盖伊·福克斯那样,化作一个正义的战士,与不平
等现象做斗争。
(2)LIZARD SQUAD
这是一个热衷于攻击政府、大型企业相关网站的组织,其中就包括
攻击马来西亚航空公司官网和 Facebook。在他们看来,攻击这些网站才
能体现出组织的高调姿态。他们攻击马来西亚航空公司网站,使得用户
在输入该网址后,会出现一个404-not-found的界面,以致无法正常查询
航班信息。
(3)THE LEVEL SEVEN CREW
The Level Seven Crew是许多年前出现的一个受人唾弃的黑客组织,在2000年以后就销声匿迹了。该组织的命名灵感来自于一款叫“但丁地
狱”的游戏,其中的第七级地狱是最恐怖的一级。他们主要的攻击对象包括美国第一国家银行,美国国家航空航天局(NASA),美国驻中国
大使馆网站,以及喜来登酒店等。
(4)CHAOS COMPUTER CLUB
Chaos Computer Club简称“CCC”,中文名称为混沌计算机俱乐部,1980年在德国柏林成立,是欧洲最大的黑客联盟,也是世界上黑客攻击
技术最好的组织之一。CCC主要致力于研究在政府和非政府组织的服务
网站中存在的安全漏洞,也向大众宣传一些黑客攻击方式以及防范措
施。他们在攻击之前都会查阅相关的法律文献,来明确哪些是属于非法
窃听,哪些是黑客领域合法的灰色地带,并注意规范自己的网络行为。
(5)LULZSEC
Lulzsec成立于2011年,被看作是Anonymous的一个分支。他们有自
己组织的口号——你的安全防护简直可笑。Lulzsec的第一次攻击是针对
FOX网站发起的,之后又攻击了索尼和美国中央情报局(CIA)的相关
网站。
(6)SYRIAN ELECTRONIC ARMY(叙利亚电子军队)
Syrian Electronic Army简称“SEA”,他们有着严明的组织纪律,被
认为是叙利亚总统阿萨德的拥护者,目标就是消灭叙利亚反对派。他们
常用的攻击手段包括钓鱼、DDOS攻击、垃圾邮件以及恶意软件等,在
攻下某个网站之后通常会在该网站上粘贴叙利亚国旗。他们还会攻击一
些国家领袖的Facebook和推特。
(7)GLOBALHELL
这个黑客组织的发起人跟其他组织的发起人有所不同,是一个名为Patrick Gregory的街头帮派成员。该组织共攻击了115个网站,在攻下这
些网站之后将这些网站的数据全部摧毁,造成了数以百万美元的损失。
他们虽然是由帮派成员发起,但是他们的攻击不像街头的小打小闹,因
为在他们攻击的网站中包含了美国军方的官网。
(8)NETWORK CRACK PROGRAM HACKER GROUP(网络
破解黑客组织)
Network Crack Program Hacker Group简称“NCPH”,是一个在中国
发现的黑客组织。该组织的发起人为谭戴林,是一名中国军人。
(9)TEAMPOISON
TeamPoison成立于2010年,发起人是一个名为Trick的16岁少年。该
组织发起的几次知名的攻击事件包括侵入北约、 Facebook、每日邮,以
及英国捍卫者联盟等组织机构的网站,还包括入侵前英国首相托尼布莱
尔(Tony Blair)的私人账户。该组织在2012年解散,2015年作为一个
白帽子安全研究组织复出。
(10)TARH ANDISHAN
Trah Andishan是伊朗的一个黑客组织,成员包括20个才华横溢的资
深黑客。该组织曾研发出了Stuxnet蠕虫病毒,但却被美国和以色列相关
情报人员用来对Tarh Andishan实施攻击。他们攻击的对象非常广泛,最
臭名昭著的一次应该是Operation Cleaver(手术刀行动)了。这次攻击
行动是针对军事、能源、石油和天然气、航空公司等部门,以及机场、交通和医院等社会基础设施发起的,造成的影响极其恶劣。什么是“黑帽子”黑客,什么是“白帽子”黑客?
“黑帽子”黑客就是我们通常所认为的“黑客”或者“骇客”了。他们主
要是利用计算机技术对网络或者用户主机进行破坏性攻击,还会通过破
解网络上的收费软件获利。他们的行为导致整个市场秩序遭到破坏,损
害了他人的利益,泄露了别人的隐私等。
“白帽子”黑客与“黑帽子”黑客正好相反,他们是来保护网络和系统
的。“白帽子”黑客会使用网络攻击技术对自己的网络或系统进行攻击,这样就可以检测出网络或系统中存在的漏洞,以便及时修补。“白帽
子”黑客和网络安全工程师性质有相似之处,都是利用自己的技术做好
事。第2章 智能手机操作系统——iOS
诺基亚的CEO康培凯在苹果刚出现的时候曾用这样一句话来嘲笑苹
果:“苹果先试试把市场认知度转化为市场份额。”可见,当时苹果公司
的发展很不被看好。iOS操作系统从2007年第一次发布到现在已经过了
很多年,iPhone手机在手机行业中的地位发生了巨大的变化,如今再也
没有人对苹果的实力产生怀疑。2.1 iOS操作系统的发展历程
2.1.1 iOS的发展回顾
(1)iPhone OS 1.0
2007年1月乔布斯在MacWorld大会上发布苹果的第一款手机时,iOS系统还没有一个正式的名称,只是被叫作iPhone Runs OS X。这款手
机刚刚发布时并不被全世界的同行所认可,还被认为是一个不能更换铃
声和壁纸、不能运行后台程序,甚至根本没有第三方应用的手机,也就
算不上是一个“智能手机”。但是第一款苹果手机并不是像上面说的那样一无是处,在这款手机
中我们可以看到许多创新的地方,如3.5英寸480×320分辨率的大屏幕、多点触控的交互方式,以及简洁美观的用户界面,这些创新都在一定程
度上颠覆了人们对传统手机的认识。就是这样一部手机的出现,使得手
机市场格局发生了巨大变化,也在之后的时间里引发了行业革命。
(2)iPhone OS 2.0
在iPhone OS 1.0中并没有应用商店,因此用户无法下载第三方的应
用程序。面对这种局面,乔布斯积极主张并鼓励开发者开发网页应用,这导致当时的应用程序质量不高,功能也很有限。几个月之后,苹果改
变了这种做法,并在2008年3月发布了第一款iOS软件开发包。同年7月,苹果公司又推出了App Store,它
的出现开启了iOS和整个移动应用时
代。
苹果公司制定了收入三七分成的
制度,同时为软件的开发创造了良好
的生态环境,这吸引了大量的软件开
发者积极投身到苹果软件开发大军中。随后,iPhone手机应用数量剧
增,功能也呈现出多样化。它不仅是一款手机,而且还可以被用作量角
器、水平仪、游戏机。在这些软件中,还不乏一些相当有意思的“喝啤
酒”“吹蜡烛”等游戏。iPhone OS 2.0系统还支持手写输入、正式支持中
文,支持Office文档、截图功能、计算器功能等。直到现在,App Store
里的应用还在不断地更新着,其中所包含的应用数量仍然是苹果公司值
得骄傲的地方。
(3)iPhone OS 3.0
iPhone OS 3.0新增了键盘的横向模式、新邮件和短信的推送通知、彩信、数字杂志,以及最初的语音控制功能,能够帮助用户寻找、播放
音乐和调用联系人。这些功能填补了前两代系统的空白,虽然与当时的
塞班系统相比存在着诸多差异,但还是给手机用户带来了一种新的使用
体验。
2010年4月,苹果发布了iOS 3.2系统。iOS 3.2是第一款针对“大
屏”iPad平板优化的移动系统,它的出现是一次划时代的演变。
(4)iOS 4
iPhone OS操作系统在这一代正式更名为iOS。iOS 4在外观上做了很大改变,乔布斯及其团队在界面设计上采用了复杂的光影效果,让整个
界面看上去非常新颖,增强了用户的视觉体验。
Game Center的界面设计颜色丰富,使用了绿色、酒红色、黄色
等,上下底部则是类实木设计。正是在这一版本的系统
中,“skeuomorphic(仿真拟物风格)”开始完善起来。除此之外,iOS 4
还实现了壁纸的切换,加入了文件夹功能;在全新亚麻质地背景的文件
夹中,用户可以存放相关应用内容。
常用的图标可以放入底部的Dock,在使用的时候非常方便。通过双
击Home键,用户可以查看当前打开的所有应用程序,通过点击程序界
面就可以实现多个应用程序之间的快速切换。
与iOS 4同期的iPhone 4也是前所未有的漂亮,首次引入了前后双玻
璃的设计,厚度也仅有9.2mm,创下了全球最薄智能手机的纪录。
iPhone 4被认为是乔布斯最经典的杰作之一,也是乔布斯临终前最后一
部杰作。iPhone 4出众的外形受到了广大用户的喜爱,上市后供不应求
现象屡见不鲜。
(5)iOS 5iOS 5沿用了iOS 4华丽的界面设
计风格,同时新增了一项功能——
Siri。Siri的出现是苹果公司第一次尝
试让用户通过语音来控制自己的iOS
设备,即通过Siri来打电话、播放音
乐、查询天气等。iOS 5中界面大量
模仿现实世界中的实物纹理,例如,黄色纸张背景的“备忘录”和亚麻纹理
的“提醒”应用。App Store也开始支持人民币支付,这样用户就不用越狱
下载盗版APP,而可以直接通过网银转账购买正版APP了。
(6)iOS 6
iOS 6中苹果采用了全新设计的地图软件。地图元素基于矢量,在
放大的情况下也不会失真。3D模式可以让用户从多个角度观察某一区
域。由于地图数据不够完善,大量图像出现扭曲现象,影响了地图软件
应有的效果,导致用户对此很不满意。然而在中国,地图软件却受到了广大用户的欢迎。由于中国地区的
地图数据由高德提供,相比于谷歌而言数据内容比较完善,实现了地图
软件应有的效果。除了地图之外,iOS 6还增加了Passbook、全景相机、蜂窝数据状态下的FaceTime、丢失模式等功能。
(7)iOS 7
iOS 7是iOS系统诞生以来变化最大的一次,它采用全新的图标界面
设计,引发了人们对扁平和拟物两种设计风格的强烈探讨。在iOS 7中
被改动的地方有上百项,其中包括控制中心、通知中心、多任务处理能
力等。
iOS 7除了对用户界面做了改动外,还添加了不少使用的功能,如
控制中心的出现在很大程度上简化了iOS系统的操作,我们在打开Wi-Fi
时就不需要进入设置界面打开开关了。同时也增加了九宫格输入法,迎
合了中国用户的需求。
(8)iOS 8
苹果公司利用iOS 8新增的Continuity功能对旗下所有平台进行了整
合,使其生态环境越发完善。iOS 8中新增的Continuity,可以实现把一台iOS设备上未完成的事情继续在另一台iOS设备上做完。如在iPhone上
写了一半的邮件可以在Mac或iPad上继续写,前提是这些设备在同一个
Wi-Fi网络中。
iOS 8为开发者带来了新的编程语言Swift和Metal渲染接口,还开放
了Touch ID的API,使开发者还能编写额外的通知中心控件,成了iOS 8
区别于以往iOS系统的一大特点。
(9)iOS 9
iOS 9给用户带来的最大惊喜就是升级门槛与iOS 8相同,支持的升
级设备与iOS 8相同,这意味着iPhone 4s也可以获得升级。
同时苹果也大幅度降低了iOS 9升级安装所需的存储空间,从原来
的4.6GB降到现在的1.3GB,为广大拥有16GB内存空间的iPhone用户带
来了福利。iOS 8对原有功能做了进一步的完善,让这些功能更加实
用,如原生地图支持公交查询、新的News新闻软件、iPad的分屏模式等。
2.1.2 iOS最新版本
目前苹果公司发布的iOS最新版本为iOS 9,是美国苹果公司于2015
年9月16日正式推出的移动操作系统。
iOS 9相比于之前的版本增加了以下功能。
(1)Siri
更新后的 Siri其速度和准确度都提升了40%,现在可以通过Siri 查
询更多主题的内容。更新后的 Siri可以根据用户的指示,按日期、位置
和相簿名称来搜索用户的照片和视频。如果用户在使用Safari、备忘录
或其他软件时需要中断操作,并且希望稍后继续,Siri稍后会向用户发
出提醒。
(2)邮件
iOS 9完善了邮件应用程序的功能。邮件应用程序为用户提供的标
记功能,可以让用户对邮件附件中的照片和文件进行添加图画、评论或
签名等操作。另外,邮件应用程序还可以轻松将iCloud Drive中保存的
文件添加为附件。(3)地图
地图在“公交”视图的模式下可以为用户提供附带路线和方向指示的
公共交通信息。用户在使用地图搜索某一地点时,会看到搜索地点周围
包括餐饮、购物和娱乐等场所的列表,并可以通过这个列表方便、快捷
地制订自己的出行计划,合理高效地安排自己的行程。
(4)备忘录
备忘录在iOS 9中除了拥有传统的编辑功能外,还支持制作待办事
项的核对清单。用户不仅可以使用文字描述备忘事项,还可以加入照
片、地图或网址链接,甚至可以手动画个草图记录备忘事项。
(5)iCloud Drive
在iOS 9中,用户可以通过iCloud Drive直接从主屏幕上便捷访问
iCloud里存储的任何文件。用户不仅可以通过iCloud Drive对iCloud里存
储的文件进行预览和整理,还可以搜索想要的文件。除了上述功能外,iCloud Drive还可以按日期、名称或添加到Mac上的任何标签来浏览全部
文件。
(6)多任务处理
iOS 9提供的多任务处理功能可以使用户同时打开多种应用,从而
在不退出当前应用程序的情况下浏览后台正在运行的应用程序。双击
Home键可以查看所有正在运行的应用程序,左右滑动屏幕单击可打开
要切换到的应用程序。
2.1.3 iOS用户界面iOS用户界面的设计思想是能够让用户使用多点触控直接操作iOS设
备,具体来说就是用户可通过滑动、轻触开关及按键来控制系统,通过滑
动、轻按、挤压及旋转来与系统交
互。此外,还可通过其内置的加速
器,旋转设备来改变屏幕的方向。
屏幕上方是状态栏,用来显示当
前时间﹑电池电量和信号强度等信
息。屏幕中间区域用于放置应用程序
图标,用户可以根据自己的喜好排列
应用程序图标的位置和顺序,使用时
只需单击图标就可打开应用程序。屏
幕底部是停靠栏,通常称为Dock。
用户可以将应用程序的图标拖曳到Dock上,应用程序图标就可以固定在
Dock上。启动程序时单击屏幕上的应用程序图标,按iPhone和iPod屏幕下方
的Home键可以退出程序,关闭iPad开启的应用程序可使用五指捏合手
势回到主屏幕。在 iOS的最新版本中,当第三方软件收到了新的信息
时,Apple的服务器将把这些通知推送至 iPhone、iPad或iPod Touch上,也可通过设定来隐藏通知。2.2 从底层剖析iOS
2.2.1 iOS的系统架构
iOS的系统架构分为4个层次:核心操作系统层(Core OS layer)、核心服务层(Core Services layer)、媒体层(Media layer)和可触摸层
( Cocoa Touch layer)。
① Core OS层:位于iOS框架的最底层,提供了最低级、系统级的
服务,主要包含内核、文件系统、网络基础架构、安全管理、电源管
理、设备驱动、线程管理、内存管理等。
② Core Services层:即核心服务层,提供了诸如字符串管理、集合
管理、网络操作、URL实用工具、联系人管理、偏好设置等服务。除此
之外,它还提供了很多基于硬件特性的服务,如GPS、加速仪、陀螺仪
等。
③ Media层:依赖于Core Services层提供的服务来实现与图形和多
媒体相关的功能。它包含Core Graphics、Core Text、OpenGL ES、CoreAnimation、AVFoundation、Core Audio等与图形、视频和音频相关的功
能模块。
④ Cocoa Touch层:直接向iOS应用程序提供各种服务。其中,UIKit框架提供各种可视化控件,如窗口、视图、视图控制器与各种用
户控件等供应用程序使用。除此之外,UIKit也定义了应用程序的默认
行为和事件处理结构。
2.2.2 iOS开发语言
iOS开发语言主要有两种,一种是Object-C语言,简称OC语言,是
扩充C的面向对象的编程语言。另一种是Swift语言,是苹果于2014年
WWDC(苹果开发者大会)发布的新语言。两种开发语言可共同运行
于Mac OS和iOS平台,用于搭建基于苹果平台的应用程序。
(1)Object-C语言
OC语言是扩充C语言的面向对象的编程语言,完全兼容C语言。在
OC代码中,可以混用C或者C++代码。
在OC语言中几乎所有的关键字都是以@开头的,这是为了更好地
区分C语言关键字,如@interface、@implementation、@public等;少部
分没有以@开头,如id、_cmd等。在C语言中字符串加引号表示,如“hello”。而在Oc语言中要在“hello”前加@符号,即@“hello”。
OC语言编写的程序在编译链接时,首先对.m格式的源文件进行编
译,编译后得到.o格式的目标文件,目标文件链接成为.out格式的可执
行文件。(2)Swift语言
Swift为iOS和OS X应用提供的新
的编程语言,基于C语言和Objective-
C语言,克服了C语言在兼容方面的
缺点。Swift采用了安全的编程模式
并添加了现代的编程功能,使得编程
更加简单、灵活和有趣。界面则基于
Cocoa和Cocoa Touch框架,展示了软
件开发的新方向。
苹果公司改进了现有的编译器、调试器、框架结构,通过自动引用计数来简化内存管理,在Foundation
和Cocoa的基础上构建框架。Swift继承了Objective-C支持块、集合语法
和模块的特点,支持现代编程语言技术。2.3 刷新iOS操作系统——刷机
2.3.1 什么是刷机
刷机就是更换手机操作系统的一种操作,类似计算机上的重装系
统,也就是为手机重装一个系统。大多数厂家的手机都支持刷机功能。
刷机的主要目的在于将手机更换成新系统,修复老版本中存在的
Bug,例如,老版本中存在的反应速度慢、声音较小、频繁死机等问
题。除此之外,通过刷机还可以增强原机型的功能,如增加数码变焦、相框种类、图像的编辑能力等。刷机后新的系统便优化对硬件的控制,在手机硬件不变的情况下充分提升手机功能。
手机用户如果有需要可以去手机厂商的客服免费刷机,这样刷机新
系统来源比较安全、高效。用户在刷机前需要注意的是要备份好自己手
机中存储的数据,否则数据将会丢失。除了寻求客服的帮助,用户还可
以自己通过专门的刷机软件为手机刷新系统。针对不同的刷机软件网上
都可以搜到相应的使用教程,简单易学。
2.3.2 iPhone刷机教程
现在市面上有许多针对iPhone手机进行刷机的软件,这些软件针对
性强且操作简单,非常适合没有刷机经验的用户使用。这里我们就以爱
思助手为例,简单介绍下iPhone手机刷机的方法。首先我们去爱思助手的官网下载正版计算机客户端,在爱思助手下
载页面单击“立即下载”按钮即可将爱思助手的安装包下载到计算机上。
下载完安装包之后,将爱思助手安装到计算机上。然后打开爱思助
手,按照主界面的提示将苹果手机使用数据线连接到计算机上。
手机与计算机连接后,爱思助手会自动获取手机信息。这时我们选
择爱思助手工具栏中的“刷机越狱”选项,爱思助手会为我们提供当前可用的刷机固件。我们选择好刷机固件后,单击“下载固件”按钮将固件下
载下来。然后单击界面右下角的“立即刷机”按钮,只需等待几分钟刷机
就会完成。2.4 iOS系统的数据备份与恢复
我们在备份和恢复手机数据的时候通常会用到两种方式,一种是利
用苹果手机自带的iCloud功能备份和恢复数据,另一种则是通过第三方
软件的方式备份和恢复手机数据,本节我们所介绍的第三方软件有
iTunes和91助手两款软件。下面我们就来了解一下这两种备份和恢复数
据的方法。
2.4.1 使用iCloud备份和恢复用户数
据
1.使用iCoud备份数据
在苹果手机主界面找到“设置”图标,单击“设置”图标进入手机设置
界面。在设置界面找到“iCloud”功能标签,单击“iCloud”标签进入iClud
设置界面。进入iCloud设置界面需要输入用户Apple ID和密码,输入完成后单
击“登录”按钮登录到自己的iCloud中。利用Apple ID和密码登录成功后,系统会提示“此iPhone上的Safari
数据、提醒事项、通讯录和日历将被上传,并且与iCloud合并”。这时,我们单击“合并”标签选择合并。系统自动开启“查找我的iPhone”功能,此处我们单击“好”标签。进入iCloud管理界面后我们可以看到“备份”标签,单击“备份”标签
进入备份设置界面。在备份设置界面中,我们单击“立即备份”标签对手
机数据进行备份。
单击“立即备份”标签后系统就开始对手机数据进行备份,并估算备
份所需时间。2.使用iCloud恢复数据
在iPhone刷机或者购买新机激活的时候,系统会提示我们对iPhone
进行设置,其中有一项就是从iCloud云备份恢复数据。
2.4.2 使用iTunes备份和还原用户数
据
1.使用iTunes备份数据打开iTunes,使用苹果手机原装USB数据线将手机与计算机连接起
来,iTunes会自动扫描到移动设备。iTunes扫描到移动设备后会在主界
面的左上角显示手机图标,单击手机图标可以对手机存储内容进行管
理,同时可以查看手机的基本信息。
在“备份”设置界面中,用户可以通过单击“立即备份”按钮手动将手
机数据备份到计算机上。单击“立即备份”按钮后iTunes开始将手机数据备份到计算机上,主
界面上方显示备份进度。
2.使用iTunes恢复数据
使用iTunes恢复数据时单击“数据备份”按钮,iTunes会提示数据恢
复前需要关闭“查找我的iPhone”功能。打开设置界面,选择iCloud选项,单击“iCloud”标签进入iCloud设置
界面,在iCloud设置界面单击“查找我的iPhone”标签。
进入查找我的iPhone设置界面后,单击“查找我的iPhone”开关按钮
将该功能关闭,即可通过iTunes对数据进行恢复。2.4.3 使用91助手备份和还原用户数
据
91助手的安装非常简单,登录91助手官网就可以看到在主页面
有“安装到计算机”按钮,我们只需单击该按钮就可以将91助手安装到计
算机上。1.使用91助手备份手机数据
将91助手安装到计算机上之后,我们用数据线将计算机和手机连接
在一起,91助手就会自动安装iTunes。
如果计算机上已经安装了iTunes,可以单击“已安装,继续”按钮结
束iTunes的安装;如果计算机上没有安装iTunes,则可以等待iTunes的安
装。
iTunes安装完成后,单击“重启”按钮可重新启动91助手。再次启动91助手后,91助手已经自动获取了手机的信息。我们在上
方的工具栏中单击“我的设备”,然后在左侧的菜单栏中单击“备份还
原”选项。在这里,备份和还原默认使用的是iTunes。我们单击要备份的
设备名称前的选框,选中要备份的设备,然后单击“创建备份”按钮创建
新的备份。
创建新的备份有两种方式,一种是全新备份,即对手机中所有的数
据进行备份。另一种是增量备份,即在之前备份的基础上备份新增的数据。如果我们是第一次备份,可以选择全新备份的方式进行备份。备份
的路径可以通过单击默认路径右侧的“修改”按钮进行修改,修改完成后
单击“备份”按钮开始对手机中的数据进行备份。在备份的过程中需要保持手机与计算机之间的连接不中断,如果设
置了密码需要我们将手机保持在解锁状态。等待几分钟后数据备份完
成,这时我们单击“完成”按钮结束此次备份。
2.使用91助手还原手机数据
在对手机数据进行还原之前,需要我们先关闭iPhone手机中的“查
找我的iPhone”功能。我们在设置界面中单击进入iCloud设置界面,然后
单击“查找我的iPhone”。
在查找我的iPhone中单击“查找我的iPhone”开关按钮,关闭查找我
的iPhone功能。我们在“备份还原”选项中选中我们需要备份的设备名称,然后单击
下方的“还原”按钮对手机数据进行还原。
输入iPhone账号密码,单击“确定”按钮开始还原数据。在数据还原
的过程中,要保持手机与计算机的正常连接。数据还原完成后我们可以单击“完成”按钮来结束还原操作,手机会
自动重启。2.5 越狱让iOS更加完美
2.5.1 认识越狱
苹果设备都使用的是iOS操作系统,它为了保证系统自身的安全限
制了用户一些存储读写的行为。用户的读写受到限制后感觉自己的行为
被束缚了,而解除这些限制就像越狱一样变得十分自由,所以人们把破
解iOS系统的读写权限限制称为越狱。越狱后的苹果设备可以对系统底
层的存储进行读写操作,最明显的变化就是用户可以免费使用破解后的
App Store软件中的应用程序,也就相当于在苹果设备上下载使用盗版软
件。越狱后的苹果设备除了可以安装破解后的免费软件外,还可以自行
编译软件;也可以对操作系统进行修改,使系统功能更加符合用户的需
求。
2.5.2 越狱的利与弊
1.越狱有利的地方
(1)可以访问Cydia商店
苹果设备在越狱前需要下载的软件只能到App Store中下载,一些不
符合苹果公司要求的软件是不能进入App Store供用户下载的。在这些不
符合苹果公司要求的软件中有许多好的软件,且都被放在了Cydia商店
中。这些软件可以实现iOS系统无法实现的功能,但只有通过越狱的苹果设备才能够下载。
(2)拥有更完美的Siri
Siri是iOS系统中的一个亮点,有
了Siri用户就可以通过声音来控制自
己的苹果设备。经过越狱的苹果设备
会将Siri的功能优化,使它变得更加
强大,甚至连关机和重启都可以通过
声音控制。
(3)使用多样化的输入法
苹果设备在越狱前只能使用系统自带的输入法,然而每个人的使用
习惯并不相同,所以用户更希望使用自己所习惯的输入法。越狱后的苹
果设备可以安装第三方输入法,用户可根据自己的喜好来下载,如我们
常用的九宫格输入法。
(4)提高安全性
越狱后的苹果设备可以安装一款名为iCaughtU的防盗软件,它可以
在使用者输入错误密码时对其拍照并发送到预先设置的邮箱中。这样苹
果设备一旦被盗,就可以在盗窃分子不知情的情况下搜集到他们的信
息,从而帮助我们找回自己的苹果设备。
(5)让苹果设备开启免费Wi-Fi热点
Cydia商店中的MyWi软件可以让苹果设备成为免费的移动热点,周
围的无线设备就可以通过连接热点来上网。(6)安装自定义主题
苹果设备使用的主题都是在系统
开发中预先存储的,主题风格比较单
调,且没有个性。越狱后的苹果设备
就能摆脱单一主题的束缚,用户可根
据个人的喜好自行下载安装喜欢的主
题,以凸显自己的个性。
(7)使用通知栏中的快捷开关
越狱后的苹果设备可以安装
SBSetting插件,这个插件功能十分强
大。它可以帮助用户快速更改手机设
置,还可以在通知栏中添加快捷开
关,供用户将苹果设备修改成自己喜欢的风格。
2.越狱的弊端
(1)导致系统不稳定
苹果设备越狱后可能会导致系统不稳定,主要表现在死机、应用程
序闪退或崩溃等现象出现的概率大大增加。
(2)电池寿命缩短
苹果设备的电池会因越狱插件和破解之后的App而损耗严重,这种
损耗是永久性的,难以恢复。(3)安全性降低
越狱后的苹果设备可以安装App Store以外的软件,这些软件中有一
部分是安全正规的,还有一些软件会给苹果设备带来安全隐患、给用户
带来经济损失或者暴露用户隐私。
(4)系统固件升级过程烦琐
没有越狱的苹果设备升级非常简单,只需接入无线网络使用OTA方
式对系统固件进行升级即可。越狱之后的苹果设备就不能再使用这种方
式升级固件,否则会出现“白苹果”
(1)。2.6 苹果攻击案例
1.Elk Cloner病毒
1982年,里奇·斯克伦塔(Rich
Skrenta)在一台苹果计算机上编写了
一个通过软盘传播的病毒。他称之
为“Elk Cloner”,这是世界上第一个
计算机病毒。在当时,计算机还没有
硬盘驱动器。该病毒感染了成千上万
的机器,但它是无害的;它在用户的屏幕上显示一首诗,其中有两句是
这样的:“它将进入你所有的磁盘它会进入你的芯片。”
2.Leap-A病毒
在Elk Cloner病毒之后的20多年间一直没有再出现MAC病毒,直到
2006年Leap-A病毒开始通过苹果粉丝论坛上泄露的Leopard操作系统的
照片在苹果用户中传播。Leap-A病毒主要通过iChat在计算机之间传
播,但并不会窃取信用卡信息,也不会实施任何恶毒的攻击。
3.远程攻击iPhone
2007年7月,iPhone刚上市不久,世界著名黑客查理·米勒(Charlie
Miller)就在那一年的黑帽大会(Black Hat Conference)上介绍了他的发现,证明了iPhone可以被远程攻击。他设计了一个病毒网页,iPhone
用户登录该网页后会导致手机崩溃;然后这台iPhone将处于黑客的控制
之下,并会按黑客的指令发送E-mail、浏览网页,甚至打开麦克风。
4.iPhone越狱者
2007年苹果公司推出iPhone时,乔治·霍茨(George Hotz)只有17
岁。经过500个小时的编码和修改,他成功解开了iPhone手机上的运营
商锁定。在随后的几个月里,他和其他程序员找到了一种只需要软件执
行的越狱方式。越狱后的iPhone增加了几百个新用途,但也使它更容易
受到在PC端中泛滥的恶意软件的攻击。
5.Mac黑客
首次攻破iPhone 6个月后,查理·米勒在温哥华CanSecWest安全会议
上仅用两分钟时间就破解了刚刚发布的苹果MacBook Air计算机,获得
了Pwn2Own黑客大赛的奖金。之后两年,米勒又在Pwn2Own大赛上两
次攻破MacBook笔记本电脑,巩固了他作为世界领先Mac黑客的声誉。
下图为查理·米勒。6.僵尸网络
2009年,苹果公司iWork办公软件出现了一个盗版版本。这个盗版
版本是一种恶意软件,可以在用户中传播。该软件能够劫持被感染的计
算机,使其成为“僵尸网络(iBotnet)”的一部分。这个恶意软件当时危
害到的用户并不多,攻击的意图也不清楚。
7.劫持iPhone
查理·米勒对iPhone的首次攻击和对MacBook的攻击方式相同,都是
通过用户访问含病毒的Web页面来实施的。在2009年7月,米勒又揭示
了iPhone的一个危险漏洞。该漏洞允许黑客在用户未做出任何动作的情
况下,通过文本信息控制用户的iPhone手机。这样用户的iPhone就会被
黑客完全接管,自动发送更多的短信以传播病毒。
8.Ikee Worm病毒Ikee 病毒能够将用户的手机背景改为歌手里克·阿斯特利(Rick
Astley)的头像,并显示一条消息:“ikee is never gonna give you
up.”(意为:ikee永不放弃你。)这消息源自阿斯特利的单曲Never
Gonna Give You Up 。
9.JailbreakMe
2010年,一名叫Comex的黑客发布了iPhone和iPad越狱工具
JailbreakMe 2。它允许任何人访问JailbreakMe.com网,并在几秒钟内突
破苹果的安全封锁。苹果公司对暴露的漏洞迅速做出反应,在10天内就
修补了这个漏洞,并添加了新的安全措施。然而,Comex在2011年7月6
日又发布了JailbreakMe 3版本,再次对苹果发起攻击。
10.Flashback
2012年年初,苹果公司花两个月的时间来实施Java更新时,黑客利
用这个机会制造了Flashback木马。利用隐身木马Flashback,黑客在用户
访问恶意WordPress博客网页时侵入用户的苹果计算机。Flashback木马攻击最严重时,超过70万台的Mac被
Flashback劫持,形成一个庞大的僵尸
网络。2.7 被用于iOS操作系统的攻击方
式与防范技巧
2.7.1 Ikee攻击与防范技巧
1.Ikee攻击原理
Ikee是2009年11月被检测到的一种蠕虫病毒。Ikee蠕虫病毒扫描到
分配给荷兰和澳大利亚电信运营商的IP地址块就会自动运行,然后根据
这些IP地址检测当前主机是否开启了TCP22端口,即检测SSH服务是否
开启。对于开启SSH服务的主机尝试使用默认证书“Root”和“alpine”进行
登录,如果用户没有修改默认证书账号和密码,就会被Ikee蠕虫病毒感
染。
Ikee攻击针对的是越狱后的iPhone手机。iPhone在越狱后功能更加
强大,用户可以获得更多的权限,但同时也会破坏设备的整体安全架
构。越狱后的系统禁用了代码签名机制,这样就使得黑客的攻击更加简
单。用户一旦下载了恶意软件并运行了未签名的代码,iPhone手机就很
有可能会受到攻击。例如,为设备增加系统实用程序,允许安装以Root
用户权限运行的应用等行为。
越狱后的系统在禁用代码签名机制的同时,也关掉了强有力的
DEP(Data Execution Prevention,数据执行保护)功能。这样一来ROP
有效载荷就可以禁用DEP,并在越狱过的设备上写入和执行shellcode。新的未签名应用是不受沙盒限制的,黑客可以利用这一特性继续对
iPhone进行破坏,iPhone的安全机制也就被破坏了。
很多用户在越狱后安装了SSH服务器却忽略了修改默认Root密码,使得任何连接到这种设备的人都能用Root权限远程控制这些设备,从而
给Ikee蠕虫的攻击制造了机会。某台手机受到Ikee蠕虫病毒感染后,会
获取手机的Root权限;获取该权限后,病毒就可以复制用户的电子邮
件、名片夹、短信、记事本、照片、影片、音乐档案等资料,以及所有
iPhone应用程序所储存的资料。除此之外,Ikee蠕虫病毒还会在网络上
继续搜索具有上述特征的手机,扩大攻击范围。
Ikee蠕虫病毒有多个变种,每一个变种都有不同的特征。如Ikee.A
在登录之后会执行一些基本操作,如关闭用户访问的SSH服务器、改变
手机的墙纸等。Ikee.A还可以将蠕虫二进制代码复制到设备本地,使被
感染的设备扫描和感染其他设备。Ikee.B之类的后续变种引入了类似僵
尸网络的功能,通过命令和控制信道来远程控制被感染的设备。
2.Ikee攻击的防范技巧
防范Ikee攻击最有效的方法就是不要将自己的iPhone手机越狱,依
靠iOS系统整体的安全架构就可以防范绝大多数的攻击。如果非要将
iPhone手机越狱,就要注意以下几点。
(1)正确配置越狱后的iPhone手机
Ikee蠕虫病毒感染的主要原因就是用户对越狱后的iPhone配置不
当。用户在安装SSH后必须马上修改越狱设备上的默认证书,即登录账
号和口令,并确保只连接到可信任的网络。(2)及时关闭不用的网络服务
像SSH之类的网络服务在需要时才开启。对网络服务的管理可以通
过SBSetting来实现,SpringBoard可以用来快速开启或关闭像SSH之类的
功能。
(3)及时升级系统更新补丁
iOS系统的越狱版本会随着原版系统的更新而更新,用户在使用越
狱版本时要确保当前使用的是最新版本,同时也要及时安装由越狱社区
提供的针对漏洞的补丁。
2.7.2 中间人攻击与防范技巧
1.中间人攻击原理
中间人攻击,简称MITM攻击(Man-in-the-Middle Attack),是一
种“间接”的攻击方式。在实施攻击时,黑客将一台计算机放置在两台相
互通信的主机的逻辑链路中间,这台计算机就被称为“中间人”。如上图所示,Host B就是中间人。当Host A和Host C通信时,Host
B来为其“转发”,也就是说Host A和Host C之间并没有真正意义上的通
信,它们之间的信息传递都是由Host B作为中介来完成的。当Host A和
Host C通信时并不知道Host B的存在,它们以为是在跟对方直接通信。
这样Host B在中间就成为了一个转发器,不仅可以窃听A、B的通信,还
可以对信息进行篡改再传给对方。
当然Host B在获取Host A和Host C之间传递的数据后并不一定要对
其进行篡改,还可以备份两者传递的数据,这种被动方式能很好地隐藏
攻击者,不容易被发现。
2.中间人攻击的常见攻击手法
(1)DNS欺骗
DNS服务器的作用就是将用户请求的域名转换成IP地址,然后用户
使用转换后的IP地址与另一台主机通信。黑客可以入侵到DNS服务器
中,将用户请求访问的域名解析成自己的IP地址,这样用户就会把数据发送到黑客的主机上。除了入侵DNS服务器外,黑客还可以控制路由器
实现攻击。黑客控制路由器后可以修改路由表,将用户发往目的主机的
数据通过黑客主机对应的路由器端口转发,使数据发送到黑客所在的网
络中,这样黑客就能很容易地获取到用户的数据信息。黑客获取到用户
信息后就可以备份后转发,或者篡改后再转发到目的主机。
(2)ARP缓存中毒攻击
ARP缓存中毒攻击利用了ARP协议中存在的缺陷,使用ARP的设备
则可以接受任何时间的更新。这意味着任何机器都可以向另一台主机发
送ARP回复数据包,并迫使主机更新其ARP缓存。ARP协议的这一特点
有别于其他协议,如DNS协议可以配置为仅接受安全动态更新。如果只
有发出的ARP回复数据包而没有对应的请求数据包,那么这个ARP回复
数据包就是一个无效ARP。黑客可以向被攻击主机发送一些无效ARP,被攻击主机收到无效ARP时会认为此时正在与黑客主机通信,从而会把
数据传输给黑客主机。
(3)会话劫持
会话劫持结合了嗅探和欺骗等技术。我们可以这样理解,会话劫持
就是在一次正常的通信过程中,攻击者作为第三方参与到其中,或者是
在数据里加入其他信息,甚至将双方的通信模式暗中改变,即从直接联
系变成有攻击者参与的联系。
当然我们还可以将会话劫持理解为攻击者把自己插入两台通信主机
之间,并设法在其间的数据通道中加入代理机器,就像是在两台通信主
机间加入“中转站”,这个代理机器就是攻击者的主机。这样可以干涉两
台机器之间的数据传输,例如监听敏感数据、替换数据等。由于攻击者已经介入其中,所以能轻易知道双方传输的数据内容,还能根据自己的
意愿去改变它们。这个“中转站”可以是逻辑上的,也可以是物理上的,关键在于它能否获取到通信双方的数据。常见会话劫持攻击方式有:
HTTP会话劫持,HTTPS会话劫持,SMB会话劫持。
3.FOCUS 11的中间人攻击
Stuart McAfee和McAfee TRACE团队在2011年拉斯维加斯McAfee
FOCUS11会议上演示了一系列入侵,这些演示中包括针对iPad的现场入
侵。
执行攻击的具体过程是,为MacBook Pro计算机安装和设置两个无
线网卡,然后配置其中一个网卡来作为恶意无线接入点(WAP)。这
个无线接入点被分配了一个SSID,这个SSID类似会议中合法的无线接
入点SSID。这样做是为了说明用户很容易能连接到恶意的无线接入点
上。
然后配置桌面系统将所有来自那个恶意无线接入点的通信数据流转
发到一个合法的无线接入点。这使得在桌面计算机系统上运行的工具具
有了中间人通信数据流的接收和转发能力——接收或转发来自iPad的通
信数据流。在演示中还利用CVE-2011-0228 X.509证书链验证的漏洞,为SSL连接的中间人提供了证书支持。
上述设置完成后,就用iPad来浏览Gmail(在SSL协议层上)。
Gmail被加载到了iPad的浏览器中,不过邮件中增加了点东西,即iframe
中含有一个到PDF文件的链接,该文件可以用来悄悄地获取设备的Root
权限。加载的PDF与JBME 3.0 PDF相似,但经过了修改以避免改变SpringBoard的外观,如增加Cydia图标。然后使用该PDF来加载自定义
的freeze.tar.xz文件,其中包含越狱后需要的文件以及在设备上安装SSH
和VNC所需要的相应软件包。
这个入侵演示向人们展示了获取iOS设备的非授权访问也是完全可
能的,改变了人们对苹果设备以往的印象,即苹果设备对各种攻击都是
免疫的。
这种入侵综合利用了以下几种漏洞攻击技术:客户端漏洞的JBME
3.0技术、SSH证书验证漏洞的攻击技术,以及基于局域网的攻击技术。
这表明了不仅iOS可以被入侵,而且可以使用多种方法入侵。但是攻击
iOS也不是一次就能搞定的,需要利用多个漏洞发起的复杂攻击。
4.针对FOCUS 11的防范
通过上面的介绍我们了解到FOCUS 11攻击是一个复杂的过程,它
在攻击的过程中利用了一组漏洞和一个恶意无线接入点来获取受影响设
备的非授权访问权限。这是操作系统的基本组件被颠覆的事实,所以找
到技术上能够抵御此类攻击的防范方法非常困难。
此类攻击可以通过更新设备的方式防范,使其保证在最新版本。除
此之外用户还可以在无线网络设置中开启“询问是否加入网络”,在加入
网络前确认无线接入点是否安全。对于已经连接过的网络依然可以自动
加入,但是在加入新的未知网络前用户会被询问,只有在我们同意时才
会加入,从而有效避免加入恶意网络中。FOCUS 11攻击使用了一个看
似友好的无线网络名,然而却是个恶意网络。这就提醒我们,在公共场
所不要随意连接未知的无线网络。2.7.3 恶意应用程序攻击与防范
1.Handy Light和InstaStock曝光
苹果应用程序都要求有苹果公司签名,并且只能从官方的APP商店
发布和下载。所以一个应用程序在APP商店中展出前首先要交给苹果公
司审核,如果审核中发现问题,像一些会泄露用户信息如电话号码、联
系信息的情况都被检测出来,苹果公司就会拒绝该程序的提交,也就是
说应用程序将不能被分发到APP商店中。
虽然苹果公司对放入APP商店中的应用程序有严格的审核制度,但
是仍有不少攻击可以通过客户端下载的软件获取iOS的非授权访问。例
如,2010年的Handy Light软件,就是通过了苹果公司的审查并被放到了
APP商店,表面上看这是一个简单的闪光灯应用,用于选择光线的颜
色;其实它包含一个隐藏“栓套”功能,允许用户以特定的顺序点击闪光
的颜色,随后就可以让电话开启一个SOCKS代理服务器,该服务器把
一台计算机“栓套”到电话蜂窝式网络的互联网连接上。
在2011年也发生过类似的事件,著名的iOS黑客Charlie Miller提交
了一个名为InstaStock的应用程序到苹果进行审查。最终苹果公司审核
通过了这款应用程序,并放入APP商店中供用户下载。InstaStock允许用
户实时跟踪股票报价,当时有数百个用户下载了这个应用程序。在
InstaStock中隐藏的逻辑被设计用来利用iOS中的一个“零天”漏洞,该漏
洞允许应用新用户加载并执行未签名的代码。在iOS的运行代码签名验
证的情况下,这是不可能发生的。然而在iOS 4.3中,苹果引入了在一些
特殊情况下可以执行未签名代码的能力。理论上,该功能只对MobileSafari开放,并只能用于开启JavaScript的即时编译。后来的结果
显示,该功能实现上的一个错误导致该功能对所有应用程序都是开放
的,而不仅仅对MobileSafari开放。有了执行未签名代码的功能,InstaStock应用程序就能够回连到一个命令和控制服务器来接收并执行
命令,执行从“被感染”设备中获取联系人信息等类型的活动。
2.针对APP商店恶意软件的防范
苹果公司的审查制度并不是十全十美的,Handy Light和InstaStock
的例子说明了在苹果APP商店下载的应用程序并不一定都是安全的。为
了防止此类攻击,我们不要随意下载用不到的应用程序,确需下载时一
定要选择从有信誉的供应商处获取。除此之外,我们还应该保持苹果设
备的固件版本为最新版本,因为新的固件版本通常解决了可能被恶意软
件用于获取设备访问权限的问题。
2.7.4 利用应用程序漏洞攻击与防范
苹果应用程序并不像我们想象的那样安全可靠,也存在着可以被攻
击者利用的漏洞,近几年来苹果应用程序的漏洞就接连不断。本小节我
们将介绍近几年出现的一些漏洞,在带领大家认识这些漏洞的同时为大
家提一些防范建议。
1.苹果应用程序存在的漏洞
2010年一个现在归档为CVE-2010-2913的漏洞被曝光,影响了CitiMobile应用程序的2.0.2及其以下版本。这个漏洞是应用程序将与银行相
关的敏感信息存储在设备本地,如果设备被远程攻击,或者设备丢失、被偷,那么敏感信息就可能在设备中被抽取。虽然这一漏洞并未提供远
程访问,且其严重性相对较轻,但却恰好说明针对iOS的第三方应用程
序像桌面系统对应的软件一样,只要安全相关的设计存在疏忽,就会受
到攻击。
2010年11月,现在归档为CVE-2011-4211的漏洞被曝光。这个漏洞
使PayPal应用程序受到了一个X.509证书验证问题的影响。客户机与服
务器建立SSL连接时会收到X.509服务器验证书,这个证书中主题字段值
需要与服务器主机名的值相同,而该应用程序并没有对二者的值进行匹
配。这个漏洞允许一个具有局域网访问权限的攻击者成为中间人,从而
获取或修改经由PayPal应用程序的通信数据。从理论上来说,该漏洞比
Citi Mobile漏洞更严重,因为它允许在没有控制应用程序或设备的前提
下,通过局域网访问来利用这个漏洞。但在实际操作中,这个漏洞需要
获取对局域网的访问权,利用起来就会变得十分困难。
2011年9月,一个跨站脚本攻击漏洞影响了Skype应用程序的3.0.1及
其以下版本。它是第三方应用程序在不需要获取局域网访问或设备物理
访问的情况下也会被远程利用的第一个实例。该漏洞通过把JavaScript代
码嵌入发送给用户的消息中的“全名”域内,使攻击者能够访问Skype应
用程序用户的文件系统。一旦接收到一条这样的消息,嵌入的JavaScript
脚本就会被执行。如果与处理URI机制的问题相结合,就可以允许攻击
者获取用户的文件,如联系人数据库,并传输该文件到远程系统。
2012年4月,iOS上包括Facebook以及Dropbox在内的几款流行软件
受到漏洞的影响,导致与进行身份验证的数据段存在本地设备上。攻击
者可以通过一个应用(如iExplorer)来入侵设备,浏览设备的文件系统和复制文件。这种攻击方式已经被证实。之后,攻击者还可以将文件复
制到另一设备上,并且通过“借来”的证书进行登录。
2012年11月,iOS上的Instagram应用程序的3.1.2版本受到了一个信
息泄露漏洞的影响。这个漏洞允许对设备网络连接进行中间人攻击的攻
击者获取会话信息,并且能利用该漏洞来恢复或删除信息。
2013年1月,iOS上的ESPN ScoreCenter应用程序的3.0.0版本受到了
两个漏洞的影响:一个是XSS漏洞,另一个是明文认证漏洞。这个应用
程序没有对用户的输入进行审查,而且泄露了敏感数据,包括网络上未
加密的用户名及密码。
无论目标应用程序是iOS捆绑应用程序还是第三方应用程序,当要
入侵iPhone时,获取应用程序的控制都只完成了一半的工作。
由于应用程序沙箱和代码签名验证的限制,即便成功获取了对一个
应用程序的控制,要从目标设备获取信息也是相对困难的。这和传统的
桌面系统不同,在桌面系统上一旦获取了对应用程序的控制,再获取信
息的成功率就非常大,甚至可以继续攻击系统中各个应用程序的执行。
要真正攻陷并占领iPhone,应用程序级的攻击必须利用内核级的漏洞攻
击才可能奏效,对于那些期待破解iOS的人来说,这个难度相当高。富
有经验的攻击者会倾向于重新利用内核级的漏洞。不管哪种情况,iOS
默认绑定的应用程序,再加上APP商店中可以下载的超过80万种的应用
程序,这些为数众多的应用程序都提供了大量的攻击目标。所以在将
来,针对应用程序漏洞的攻击将继续成为获取iOS设备初始访问权限的
最可靠途径。
2.针对应用程序漏洞的防范一个新的漏洞出现之后,苹果公司会迅速对漏洞进行处理,将原应
用程序中的漏洞修补后发布新的版本。用户在使用苹果设备的时候要时
刻保持操作系统为最新版本的iOS系统,关注App Store的应用程序更新
提醒,及时将应用程序升级到最新版本。 技巧与问答
设置iOS应用访问权限
在桌面找到“设置”图标,单击进入设置界面。
进入设置界面后,单击“通用”选项。在通用选项中单击“访问控制”选项。
如果访问控制功能处于关闭状态,则单击“启用访问限制”选项打开
该功能。
在开启访问限制功能前需要设置访问密码,同时对密码进行确认。开启访问限制功能后我们就可以对手机中已安装的应用程序进行访
问限制的设定,在默认情况下所有的应用程序都是允许访问的,我们可
以将其关闭。如单击“相机”选项右侧的开关按钮,就可以对相机的访问
进行限制。iPhone进入安全模式
(1)将iPhone关机,然后重新启动。
(2)当屏幕出现白苹果图标时,按住音量加键直到iPhone开机。禁用应用程序访问通讯录
在设置界面单击“隐私”选项。
在隐私设置界面单击“通讯录”界面。在通讯录界面我们看到当前可以访问手机通讯录的应用程序,这时
可以通过单击应用程序右侧的开关按钮来限制这些程序对手机通讯录的
访问。————————————————————第3章 智能手机操作系统——
Android
Android操作系统由Google公司和开放手机联盟领导及开发,是一
种基于Linux的自由及开放源代码的操作系统,主要使用于移动设备,如智能手机和平板电脑。Android操作系统因其开放性强,被广泛应用
到各大手机厂商生产的智能手机中,而基于Android操作系统的应用程
序更是数不胜数。Android操作系统价格低廉,应用范围广泛,功能强
大,深受智能手机用户的青睐。它不仅可以满足用户打电话、发短信等
基本要求,还可以连接互联网满足用户的上网需求,同时还可以是一个
音乐播放器、视频播放器、照相机……Android操作系统除了具有传统
手机的功能外,还可以兼容许多应用程序,对智能手机的功能进行扩
展,例如,可以安装QQ、微信等即时聊天工具与亲朋好友保持联系,还可以安装高德地图方便我们的出行等。3.1 Android操作系统的发展历程
3.1.1 Android操作系统的发展回顾
Android系统最初的研发公司名叫Android,谷歌公司在2005将其收
购。接着,Android系统的研发工作由谷歌负责。
2007年11月5日,谷歌公司正式向外界展示了这款名为Android的操
作系统,当天还宣布将建立一个全球性的联盟组织。这个组织由34家手
机制造商、软件开发商、电信运营商以及芯片制造商共同组成。这个联
盟的主要作用就是共同支持手机操作系统的开发以及提供相应的应用软
件,共同开发Android系统的开放源代码。
2008年5月28日到29日,在Google IO大会上,谷歌提出了Android
HAL架构图。同年8月18日,Android系统获得了美国联邦通信委员会
(FCC)的批准。
2008年9月,谷歌正式发布了Android 1.0系统,这也是Android系统
最早的版本。在2008年,诺基亚占领了智能手机市场的绝大多数份额,且Symbian(塞班)系统在智能手机市场中占有绝对优势,因此谷歌发
布的Android 1.0系统并没有被外界看好,甚至有言论称谷歌最多一年就
会放弃Android系统。
2009年4月,谷歌正式推出了Android 1.5版本的操作系统。从
Android 1.5版本开始,谷歌便以甜品的名字为Android的版本命名,Android 1.5命名为Cupcake(纸杯蛋糕)。2009年9月,谷歌发布了Android 1.6的正式版,并且推出了搭载
Android 1.6正式版的手机HTC Hero(G3)。凭借着出色的外观设计以
及全新的Android 1.6操作系统,HTC Hero(G3)成为当时全球最受欢
迎的手机。Android 1.6操作系统是以Donut(甜甜圈)来命名的。
2009年10月,谷歌发布了Android 2.0操作系统,并将Android 2.0至
Android 2.1系统的版本统称为Eclair(松饼)。2010年2月,Android操作系统的驱动程序从Linux内核“状态树”上除
去。从此,Android与Linux开发主流不再相同。同年5月,谷歌正式发
布了Android 2.2操作系统,并命名为Froyo(冻酸奶)。
2010年10月,电子市场上获得官方数字认证的Android应用数量已
经达到了10万,谷歌宣布Android系统达到了第一个里程碑,即Android
系统的应用增长非常迅速。
2010年12月,谷歌正式发布了Android 2.3操作系统——Gingerbread(姜饼)。
2011年1月,谷歌称Android设备新用户每天的新增数量达到了30万
部。到2011年7月,这个数字增长到55万部,而Android系统设备的用户
总数达到了1.35亿,Android系统已经成为智能手机领域占有量最高的系
统。
2012年6月28日,在Google IO大会上发布了Android 4.1(Jelly
Bean“果冻豆”)的更新包。2014年6月25日,于Google IO 2014大会上发布Developer版
(Android L),之后在同年10月15日正式发布且命名为Lollipop(棒棒
糖)。2015年9月30日,谷歌公司在2015年秋季新品发布会上正式发布了
代号为“Marshmallow(棉花糖)”的Android 6.0。据测试,Android 6.0可
使设备续航时间提升30%。3.1.2 Android 最新版本
目前,谷歌公布的Android操作系统的最新版本为Android 6.0。根据
Android系统以往的惯例,每一代新系统往往会根据其字母代号对应一
种甜食的名称。Android 6.0操作系统也不例外,其代号为“M”,表示的
意思是“Marshmallow(棉花糖)”。针对Android 6.0版本,一个在业内
已经被热议的议题是:Android M“为工作升级而生”(Android for Work
Update)。有业内人士将这种说法解释为“Android M将把Android的强大
功能拓展至任何你所能看到的工作领域”。3.1.3 Android 最新版本新特性
(1)Android Pay
Android Pay主要用于用户的日常支付,即用户消费的时候可以通过
Android Pay功能进行支付,这样就避免了现金的使用,支付过程也更加
简单高效。
(2)指纹识别
现在指纹识别功能在中高端Android手机中已经很常见,这些功能
都是由各个厂商自行开发的,没有系统底层的支持,开发成本较高。
Android 6.0将指纹识别加入了系统层面,同时提供原生的指纹识别
API,将各厂商开发指纹识别模块的成本大大降低。不仅如此,Android
6.0提供的原生指纹识别还将大大提升Android手机在指纹识别支付中的
安全性。
(3)更完整的应用权限管理
在之前的Android版本中系统虽然提供了应用权限管理功能,但是
对于用户来说权限管理能力有限,更为深入的应用权限管理需要借助于
第三方应用来实现。为了进一步强化用户对应用程序的权限管理,Android 6.0版本将应用权限管理加入到系统层面。这样用户就可以通过
系统自带的功能管理权限,而不再需要安装第三方软件进行应用权限的
管理。
(4)锁屏下语音搜索
虽然现在许多Android智能手机在锁屏状态下都支持语音唤醒功能,但这种功能由第三方软件提供。Android 6.0版本对语音功能进行了
升级,在系统层面加入锁屏下语音搜索。这样用户就可以在锁屏状态下
通过语音的方式进行搜索,在用户体验方面有了巨大的提升。
(5)Now on Tap功能
Now on Tap功能与Google搜索紧密结合,使用户可以在不切换应用
的情况下进行搜索。例如,我们在QQ聊天中提到出行路线,这时候不
需要切换应用就可以进行谷歌搜索。
(6)App Links
通过App Links功能,Android系统能够对连接内容进行识别,并且
向网络服务器发出申请,直接使用客户端进行访问。客户端功能完备,这有利于改善用户体验,让用户在APP客户端可完成更多操作。
(7)Doze电量管理
Android 6.0自带Doze电量管理功能,在“Doze”模式下,系统会对手
机进行检测,当系统在一段时间内检测不到手机移动时,就会让应用进
入休眠状态,并且自动关闭后台以减少功耗。当屏幕处于关闭状态时,平均续航时间就会提高30%。3.2 分层认识Android系统
3.2.1 认识系统分层
对于分层的概念大家可以这样理解,把系统最低级、最抽象的部分
称为第一层,也就是通常我们所说的最底层。在最底层之上还会有第二
层、第三层……根据系统设计方案的不同,系统所分的层次也会不同。
有了分层的概念后,我们再来了解一下各层之间的关系。通常最底
层实现的功能会直接被第二层所利用,然后在最底层的基础上实现新的
功能。第二层实现的新功能同理会直接被第三层所利用,继续实现新的
功能。
3.2.2 系统架构分层的优势
系统架构之所以使用分层的思想是因为分层有许多优势,可以使分
工明确,提升系统的开发效率。系统架构分层的优势具体体现在以下几
点。
1.分散开发人员的关注
在系统开发过程中,由于采用了分层的思想,所以开发人员的分工
也会比较明确。每个开发人员在开发过程中不需要过多地考虑其他层次
的问题,只需要集中精力开发本层的功能即可。这样每层的开发人员就可以专注于本层功能的开发,开发效率也会明显地提高。
2.无损替换
在系统的各个分层之间,下层向上层提供服务,上层通过下层提供
的服务实现本层的功能。也就是说上层只关心下层提供的服务,而不关
心是由谁提供的,这样当某一层出现问题时就可以将本层替换,只要提
供的服务相同就不会影响其他层的工作,从而保持整个系统的完整性。
3.降低了系统间的依赖性
分层之后系统的各层之间只与相邻两层发生关系,即下层向上层提
供服务。某一层只需要利用下层提供的服务实现相应的功能,并向自己
的上层提供服务。因此,分层系统中的某一层最多只与两层发生依赖关
系,大大降低了系统之间的依赖性。
4.复用
分层的复用体现在某一层提供的功能可以被多个上层所利用,就好
比我们生活中的饮水机一样,只要大家需要喝水,饮水机就会被不同的
人利用,即饮水机会向不同的人提供服务。
3.2.3 Android操作系统的基本架构
Android操作系统的基本架构共分为四层,由上至下分别为:应用程序层、应用程序框架层、系统运行库层、Linux核心层。接下来的每
一个小节中将分别为大家介绍每层的作用和实现的功能。
3.2.4 应用程序层
应用程序层主要是通过一些友好的交互界面,向用户提供一些具体
的应用功能,如智能手机主界面、联系人、浏览器等。另外,我们在智
能手机上使用的各种APP也都是属于应用程序层。
3.2.5 应用程序框架层
Android操作系统的应用程序框架层包含了许多管理器,通常所说的Anroid系统开发人员大部分情况下就是负责这一部分。下面我们对这
一层中主要的部分进行简单的介绍。
(1)活动管理器
管理各个应用程序生命周期以及通常的导航回退功能。
(2)窗口管理器
管理所有的窗口程序。
(3)内容提供者
使得不同应用程序之间存取或者分享数据。
(4)视图系统
构建应用程序的基本组件。
(5)通知管理器
使得应用程序可以在状态栏中显示自定义的提示信息。
(6)包管理器
Android系统内的程序管理。
(7)电话管理器管理所有的移动设备功能。
(8)资源管理器
提供应用程序使用的各种非代码资源,如本地化字符串、图片、布
局文件、颜色文件等。
(9)位置管理器
提供位置服务。
Android操作系统的开发有这样的特点,就是开发人员可以访问核
心应用程序使用的所有API框架。在Android平台上发布的任何应用程序
都可以发布自己的功能模块,这些功能模块发布后可以被其他应用程序
所使用。由于Android操作系统具有这样的重用机制,用户就可以方便
地替换系统自带的应用程序组件。
3.2.6 系统运行库层
系统运行库层中包含了两个部分:一个是系统运行库,另一个是
Android运行时。这两个部分又包含了不同的内容。下面我们就来简单
了解一下系统运行库和Android运行时的各个部分。1.系统运行库
系统运行库是应用程序框架的支撑,在应用程序框架层与Linux内
核层之间起到了承上启下的作用。系统运行库主要由以下几个部分组
成。
(1)界面管理器
执行多个应用程序时,负责管理显示与存取操作间的互动,也负责
2D绘图与3D绘图进行显示合成。
(2)媒体框架
多媒体库,基于PacketVideo OpenCore;支持多种常用音频、视频
格式的录制和回放,编码格式包括MPEG4、MP3、H.264、AAC、ARM。
(3)SQLite
小型的关系型数据库引擎。
(4)OpenGLES
根据OpenGLES 1.0API标准实现的3D绘图函数库。
(5)FreeType
提供点阵字与向量字的描绘与显示。
(6)WebKit一套网页浏览器的软件引擎。
(7)SGL
底层的2D图形渲染引擎。
(8)SSL
在Andorid上通信过程中实现握手。
(9)Libc
从BSD继承来的标准C系统函数库,专门为基于embedded linux的设
备定制。
2.Android运行时
Android应用程序采用Java语言进行编写,这些应用程序在系统中运
行的时候依赖于核心库和Dalvik虚拟机两部分。
(1)核心库
核心库提供了Java语言API中的大多数功能,同时也包含了Android
的一些核心API,如android.os、android.net、android.media等。
(2)Dalvik虚拟机
Android操作系统会在应用程序运行时为每一个应用程序分配一个
专有的进程,这些进程需要运行在不同的Dalvik虚拟机中。当然,这些
进程不是使用同一个Dalvik虚拟机实例,而是每个进程都会有自己的实例,且会在自己的实例中执行。Dalvik虚拟机是一种基于寄存器的Java
虚拟机,而不是传统的基于栈的虚拟机,并进行了内存资源使用的优化
以及拥有支持多个虚拟机的特点。
3.2.7 Linux核心层
Linux的核心层属于Android操作系统的最底层,主要向上层提供驱
动服务,如显示驱动、摄像头驱动、键盘驱动、Wi-Fi驱动、音频驱
动、闪存驱动等,上层系统通过这些驱动来调用手机硬件的各个部分。3.3 Android安全模型
Android系统安全模型在应用层面使用显式定义且经用户授权的应
用权限控制机制等,系统化地规范并强制各类应用程序的行为准则与权
限许可;引入应用程序签名机制,定义应用程序之间的信任关系与资源
共享的权限。从技术架构角度来看,Android安全模型基于强健的Linux
操作系统内核安全性,通过进程沙箱机制隔离进程资源,并且辅以独特
的内存管理技术与安全高效的进程间通信机制,适应嵌入式移动端处理
器性能与内存容量的限制。
Android安全模型主要提供以下几种安全机制。
1.进程沙箱隔离机制
Android应用程序在安装时被赋予独特的用户标识(UID),并永久
保持;应用程序及其运行的Dalvik虚拟机运行于独立的Linux进程空间,与UID不同的应用程序完全隔离。
2.应用程序签名机制
应用程序包(.apk文件)必须被开发者打上数字签名;同一开发者
可指定不同的应用程序共享UID,进而运行于同一进程空间共享资源。
3.权限声明机制应用程序需要显示声明权限、名称、权限组与保护级别。不同的级
别要求应用程序行使此权限时的认证方式不同:Normal级申请即可用;
Dangerous级需在安装时由用户确认才可用;Signature与
Signatureorsystem则必须是系统用户才可用。
4.访问控制机制
传统的Linux访问控制机制确保系统文件与用户数据不受非法访
问。
5.进程通信机制
Binder进程通信机制提供基于共享内存的高效进程通信;Binder基
于Client-Server模型,提供类似COM与CORBA的轻量级远程进程调用
(RPC);通过接口描述语言(AIDL)定义接口与交换数据的类型,确保进程间通信的数据不会溢出越界,以污染进程空间。
6.内存管理机制
基于标准Linux的低内存管理机制(OOM),设计实现了独特的低
内存清理(LMK)机制,将进程按重要性分级、分组。当内存不足
时,自动清理最低级别进程所占用的内存空间;同时,引入不同于传统
Linux共享内存机制的Android共享内存机制Shmem,具备清理不再使用
共享内存区域的能力。
Android安全模型的设计特点可概括为以下内容。① 采用多层架构,在保护用户信息安全的同时,保证开放平台上
各种应用的灵活性。
② 既允许经验丰富的开发者充分利用安全架构的灵活性,也为熟
悉安全架构的开发者提供更多可以信赖的默认安全性设置。
③ 鼓励用户了解应用程序是如何工作的,并鼓励用户对所持设备
进行安全控制。
④ 不但要面对恶意软件的威胁,而且还要考虑第三方应用程序的
恶意攻击。
⑤ 安全保护与风险控制同在,在安全防护失效时,尽量减少损
害,并尽快恢复使用。3.4 Android组件的基本功能
组件是对数据和方法的简单封装,开发人员利用组件可以提高开发
效率。Android操作系统为开发人员提供了四种组件,即活动、服务、广播接收器和内容提供商。活动组件用于表现功能;服务组件提供后台
运行服务,不提供用户界面;广播接收器用于接收广播;内容提供商可
支持在多个应用中存储和读取数据,相当于数据库。
3.4.1 活动
活动为用户的操作提供可视化界面,可用于设计良好的人机交互界
面,提升用户体验。我们在使用手机的时候,见到的一些包含说明的照
片、菜单项列表等都使用了活动。一个短消息应用程序可以包括一个用
于显示作为发送对象联系人的列表的组件,一个给选定的联系人写短信
的Activity以及翻阅以前的短信和改变设置的组件。虽然不同的组件可
以内聚成一个用户界面,但这其中每个组件都与其他的保持独立。
应用程序中包含的活动个数是不固定的,一个应用程序可以只有一
个活动,也可以同时包含多个活动。一个应用程序对组件的需求,取决
于这个应用程序要实现的功能。一般情况下,我们在打开一个应用程序
的时候总会有一个主界面出现,其他界面都需要从主界面跳转,这样的
界面和功能就是由活动来实现的。
使用组件设计一个用户界面的时候,每个活动都会被分配一个默认
的窗口进行绘制。这个窗口既可以是满屏显示的,也可以是一个在最上层显示的浮动窗口。一个活动也可以使用多个窗口,比如在一个界面运
行过程中弹出的一个与用户交互的小对话框,或是当用户选择了屏幕上
特定项目后显示的必要信息。
窗口显示的可视内容是由一系列视图构成的,这些视图均继承自
View 基类。每个视图均控制着窗口中一块特定的矩形空间。父级视图
包含并组织它子视图的布局。叶节点视图位于视图层次最底端,在它们
控制的矩形中进行绘制,并对用户操作做出响应。所以,视图是活动与
用户进行交互的界面。
3.4.2 服务
每个服务都继承自Service基类。服务比较抽象,不像活动那样有可
视化的界面,用户看不到它,但它可以在后台运行。例如,我们在聊
QQ的时候,后台可以为我们提供音乐播放的服务。另外,服务还可以
为活动提供必要的运算结果。
用户在播放音乐的时候,往往会有一个或多个活动来支持用户选择
并播放歌曲。当用户在音乐播放过程中需要切换应用程序的时候,由于
界面转换后活动就会不同,所以音乐播放这个任务本身不应该为任何
Activity所处理。为了保证用户在切换应用程序后音乐还能继续播放,媒体播放器Activity应该启用一个运行于后台的服务,使得播放音乐的
活动消失后音乐播放服务仍然可以在后台运行。
Android系统提供的组件都运行于应用程序进程的主线程内,服务
也一样。所以它不会对其他组件或用户界面有任何干扰,一般会派生一
个新线程来进行一些耗时任务。开启Service有两种方式。
1.Context.startService
Service会经历onCreate→onStart(如果Service还没有运行,则
Android先调用onCreate,然后调用onStart;如果Service已经运行,则
只调用onStart,所以一个Service的onStart方法可能会重复调用多
次);StopService的时候直接onDestroy,如果是调用者自己直接退出而
没有调用StopService的话,Service会一直在后台运行。该Service的调用
者再启动起来后,可以通过stopService关闭Service。
多次调用Context.startservice不会嵌套,所以无论同一个服务被启
动了多少次,一旦调用Context.stopService或者StopSelf,都会被停
止。补充说明:传递给StartService的Intent对象会传递给onStart方
法。调用顺序为:onCreate→onStart(可多次调用)→onDestroy。
2.Context.bindService
Service会经历onCreate→onBind,onBind将返回给客户端一个
IBind接口实例,IBind允许客户端回调服务的方法,比如得到Service运
行的状态或其他操作。这个时候会把调用者(Context,例如Activity)
和Service绑定在一起,Context退出了,Srevice就会调用
onUnbind→onDestroyed相应退出,所谓绑定在一起就共存亡了。
3.4.3 广播接收器广播接收器,顾名思义这是一个专注于接收广播通知信息的组件,并对接收的广播消息做出对应处理。所有的接收器均继承自
BroadcastReceiver基类。很多广播是源自于系统代码的,比如通知时区
改变、电池电量低、拍摄了一张照片或者用户改变了语言选项。应用程
序也可以进行广播,比如通知其他应用程序一些数据下载完成并处于可
用状态。
虽然广播接收器没有用户界面,但是它可以启动一个活动来响应它
们收到的信息,或者用NotificationManager来通知用户,通知可以用很
多种方式来吸引用户的注意力,比如我们接收到QQ消息时会有声音提
示、振动提示和提示灯闪烁,且QQ消息的内容还会显示在通知栏中。
在Android操作系统中,Broadcast是一种广泛运用在应用程序之间
传输信息的机制。而BroadcastReceiver是对发送出来的Broadcast进行过
滤接受并响应的一类组件,可以使用BroadcastReceiver来让应用对一个
外部的事件做出响应。这是非常有意思的,例如,当电话呼入这个外部
事件到来的时候,可以利用BroadcastReceiver进行处理。例如,当成功
下载一个程序的时候,仍然可以利用BroadcastReceiver进行处理。
BroadcastReceiver不能生成UI,也就是说对于用户来说不是透明的,即
用户是看不到的。BroadcastReceiver通过NotificationManager来通知用户
这些事情发生了。BroadcastReceiver既可以在AndroidManifest.xml中注
册,也可以在运行时的代码中使用Context.registerReceiver进行注册。
只要是注册了,当事件来临的时候,即使程序没有启动,系统也会在需
要的时候启动程序。当然,各种应用还可以通过使用
Context.sendBroadcast将它们自己的Intent Broadcasts广播给其他应用程
序。3.4.4 内容提供者
内容提供者是Android提供的第三方应用数据的访问方案。在
Android系统中,一个应用程序所使用的数据库、文件等内容,都是不
允许其他应用程序直接访问的,除非这些数据被放置在了SD卡中。在
Android系统中并不是把每个应用程序绝对地孤立起来,而是可以使用
内容提供者进行相互访问。
内容提供者继承于ContentProvider基类,为其他应用程序取用和存
储它管理的数据实现了一套标准方法。然而,应用程序并不直接调用这
些方法,而是使用一个 ContentResolver对象调用它的方法作为替代。
ContentResolver可以与任意内容提供者进行会话,与其合作来对所有相
关交互通信进行管理。内容提供者将一些特定的应用程序数据供给其他
应用程序使用,数据可以存储于文件系统、SQLite数据库或其他方式。3.5 使用备份保护数据
为了防止我们手机中存储的数据丢失或者遭到破坏,对我们的工作
和生活造成严重的影响,我们可以通过备份的方式将手机中的数据转存
到其他地方。这样手机中的数据即使丢失或遭到破坏,我们也可以很快
地将数据复原,避免因数据丢失或遭到破坏给我们带来损失。
3.5.1 手动备份
手动备份的方法很简单,只需要一根与手机配套的数据线和一台计
算机即可。我们将手机与计算机用数据线连接起来,然后用计算机就可
以直接读取手机中存储的数据。这样我们就可以将手机中的数据备份到
计算机硬盘上,也可以把手机中的数据存储到计算机的网络云盘中,使
之更加安全。下面我们就来简单地演示一下将手机中的数据备份到计算
机硬盘中的方法。
首先我们使用数据线将手机与计算机连接起来,如果手机是首次连
接计算机,还需要等待计算机安装驱动。安装驱动的过程很快,只需要
几秒钟的时间。驱动安装完成后,就可以进行下面的操作了。
驱动安装完成后,手机系统会提示手机已经通过USB连接到计算
机。这时我们就可以通过单击屏幕下方的“打开USB存储设备”按钮,在
计算机和Android手机的SD卡之间进行复制文件的操作。
单击“打开USB存储设备”按钮后,系统会提示如果打开USB存储设备,某些正在使用的应用程序可能会停止,并且在USB存储设备关闭前
都无法使用。这里我们单击“确定”按钮,继续进行下面的操作。
确定要打开USB存储设备后,系统就会将USB存储设备打开。系统
提示USB存储设备正在使用中,这时就可以在计算机和SD卡之间复制
文件了,如左下图所示。
我们在计算机桌面上找到“计算机”图标,双击打开计算机,如右下
图所示。在计算机中我们可以看到计算机硬盘的存储信息,在“有可移动存
储的设备”一栏我们可以看到有一个存储磁盘的名称为“GIONEE”,这就
是我们手机中的SD卡。双击GIONEE磁盘,可查看SD卡中的存储信
息。在GIONEE磁盘中我们可以看到SD卡中存储的所有数据,并对其中
的数据进行任意的复制。例如,想要把SD卡中的照片备份到计算机
上,就可以找到存储照片的文件夹。一般来说,手机中的照片都是存储
在“DCIM”文件中的。我们选中“DCIM文件夹”单击右键,在弹出的菜单列表中单击“复
制”选项。将DCIM文件夹复制后,我们还需要在计算机硬盘中创建一个存放
备份的文件夹,这样便于以后的管理。在这里,我们新建一个名字叫
作“手机备份”的文件夹。
双击“手机备份”文件夹,进入文件夹后单击右键,在弹出的菜单列
表中单击“粘贴”选项,刚才复制的DCIM文件夹就会被粘贴到“手机备份”文件夹中了。
由于复制文件的速度有限,所以在复制的文件较大时可能需要我们
等待一段时间。文件的所有内容都粘贴完成后,就可以在“手机备份”文
件夹中看到DCIM文件夹,如左下图所示。这样我们的照片就全部备份
到计算机硬盘中了。
将我们的数据备份完成后,单击手机中的“关闭USB存储设备”按钮
将USB存储设备关闭,然后拔掉手机与计算机相连的数据线即可,如右
下图所示。3.5.2 利用91助手备份
除了可以对手机数据进行手动备份外,还可以借助于第三方软件进
行备份。这种备份操作都很简单,只需在计算机和手机上安装相应的客
户端软件即可。
首先,我们到91助手官网下载计算机端应用程序,91助手官网提供
了一键安装到计算机的功能,我们只需单击“安装到计算机”按钮便可将
91助手直接安装到计算机上。91助手安装完成后打开,我们可以看到它提供了两种设备连接方
式:一种是利用Wi-Fi连接,另一种是利用USB数据线连接。在没有无
线热点的情况下我们可以选择USB数据线连接的方式,单击“使用USB
线连接计算机”选项,然后将手机与计算机用USB数据线连接,如左下
图所示。
使用USB数据线将手机与计算机连接之后,91助手会自动在手机端
下载安装百度连接助手,这是手机端的连接软件,如右下图所示。手机
连接助手安装完成后会自动运行,这样91助手就可以读取手机中的信息
了。91助手连接到手机后,其主界面右侧会显示手机屏幕当前显示的内
容。我们在91助手上面的菜单栏中单击“我的设备”菜单选项,在左侧的
菜单中单击“备份还原”选项,这时界面右侧会出现手机中可以备份的所
有内容。我们可以对要备份的内容进行选择,然后修改备份的位置。
在“备份到”标签后91助手给出了默认的备份路径,单击后面的“修改”按
钮可以自定义备份路径。备份路径设置完成后,单击下面的“备份”按钮
即可备份。在备份的过程中我们要保持设备的连通性,如果设备断开将导致备
份失败。备份完成后,91助手会提示备份完成,并将备份的内容反馈给用
户。
由于在备份前我们将备份路径设置成了保存到桌面,这时就可以在
桌面上看到手机备份的文件夹。3.6 Android系统刷机
3.6.1 Android系统刷机常识
Android系统在使用过程中会出现一些Bug,系统开发厂商会将这些
Bug修复,对现有版本进行升级。刷机就是为了更新手机中的操作系统
版本,修补旧版本中存在的一些Bug。另外,通过刷机还可以在不改变
手机硬件的情况下提升手机的功能。
刷机并不是每次都能成功,造成刷机失败的原因有多种,最常见的
有刷机文件与手机型号不匹配、刷机过程中电量不足、手机自动关机、手机内存不足和手机硬件损坏等。
我们在刷机之前需要对刷机使用的名词有一定的了解,这将有助于
我们刷机成功。
1.固件、刷新固件
固件是指固化的软件,它是把某个系统程序写入特定的硬件系统中
的flash ROM。手机固件相当于手机的系统,刷新固件即用新固件中的
系统替换现有的系统。
2.固件版本固件版本是指官方发布的固件的版本号,里面包含了应用部分的更
新和基带部分的更新。通常固件的版本号越大,版本就越新。
3.ROM(包)
ROM全称为Read-Only Memory,即只读存储器。只读存储器的特
点就是只能读取存储器中的数据而不能对其进行写入操作,一旦将资料
储存就无法改变或删除。通常用在不需经常变更资料的电子或计算机系
统中,并且资料不会因为电源关闭而消失。
4.Recovery(恢复模式 )
Recovery为刷机提供了一个可视化的界面。就像我们为计算机重装
系统的时候进入的DOS界面或者winPE,安装了Recovery相当于给系统
安装了一个DOS界面。在Recovery界面,可以选择安装系统、清空数
据、ghost备份系统、恢复系统等。
5.Root
Root权限是手机中用户管理的最高权限,相当于计算机中的
Administrator用户权限 。Root是Android系统中的超级管理员用户账户,使用该账户可以对手机操作系统进行任意的操作。在刷机过程中必须获
得Root权限,否则将不能对手机系统进行刷机操作。
6.RADIORADIO简单地说是无线通信模块的驱动程序。ROM是系统程序,RADIO负责网络通信;ROM和RADIO可以分开刷,互不影响。如果你
的手机刷新了ROM后有通信方面的问题,可以刷新RADIO试一试。
7.SPL
SPL全称是Second Program Loader,即二级程序加载器,负责装载
操作系统到RAM中。另外SPL还包括许多系统命令,如mtty中使用的命
令等。SPL损坏后,还可以用烧录器重写。
8.金卡
在刷机的过程中要保证手机的销售地和升级程序一致,否则会被提
示客户ID错误,刷机操作中断。为了保证能够刷机成功,可以使用金卡
来避免这种情况的发生。金卡实际上就是在一张普通的TF卡上写入一些
引导信息,使得升级程序或者说你本机 SPL的检测跳过对客户ID的检
查,从而避免刷机系统与手机场地不同导致刷机失败,使非官方版本的
机器得以顺利升级。
3.6.2 Android系统刷机教程
Android手机刷机可以借助于第三方软件来完成。现在市场上流行
的刷机软件有许多种,如刷机精灵、奇兔刷机、刷机大师等。在这里,我们以刷机精灵为例,简单介绍一下刷机的方法。刷机前我们先到刷机精灵官网下载计算机端刷机精灵应用程序,然
后在刷机精灵官网单击“下载刷机精灵”按钮就可以直接将刷机精灵安装
包下载到计算机上。
将刷机精灵安装包安装到计算机上,然后打开刷机精灵,在主界面
我们会看到提示,要求我们使用USB数据线连接设备。这时,我们将手
机通过USB数据线与计算机连接。连接成功后,刷机精灵主界面会显示当前连接设备的名称,并提供
相应的刷机固件。我们可以单击“一键刷机”按钮使用刷机精灵推荐的固
件刷机,也可以单击“更多”按钮选择其他可用的固件。
单击“更多”按钮后,刷机精灵会显示当前手机可用的刷机固件版
本。我们可根据自己的需要选择相应的固件,然后单击后面的“一键刷
机”按钮进行刷机操作。3.7 Android 系统获取Root权限
Root权限属于系统权限的一种,是Linux和Unix系统中的超级管理
员用户账户。由于Android系统是基于Linux内核开发的操作系统,所以
在Android操作系统中Root权限也是最高的权限,获取Root权限后就可
以对Android操作系统进行任意的操作。
3.7.1 Root原理简介
Root权限往往被视为一种黑客技术,因为在手机厂商生产手机的时
候并没有开放Root权限,这样做主要是为了保障操作系统的安全。除了
个别品牌的手机开放了Root权限外,其他手机的Root权限获取都需要借
助于系统的漏洞来实现。因此,由于不同厂商生产的手机系统漏洞不
同,获取Root权限的方式也会有所不同。Root的基本原理就是利用系统
漏洞,将su和对应的Android管理应用复制到system分区。常见的系统
漏洞有zergRush、Gingerbreak、psneuter等。不过,不管采用什么原理实
现Root,最终都需要将su可执行文件复制到Android系统的system分区
下,并用chmod命令为其设置可执行权限和setuid权限。为了让用户可以
控制Root权限的使用,防止其被未经授权的应用所调用,通常还有一个
Android应用程序来管理su程序的行为。
3.7.2 获取Root权限的优点与缺点
我们在看待获取Root权限这个行为的时候应该看到它的两面性,即对手机进行Root权限获取既有好处也有坏处。下面我们就来看一下获取
Root权限的优点和缺点。
1.获取Root权限的优点
① 获取Root权限后用户就可以对手机系统进行任意的操作,这样就
可以备份系统。
② 为了使系统更加符合用户需求,用户可以在获取Root权限后修改
系统的内部程序。
③ 可以将安装在手机中的应用程序转移到SD卡上,减轻手机负
担;还可以删除后台无用程序,增加手机运行内存,加快手机运行速
度。
④ 可以通过直接替换系统内的文件或者刷入开发者修改好的zip安
装包的方法,修改手机的开机画面、导航栏、通知栏、字体等。
⑤ 可以刷入第三方的Recovery,对手机进行刷机、备份等操作。
⑥ 可以汉化手机系统,使系统使用中文显示,以更符合我们的习
惯。
2.获取Root权限的缺点
① 获取Root权限后,用户可能会误删系统自带软件,导致手机系统
崩溃。② 随意授予软件管理权限可导致手机资料泄露。
③ 手机一旦获取Root权限就不能进行OTA升级,也不能享受保修
服务。
④ 增大被攻击者攻击的概率。
3.7.3 获取Root权限的方法
在使用智能手机的时候可能会需要获取Root权限,这里我们以刷机
精灵为例来简单地介绍一下获取Root权限的方法。
首先要去刷机精灵官网下载刷机精灵安装包,在刷机精灵主界面可
以单击“下载刷机精灵”按钮,将刷机精灵安装包下载到计算机上。
将下载的刷机精灵安装包安装到计算机上,然后使用USB数据线将
手机和计算机连接起来。打开刷机精灵,我们在主界面可以看到刷机精
灵功能栏有“一键Root”功能,单击“一键Root”选项开始对手机进行Root
权限获取。单击“一键Root”选项后刷机精灵启动了Root精灵程序,这时单
击“立即进入”按钮运行Root精灵。
运行Root精灵后,Root精灵自动连接手机,并检测手机当前是否处
于Root状态。Root精灵对手机Root情况检测完毕后,会将结果反馈给我们。如果
我们的手机尚未获取Root权限,就可以单击“一键安全Root”按钮开始对
手机Root权限进行获取。
Root精灵在获取Root权限的过程中手机会自动重启,这属于正常现
象。同时手机端会自动安装相应的Root应用程序,这个过程需要我们等
待几分钟。等待一段时间后Root精灵就会将Root结果反馈给我们,Root成功后
Root精灵会提示我们已经成功获取Root权限。
3.7.4 避免一键Root恶意软件的危害
为了方便获取Root权限,采用一键Root的方式确实是一个不错的选
择。如今市面上一键Root软件非常多,但并不是每一款都是安全的。在使用第三方软件进行一键Root操作的时候,很可能被第三方软件攻击。
一键Root过程对我们来说是透明的,我们不知道第三方软件获取Root权
限的过程,也不能保证第三方软件没有在获取Root权限的同时对手机做
其他的改动。所以说,一键Root的方式和进行一键Root所使用的软件都
有可能给我们的手机带来危害。
为了避免一键Root恶意软件带来的危害,我们可以从以下几个方面
入手。
① 不使用手机端一键Root,而使用计算机端大品牌Root软件进行
Root,如刷机精灵等Root破解工具。
② 不从来历不明渠道下载应用,且一定要选择官方认证应用版本
下载。
③ 刷机时不刷入来历不明的ROM包,应在带有ROM安全检测的
ROM市场下载ROM,如ROM之家等。
④ 使用手机需注意,当手机提示一些应用获取不需要权限时应禁
止,比如提示用户获取位置信息、短信权限等。3.8 认识Android模拟器
Android模拟器是一个能在Windows平台模拟Android手机系统的模
拟器。我们通过Android模拟器能在计算机上模拟出Android手机运行环
境,这给我们提供了免费体验Android手机的机会。同时Android模拟器
也可以应用到Android应用程序开发中,Android开发人员可以将新开发
的应用程序放到Android模拟器中测试运行效果。
Android模拟器能够模拟除了接听和拨打电话外的所有移动设备上
的典型功能和行为。Android模拟器提供了大量的导航和控制键,你可以通过鼠标或键盘点击这些按键来为自己的应用程序产生事件;同时,它还有一个屏幕用于显示Android自带应用程序和自己的应用程序。为
了便于模拟和测试应用程序,Android模拟器允许你的应用程序通过
Android平台服务调用其他程序、访问网络、播放音频和视频、保存和
传输数据、通知用户、渲染图像过渡和场景。Android模拟器同样具有
强大的调试能力,例如,能够记录内核输出的控制台、模拟程序中断
(如接收短信或打入电话)、模拟数据通道中的延时效果和遗失。3.9 Android平台常见恶意软件及
病毒的分类
3.9.1 ROM内置类恶意软件病毒
(1)a.privacy .ju6.[伪Google升级]
该病毒安装后没有启动图标,一旦激活后台便自动下载安装其他应
用,同时卸载手机应用,这不但消耗用户流量,还可能给用户带来一定
的经济损失以及进一步的安全隐患。该病毒还会上传用户数据,跟踪用
户位置,造成用户隐私泄露。
(2)a.payment.pmx.[刷机吸费大盗]
该病毒安装后没有启动图标,一旦激活便在特定的时间向某些特定
的SP号码发送扣费信息,并删除相关的反馈信息,让用户在不知情的情
况下遭受严重的经济损失。除此之外,该病毒还会自动连接网络,读取
用户信息并且上传用户信息,造成用户个人隐私的泄露。
(3)a.payment.dg
该病毒与a.payment.pmx.[刷机吸费大盗]病毒基本相同,唯一的
区别在于a.payment.dg读取并且上传用户手机IMEI、IMSI和手机号码等
信息,造成用户个人隐私的泄露。
(4)a.privacy .devicestatservice.[盗密诡计]该病毒通过刷ROM的形式安装到用户手机,安装后无启动图标,一旦激活便盗取包括ICCID、IMEI、IMSI、MSISDN等在内的信息,给
用户的隐私造成威胁。
(5)a.payment.dg.a.[系统杀手]
该病毒被内置到ROM内,具有系统最高权限,不但不能通过正常
途径卸载,而且能够阻止指定安全软件被安装,同时发送大量的扣费短
信并删除指定号码发送的短信,给用户带来严重的经济损失。
3.9.2 破坏类恶意软件病毒
(1)a.privacy.atools.[万能定时器]
该病毒伪装成一款定时软件,并在运行时自动获取Root权限,可能
联网下载并静默安装其他恶意应用,对用户手机安全造成威胁。
(2)a.privacy .dbsoft.[宅男必备]
该病毒伪装成一款写真集软件诱导用户下载安装,激活后利用
Android系统漏洞获取Root权限,通过终端设备无提示强制联网,下载
并静默安装其他恶意软件。这不仅消耗用户数据流量,有可能给用户带
来高额的流量费用,而且有可能影响手机或其他软件的正常运行和使
用。
(3)a.privacy.mmainservice.a
该病毒经常伪装成系统软件,启动后从后台服务器静默下载子包,在破解Root权限后进行静默安装。这一系列动作都在用户不知情的情况
下完成,给用户的手机安全带来严重威胁。
(4)a.privacy.safesys.[Root破坏王]
该病毒通常伪装成某些热门小型应用,在使用过程中会弹出Root权
限授予请求。如果被授予了Root权限,则在后台下载其他恶意程序并静
默安装,对用户手机安全造成威胁。
(5)a.privacy.AppleService
该病毒经常伪装成游戏软件,并开机自动启动,启动后获取Root权
限,以实现静默安装病毒子包,给用户的手机安全带来严重威胁。
3.9.3 吸费类恶意软件病毒
(1)a.payment .fzbk.[吸费海盗王]
此病毒嵌入一款国外著名的游戏软件里,散布在几个大的论坛与电
子市场上。另外,病毒发作时也是隐蔽的短信扣费,扣费指令与发送时
机由云端配置。但这个病毒在扣费成功后,还会向固定的几个手机号码
发送扣费手机的IMEI号等信息,部分存在分成对账的可能。
(2)a.payment.mj.[麻吉吸费木马]
该病毒以正常软件名义诱导用户下载安装,一旦激活便试图向多个
以106开头的号码发送信息,订购SP高额业务,同时屏蔽运营商的订购
短信,使用户在无法察觉的情况下遭受经济损失。(3)a.payment.smshider.[美女勾魂吸费大盗]
该病毒以“美女勾魂”软件名义诱导用户下载安装,一旦激活就会
获取用户的IMEI号、手机号等信息上传,并且会发送短信订购某些收费
SP业务,同时删除发送信息,不让用户发现。这很可能给用户造成严重
的经济损失以及个人隐私的泄露。
(4)a.payment .keji.[饥渴吸费魔]
该病毒捆绑正常游戏软件诱导用户安装,安装主程序后启动,提示
升级,用户一旦确认升级便安装了该病毒子包;同时该病毒尝试利用系
统漏洞获取Root权限,进行静默安装。病毒激活后,每隔数分钟向号码
10656发送信息,并屏蔽10086短信;同时,在后台拨打指定号码,该号码通过服务器远程设定,可能会消耗用户大量的资费。另外该病毒
会终止某些安全应用,给用户的手机带来严重的安全隐患。
(5)a.payment .zchess.[爱情连陷]
该病毒以“爱情”名义诱导用户下载安装,每次启动都会发送扣费
信息到以106开头的扣费端口,并删除回执短信,给用户造成严重的经
济损失;同时该病毒还收集IMSI、地理位置等用户信息上传到服务器,造成用户个人隐私的泄露。
3.9.4 窃取隐私类恶意软件病毒
(1)a.remote.Netvision
该病毒安装后无图标,并且开机自启动。病毒运行后会监听手机收件箱,并根据其他接收到的指令,将收件箱中的短信内容转发到指定号
码,给用户隐私带来严重的安全威胁。
(2)a.remote.droiddream.[隐私盗贼]
该病毒经常捆绑在一些常用软件及游戏软件上,安装后病毒会利用
Android平台上的系统漏洞获取手机Root权限 ......
本书由浅入深、图文并茂地再现了手机安全方面的相关知识。
全书主要内容有14章,分别为认识黑客与智能手机攻防、智能手机
操作系统——iOS、智能手机操作系统——Android、智能手机病毒与木
马攻防、无线通信技术之蓝牙、无线通信技术之Wi-Fi、DOS攻击、手
机游戏安全攻防、QQ账号及电子邮件攻防、智能手机加密与性能优
化、移动追踪定位与远程控制技术、保护移动支付安全、揭秘针对智能
手机 的攻击方式与安全防范、平板电脑的攻防技巧。
本书语言简洁、流畅,内容丰富、全面,适用于一般智能手机用
户、对移动设备感兴趣的人员、对移动设备维护的人员阅读和学习,也
可以作为各大计算机培训机构的辅导用书。图书在版编目(CIP)数据
黑客攻防从入门到精通.手机安全篇:全新升级版高翔编著.—北
京:北京大学出版社,2016.12
ISBN 978-7-301-27735-5
Ⅰ.①黑… Ⅱ.①高… Ⅲ.①黑客—网络防御②移动电话机—安全
技术 Ⅳ.①TP393.081②TN929.53
中国版本图书馆CIP数据核字(2016)第269933号
书 名:黑客攻防从入门到精通(手机安全篇·全新升级版)
HEIKE GONGFANG CONG RUMEN DAO JINGTONG
著作责任者: 明月工作室 高翔 编著
责任编辑: 尹 毅
标准书号: ISBN 978-7-301-27735-5
出版发行: 北京大学出版社
地 址: 北京市海淀区成府路205号 100871
网 址: http:www.pup.cn
电子信箱: pup7@pup.cn电 话: 邮购部62752015 发行部62750672 编辑部62580653
印 刷 者:
经 销 者: 新华书店
787毫米×1092毫米 16开本 21.5印张 462千字
2016年12月第1版 2016年12月第1次印刷
印 数: 1-4000册
定 价: 49.00元
未经许可,不得以任何方式复制或抄袭本书之部分或全部内容。
版权所有,侵权必究
举报电话:010-62752024 电子信箱:fd@pup.pku.edu.cn
图书如有印装质量问题,请与出版部联系,电话:010-62756370前言·全新升级版
INTRODUCTION
从2003年起,中国互联网逐渐找到了适合国情的商业模式和发展道
路,互联网应用呈现多元化局面,电子商务、网络游戏、视频网站、社
交娱乐等百花齐放。计算机技术及通信技术的进一步发展,持续推动中
国互联网用户新一轮的高速增长,到2008年已经达到2.53亿户,首次大
幅度超过美国,跃居世界首位。
从2009年开始,移动互联网兴起;互联网与移动互联网共同营造了
当前双网互联的盛世。网络已经成为个人生活与工作中获取信息的重要
手段,网络购物也已经成为民众重要的消费渠道。当前,“互联网+”的
战略布局与工业4.0的深度发展,使得国家经济发展、民众工作生活都
与网络安全休戚相关,因此,一个安全的网络环境是必不可少的。
当前最大的一个问题是广大用户对网络相关软硬件技术的掌握程度
远远不够,这就为不法分子提供了大量的可乘之机。这些不法分子借助
于计算机网络滋生的各种网络病毒、木马、流氓软件、间谍软件,给广
大网络用户的个人信息及财产带来了非常大的威胁。
为提升广大民众对于计算机网络安全知识的掌握程度,做好个人信
息财产安全的防护,我们策划了这套“黑客攻防从入门到精通”丛书,本
书为其中的《黑客攻防从入门到精通(手机安全篇·全新升级版)》分
册。
丛书书目黑客攻防从入门到精通(全新升级版)
黑客攻防从入门到精通(Web技术实战篇)
黑客攻防从入门到精通(Web脚本编程篇·全新升级版)
黑客攻防从入门到精通(黑客与反黑工具篇·全新升级版)
黑客攻防从入门到精通(加密与解密篇)
黑客攻防从入门到精通(手机安全篇·全新升级版)
黑客攻防从入门到精通(应用大全篇·全新升级版)
黑客攻防从入门到精通(命令实战篇·全新升级版)
黑客攻防从入门到精通(社会工程学篇)
本书特点
内容全面:本书首先介绍了黑客的相关知识和移动设备中各主流操
作系统的特点,为全书的学习奠定了一定的基础。后面的章节中以
Android和iOS两大操作系统为主线分别介绍了无线通信技术、木马
和病毒、移动跟踪定位等知识。本书在攻防实验的操作中涵盖了移
动攻防所需的各种攻防工具,适合各个层面、不同基础的读者阅
读。
与时俱进:本书主要适用于Android和iOS两大操作系统,并且包含
了Android6.0及iOS9版本的相关知识。虽然手机操作系统版本升级
较快,但本书中的知识适用于手机各种版本的操作系统。任务驱动:本书理论和实例相结合,在介绍完相关知识点以后,即
以案例的形式对该知识点进行介绍,从而加深读者对该知识点的理
解。
适合阅读:本书摒弃了大量枯燥文字叙述的编写方式,采用图文并
茂的方式进行编排,以大量的插图进行讲解,可以让读者的学习过
程更加轻松。
深入浅出:本书内容从零起步,步步深入,通俗易懂,使初学者和
具有一定基础的用户都能逐步提高。
读者对象
普通智能手机用户。
移动攻防爱好者。
移动安全研究人员。
移动攻防零基础读者。
移动设备维修人员。
无线通信爱好者。
移动应用开发人员。
大中专院校相关学生。
本书结构及内容
本书一共有14章,内容由浅入深,循序渐进,前后衔接紧密,逻辑
性较强。
第1章 认识黑客与智能手机攻防第2章 智能手机操作系统—iOS
第3章 智能手机操作系统—Android
第4章 智能手机病毒与木马攻防
第5章 无线通信技术之蓝牙
第6章 无线通信技术之Wi-Fi
第7章 DOS攻击
第8章 手机游戏安全攻防
第9章 QQ账号及电子邮件攻防
第10章 智能手机加密与性能优化
第11章 移动追踪定位与远程控制技术
第12章 保护移动支付安全
第13章 揭秘针对智能手机的攻击方式与安全防范
第14章 平板电脑的攻防技巧
超值赠送资源
1.黑客攻防全能视频
为了读者能全面地了解黑客方面的知识从而有效地防御黑客的不法入侵行为,本书特赠送全能教学视频,视频内容包括社会工程学、黑客
攻防入门、信息的扫描与嗅探、木马与病毒的防范、系统漏洞防范、远
程控制术、加密与解密、数据备份与恢复、移动网络安全等内容。
2.其他赠送资源
Windows系统安全与维护手册
计算机硬件管理超级手册
Windows文件管理高级手册
(140个)Windows系统常用快捷键大全
(157个)Linux基础命令手册
(136个)Linux系统管理与维护命令手册
(58个)Linux网络与服务器命令手册
黑客攻防命令手册
我们已将赠送内容上传百度网盘,在浏览器中输入下载链接,打开
链接后,在如下图所示的文本框中输入提取码便可下载赠送资源。下载
链接: http:pan.baidu.coms1eSfvxDK,提取码:ez6a。
提示
读者也可加入QQ群,在群文件中下载“资源下载地址列表”文
档,直接复制链接和密码,下载多媒体视频。(注意:我们会在群文
件中共享一些赠送资源,如百度网盘链接失效,请加入QQ群下载资
源。) 后续服务
本书由高翔编著,胡华、闫珊珊、王栋、宗立波、马琳、赵玉萍、栾铭斌等老师也参加了本书部分内容的编写和统稿工作,在此一并表示
感谢!在本书的编写过程中,我们竭尽所能地为您呈现最好、最全的实
用功能,但仍难免有疏漏和不妥之处,敬请广大读者不吝指正。若您在
学习过程中产生疑问或有任何建议,可以通过E-mail或QQ群与我们联
系。
投稿信箱:pup7@pup.cn
读者信箱:2751801073@qq.com
读者交流群:218192911(办公之家)、99839857 郑重声明
本丛书对大量计算机及移动端的攻击行为进行了曝光,可帮广大读
者做好安全防范工作。
请本丛书广大读者注意:据国家有关法律规定,任何利用黑客技术
攻击他人的行为都是违法的!目 录
CONTENTS
前言·全新升级版
第1章 认识黑客与智能手机攻防
1.1 丰富多彩的黑客文化
1.1.1 黑客的由来
1.1.2 手机黑客的由来
1.1.3 黑客守则
1.1.4 黑客常用攻击方式
1.2 黑客必备技能
1.2.1 英语阅读能力
1.2.2 使用黑客工具
1.2.3 具备编程技能
1.2.4 熟悉网络协议和工作原理
1.3 智能手机攻防基础
1.3.1 智能手机主流操作系统
1.3.2 智能手机漏洞简介
技巧与问答
第2章 智能手机操作系统——iOS
2.1 iOS操作系统的发展历程
2.1.1 iOS的发展回顾
2.1.2 iOS最新版本
2.1.3 iOS用户界面2.2 从底层剖析iOS
2.2.1 iOS的系统架构
2.2.2 iOS开发语言
2.3 刷新iOS操作系统——刷机
2.3.1 什么是刷机
2.3.2 iPhone刷机教程
2.4 iOS系统的数据备份与恢复
2.4.1 使用iCloud备份和恢复用户数据
2.4.2 使用iTunes备份和还原用户数据
2.4.3 使用91助手备份和还原用户数据
2.5 越狱让iOS更加完美
2.5.1 认识越狱
2.5.2 越狱的利与弊
2.6 苹果攻击案例
2.7 被用于iOS操作系统的攻击方式与防范技巧
2.7.1 Ikee攻击与防范技巧
2.7.2 中间人攻击与防范技巧
2.7.3 恶意应用程序攻击与防范
2.7.4 利用应用程序漏洞攻击与防范
技巧与问答
第3章 智能手机操作系统——Android
3.1 Android操作系统的发展历程
3.1.1 Android操作系统的发展回顾
3.1.2 Android 最新版本
3.1.3 Android 最新版本新特性
3.2 分层认识Android系统
3.2.1 认识系统分层3.2.2 系统架构分层的优势
3.2.3 Android操作系统的基本架构
3.2.4 应用程序层
3.2.5 应用程序框架层
3.2.6 系统运行库层
3.2.7 Linux核心层
3.3 Android安全模型
3.4 Android组件的基本功能
3.4.1 活动
3.4.2 服务
3.4.3 广播接收器
3.4.4 内容提供者
3.5 使用备份保护数据
3.5.1 手动备份
3.5.2 利用91助手备份
3.6 Android系统刷机
3.6.1 Android系统刷机常识
3.6.2 Android系统刷机教程
3.7 Android 系统获取Root权限
3.7.1 Root原理简介
3.7.2 获取Root权限的优点与缺点
3.7.3 获取Root权限的方法
3.7.4 避免一键Root恶意软件的危害
3.8 认识Android模拟器
3.9 Android平台常见恶意软件及病毒的分类
3.9.1 ROM内置类恶意软件病毒
3.9.2 破坏类恶意软件病毒3.9.3 吸费类恶意软件病毒
3.9.4 窃取隐私类恶意软件病毒
3.9.5 伪装类恶意软件病毒
3.9.6 云更新类恶意软件病毒
3.9.7 诱骗类恶意软件病毒
技巧与问答
第4章 智能手机病毒与木马攻防
4.1 认识手机病毒
4.1.1 手机病毒术语
4.1.2 手机病毒的组成
4.1.3 手机病毒的特点
4.2 认识手机木马
4.2.1 手机木马的组成
4.2.2 手机木马的分类
4.2.3 手机木马攻击的原理
4.3 常见的手机病毒
4.3.1 常见手机病毒之一——短信病毒
4.3.2 常见手机病毒之二——钓鱼王病毒
4.3.3 常见手机病毒之三——手机骷髅病毒
4.3.4 常见手机病毒之四——同花顺大盗
4.3.5 常见手机病毒之五——手机僵尸病毒
4.3.6 常见手机病毒之六——卡比尔病毒
4.3.7 常见手机病毒之七——老千大富翁
4.3.8 常见手机病毒之八——QQ盗号手
4.4 手机病毒与木马的危害和防范
4.5 网络蠕虫的危害及防范
4.5.1 认识网络蠕虫4.5.2 网络蠕虫的危害
4.5.3 网络蠕虫的防范
4.6 杀毒软件的使用
4.6.1 腾讯手机管家
4.6.2 百度手机卫士
4.6.3 360手机卫士
技巧与问答
第5章 无线通信技术之蓝牙
5.1 蓝牙基础知识简介
5.1.1 认识蓝牙
5.1.2 蓝牙的起源与发展
5.1.3 蓝牙的工作原理
5.1.4 蓝牙的体系结构
5.1.5 蓝牙的相关术语
5.1.6 蓝牙4.2的新特征
5.1.7 蓝牙4.2的发展前景
5.2 蓝牙设备的配对
5.2.1 启动蓝牙适配器
5.2.2 搜索周围开启蓝牙功能的设备
5.2.3 使用蓝牙进行设备间的配对
5.2.4 两台设备传递文件测试效果
5.3 蓝牙通信技术应用实例
5.3.1 让家居生活更便捷
5.3.2 让驾驶更安全
5.3.3 增强多媒体系统功能
5.3.4 提高工作效率
5.3.5 丰富娱乐生活5.4 蓝牙攻击方式与防范
5.4.1 典型的蓝牙攻击
5.4.2 修改蓝牙设备地址
5.4.3 利用蓝牙进行DOS攻击
5.4.4 蓝牙的安全防护
技巧与问答
第6章 无线通信技术之Wi-Fi
6.1 Wi-Fi基础知识简介
6.1.1 Wi-Fi的通信原理
6.1.2 Wi-Fi的主要功能
6.1.3 Wi-Fi的优势
6.1.4 Wi-Fi与蓝牙互补
6.1.5 Wi-Fi无线网络的建立
6.2 无线网络的安全加密
6.2.1 使用WEP加密
6.2.2 使用WPA-PSK安全加密算法加密
6.2.3 禁用SSID广播
6.2.4 基于MAC地址的媒体访问控制
6.3 智能手机Wi-Fi连接方式
6.3.1 Android手机Wi-Fi连接
6.3.2 iPhone手机Wi-Fi连接
6.4 Wi-Fi技术的应用
6.4.1 网络媒体
6.4.2 日常休闲
6.4.3 掌上设备
6.4.4 客运列车
6.5 无线路由器设置教程6.5.1 认识无线路由器
6.5.2 无线路由器基础设置
6.5.3 无线加密
6.5.4 禁用DHCP功能
6.5.5 修改Wi-Fi连接密码
6.5.6 关闭SSID广播
6.5.7 设置IP地址和MAC地址的绑定
6.6 使用软件破解Wi-Fi密码的方法及防范措施
6.6.1 手机版“Wi-Fi万能钥匙”破解Wi-Fi密码
6.6.2 PC版“Wi-Fi万能钥匙”破解Wi-Fi密码
6.6.3 防止“Wi-Fi万能钥匙”破解密码
6.7 Wi-Fi攻击方式
6.7.1 Wi-Fi攻击之一——钓鱼陷阱
6.7.2 Wi-Fi攻击之二——陷阱接入点
6.7.3 Wi-Fi攻击之三——攻击无线路由器
6.7.4 Wi-Fi攻击之四——内网监听
6.7.5 Wi-Fi攻击之五——劫机
6.8 Wi-Fi安全防范措施
技巧与问答
第7章 DOS攻击
7.1 DOS攻击概述
7.1.1 什么是DOS攻击
7.1.2 DOS攻击原理
7.2 DOS攻击方式的分类
7.3 DOS攻击方式举例
7.3.1 DOS攻击之一——SYN 泛洪攻击
7.3.2 SYN Cookie Firewall防御SYN 泛洪攻击7.3.3 DOS攻击之二——IP欺骗攻击
7.3.4 DOS攻击之三——UDP洪水攻击
7.3.5 DOS攻击之四——ping洪流攻击
7.3.6 DOS攻击之五——teardrop攻击
7.3.7 DOS攻击之六——Land攻击
7.3.8 DOS攻击之七——Smurf攻击
7.3.9 DOS攻击之八——Fraggle攻击
7.4 DDOS攻击揭密
7.4.1 什么是DDOS攻击
7.4.2 DDOS攻击原理
7.4.3 DDOS攻击与DOS攻击的区别
7.5 揭密对手机进行DOS攻击的方式
7.5.1 手机DOS攻击之一——蓝牙泛洪攻击
7.5.2 手机DOS攻击之二——蓝牙劫持攻击
7.5.3 手机DOS攻击之三——非正常的OBEX信息攻击
7.5.4 手机DOS攻击之四——非正常的MIDI文件攻击
7.5.5 防御DOS攻击的措施
技巧与问答
第8章 手机游戏安全攻防
8.1 手机游戏存在的风险
8.1.1 风险一——手机游戏病毒
8.1.2 风险二——手机账号密码采用明文传输
8.1.3 风险三——游戏权限滥用
8.1.4 风险四——手机游戏二次打包
8.2 手机游戏正确的下载途径
8.2.1 通过官网下载
8.2.2 第三方软件下载8.3 手机游戏必备常识
8.3.1 收费游戏的计费原理及漏洞
8.3.2 手机游戏卡顿原因
8.3.3 手机游戏加速技巧
8.3.4 将手机游戏移动到内存卡
8.3.5 卸载后及时删除手机数据包
8.4 手机游戏安全防护措施
技巧与问答
第9章 QQ账号及电子邮件攻防
9.1 QQ黑客工具的使用和防范
9.1.1 “啊拉QQ大盗”的使用和防范
9.1.2 “雨点QQ密码查看器”的使用与防范
9.1.3 “QQExplorer”的使用与防范
9.2 增强QQ安全性的方法
9.2.1 方法一——定期更换密码
9.2.2 方法二——申请QQ密保
9.2.3 方法三——加密聊天记录
9.3 手机电子邮件攻击与防范
9.3.1 电子邮件攻击简介
9.3.2 电子邮件系统的工作原理
9.3.3 电子邮件攻击方式
9.4 电子邮件攻击防范措施
9.4.1 根据IP地址判断邮件来源
9.4.2 软件过滤垃圾邮件
9.4.3 避免使用公共Wi-Fi发送邮件
9.4.4 谨慎对待陌生连接和附件
9.4.5 通过日常行为保护电子邮件9.5 利用密码监听器监听邮箱密码
9.5.1 密码监听器的使用方法
9.5.2 查找监听者
9.5.3 防止网络监听
技巧与问答
第10章 智能手机加密与性能优化
10.1 设置手机锁屏密码
10.1.1 密码锁屏设置
10.1.2 图案锁屏设置
10.1.3 PIN锁屏设置
10.2 个人隐私加密
10.3 智能手机省电小常识
10.3.1 常识一——调整屏幕显示
10.3.2 常识二——优化系统
10.3.3 常识三——管理后台程序
10.3.4 常识四——使用省电程序
10.3.5 常识五——合理使用飞行模式
10.3.6 常识六——关闭手机触屏音效和振动
10.4 智能手机连接互联网
10.4.1 Android智能手机网络接入点设置
10.4.2 iPhone智能手机网络接入点设置
10.5 智能手机优化软件
10.5.1 360手机卫士
10.5.2 腾讯手机管家
10.5.3 百度安全卫士
技巧与问答
第11章 移动追踪定位与远程控制技术11.1 移动定位基础知识简介
11.1.1 移动定位的分类
11.1.2 移动定位技术的现状
11.2 常用的定位技术
11.2.1 GPS定位
11.2.2 A-GPS定位
11.2.3 基站定位
11.2.4 Wi-Fi定位
11.2.5 RFID、二维码定位
11.3 移动定位的应用
11.3.1 应用一——紧急救援和求助
11.3.2 应用二——汽车导航、车辆追踪、舰队追踪
11.3.3 应用三——基于位置和事件的计费系统
11.3.4 应用四——移动性管理及系统优化设计
11.3.5 应用五——移动黄页查询、防止手机盗打
11.3.6 应用六——通过定位技术追踪手机
11.4 手机远程控制计算机
11.4.1 Android手机远程控制计算机
11.4.2 iPhone手机远程控制计算机
11.5 手机位置追踪
11.5.1 Android手机位置追踪
11.5.2 iPhone手机位置追踪
技巧与问答
第12章 保护移动支付安全
12.1 移动支付简介
12.1.1 什么是移动支付
12.1.2 移动支付的特点12.1.3 移动支付的模式
12.2 移动支付存在的风险
12.3 加强移动支付安全
12.3.1 加强手机银行安全
12.3.2 加强个人网上银行安全
12.4 警惕钓鱼网站
12.5 支付宝安全性能提升
12.5.1 加强支付宝PC端安全防护
12.5.2 加强支付宝手机端安全
12.6 手机安全软件的使用
12.6.1 开启腾讯手机管家安全支付
12.6.2 开启360手机卫士支付保护
技巧与问答
第13章 揭秘针对智能手机的攻击方式与安全防范
13.1 智能手机的攻击方式
13.1.1 方式一——通过下载软件攻击
13.1.2 方式二——利用红外或蓝牙攻击
13.1.3 方式三——通过发送短信攻击
13.1.4 方式四——利用系统漏洞攻击
13.1.5 方式五——制造手机炸弹攻击
13.2 智能手机防范攻击技巧
13.2.1 技巧一——关闭蓝牙功能
13.2.2 技巧二——保证手机软件下载的安全性
13.2.3 技巧三——不轻信怪异短信,不接乱码电话
13.2.4 技巧四——安装手机卫士软件
13.2.5 技巧五——对手机数据定期备份
技巧与问答第14章 平板电脑的攻防技巧
14.1 认识平板电脑
14.1.1 平板电脑操作系统
14.1.2 平板电脑的优缺点
14.2 针对平板电脑的攻击方式
14.3 平板电脑的防范技巧
14.3.1 及时更新平板电脑操作系统
14.3.2 锁定SIM卡
14.3.3 屏幕锁定
14.3.4 安装平板电脑安全软件
技巧与问答第1章 认识黑客与智能手机攻防
随着科技的进步,人们对移动终端变得越来越依赖。移动终端对我
们来说是一把双刃剑,它对我们有利,既提高了我们的工作效率,又改
变了我们的生活方式;同时也存在着弊端,即具有自身的漏洞,可以被
黑客利用,泄露我们的隐私。因此,我们应当具备一些基本的移动终端
攻防知识。本章简要介绍了黑客与智能手机的一些基础知识,为读者全
面学习移动终端的攻防技术做了铺垫。1.1 丰富多彩的黑客文化
我们在网络世界中看不到黑客,但他们却真实存在着。黑客们都会
刻意隐藏自己的行踪,以免暴露身份。同时黑客也是网络世界中的技术
高手,他们熟悉网络并且能够利用网络达到自己的目的。在互联网不断
的发展过程中,黑客这一群体也形成了自己独特的文化。
1.1.1 黑客的由来
在《牛津英语词典》中,“Hacker”具有“利用自己在计算机方面的
技术,设法在未经授权的情况下访问计算机文件或网络的人”的释义。
最初曾指热心于计算机技术、精通各种编程语言和各类操作系统、水平
高超的计算机专家,尤其是程序设计人员,后逐渐区分为白帽、灰帽、黑帽等。其中,黑帽(black hat)实际就是cracker。到了今天,黑客一
词已被用于泛指那些专门利用计算机病毒搞破坏的人。
最早的计算机于1946年在宾夕法尼亚大学诞生,而最早的黑客出现于麻省理工学院,另外贝尔实验室也有。最初的黑客一般都是一些高级
的技术人员,他们热衷于挑战、崇尚自由并主张信息的共享。计算机安
全黑客会使用密码破解(password cracking)或穷举法(brute force
attack)。对一个黑客来说,学会编程是必需的,计算机可以说就是为
了编程而设计的,运行程序是计算机的唯一功能。运行程序其实就是运
算,要具备离散数学、线性代数、微积分等方面的相关知识。所以,真
正的一流黑客并非整天不学无术,而是会热衷于追求某种特殊嗜好,如
研究电话、无线电或计算机。现在黑客一词通常被定义为:专门入侵他
人计算机系统进行不法行为的计算机高手。
1.1.2 手机黑客的由来
智能手机一旦联网就为黑客的攻击提供了条件,因此一些专注于攻
击智能手机的黑客便产生了。他们根据智能手机自身的特点来寻找可以
被用来攻击的漏洞,如利用无线通信进行攻击、制造病毒或木马程序、发送垃圾短信等。总之,手机黑客是随着智能手机联网而发展起来的。
1.1.3 黑客守则
① 不要恶意破坏任何系统,否则只会给你带来麻烦。恶意破坏他
人的软件将承担法律责任,如果你只是使用计算机,那仅为非法使用!
注意:千万不要破坏别人的软件或资料!
② 不要修改任何系统档案,如果你是为了要进入系统而修改它,请在达到目的后将它恢复原状。③ 不要轻易将你要hack的站台告诉你不信任的朋友。
④ 不要在BBS上谈论你hack的任何事情。
⑤ 在post文章的时候不要使用真名。
⑥ 正在入侵的时候,不要随意离开你的计算机。
⑦ 不要在电话中谈论你作为黑客的任何事情。
⑧ 将你的笔记放在安全的地方。
⑨ 要想成为黑客,就要学好编程和数学以及一些TCPIP协议、系
统原理、编译原理等计算机知识!
⑩ 已侵入计算机中的账号不得清除或修改。
· 不得修改系统档案,如果是为了隐藏自己的侵入而做的修改则
不在此限,但仍须维持原来系统的安全性,不得因得到系统的控制权而
将门户大开!
· 不要将你已破解的账号分享于你的朋友。
· 不要侵入或破坏政府机关的主机。
· 不会编程的黑客不是好黑客。
· 黑客世界的高手们不同于“盗取”。
· 黑客并不是一味地攻击用户,而是通过攻击来研究漏洞,从而
大大提高系统的安全性。1.1.4 黑客常用攻击方式
1.获取口令
获取口令的方式一般分为以下两种。
① 黑客通过监听的方式获取其所在网段的所有用户账号和口令,对局域网的安全威胁巨大。
② 在获取用户名后利用口令破解软件强行破解用户口令。这种方
法不受网段限制,但是破解所需时间以及是否能够破解成功都不确定。
2.利用木马程序
黑客通常会把木马程序伪装成一个正常的程序诱惑用户下载,当用
户运行该程序时木马程序就会悄悄地执行,将用户IP及预先设定的端口
发送给黑客。黑客就可以借助于木马程序打开的后门进入用户的计算
机,从而达到控制的目的。3.WWW的欺骗技术
当我们在浏览网页时会使用到WWW服务,且注意力一般会在网页
内容上,而黑客往往会在我们最容易忽略的地方做一些改动,以达到欺
骗的目的。例如,改写网页的URL,将URL指向黑客预先准备好的服务
器,这样用户所有的请求信息都将发到黑客的服务器,从而使得黑客轻
而易举地获得自己想要得到的信息。
4.电子邮件攻击
电子邮件攻击主要表现为两种方式。
① 邮箱炸弹,也称为电子邮件轰炸或电子邮件“滚雪球”,通过伪造
IP地址和电子邮件地址向同一信箱发送大量内容相同的垃圾邮件,将目
标邮箱挤爆炸;情况严重时可能会危及电子邮件服务器操作系统,使其
不能正常工作。
② 电子邮件欺骗,黑客使用和管理员相同的邮件地址伪装成管理
员,给用户发送邮件要求用户修改口令;或在正常的附件中加载病毒或
其他木马程序,以使用户受骗。
5.通过一个节点来攻击其他节点
黑客在控制一台主机后,往往会以此作为跳板攻击其他主机。例如
可以通过监听的方式获取被控制主机局域网内其他主机的信息,为攻击
其他主机做准备;也可以通过IP欺骗和主机建立信任关系,攻击其他主机。这类攻击隐蔽性很好,但有些技术实现难度大,需要具备一定的水
平。
6.网络监听
网络监听是主机的一种工作模式。在这种模式下,主机可以接收到
本网段在同一条物理通道上传输的所有信息,而不管这些信息的发送方
和接受方是谁。在信息交互过程中如果没有对内容进行加密,就可以借
助于一些软件达到监听的目的,例如,NetXray for Windows 9598nt、sniffit for linux、solaries等都是具有监听功能的软件。
7.寻找系统漏洞
漏洞又称为Bug,指可以被利用以实现攻击目的的程序、机制等。
有些漏洞是操作系统自带的,如Sendmail漏洞,Windows98中的共享目
录密码验证漏洞和IE5漏洞等;还有一些漏洞是由于系统管理员配置错
误引起的,如在网络文件系统中,将目录和文件以可写的方式调出,将
未加Shadow的用户密码文件以明码方式存放在某一目录下,一旦被黑
客获取将造成巨大的损失。
8.空口令和弱口令
空口令是指用户使用空账号和密码,或者设置了用户名没有设置密
码。弱口令是指用户设置的密码过于简单,很容易会被猜测出或通过破
解软件可以破解。防范此类攻击时用户必须提高警惕,在设置用户名和密码时不要给黑客留下可乘之机。
9.获取高级别的管理权限
黑客可以利用各种特洛伊木马程序和后门程序来攻击目标主机,从
而获取该主机的完全控制权限。黑客也可以通过编写缓冲区溢出获取超
级用户权限,从而控制整个网络。1.2 黑客必备技能
1.2.1 英语阅读能力
网络发展得十分迅速,知识也在不断地更新,黑客要想立于不败之
地就需要不断地学习新的知识来提高自己。现在大多数资料和教程都是
英文版本,所以黑客的学习需要从英文书籍开始。因为一个漏洞从发现
到出现中文介绍需要经过很长的一段时间,在这段时间内网络管理员可
能已经及时修复了漏洞;而当我们看到中文介绍的时候,这个漏洞早就
过时了。因此,学习黑客从一开始就要尽量阅读英文资料、使用英文软
件,并且及时关注国外著名的网络安全网站。
1.2.2 使用黑客工具
黑客工具一般分为两类:一类是
计算机操作系统自带的命令,例如,ftp、ping、net等。ping是我们常用的
命令,主要用于测试本主机与另一台
主机之间的连通性,判断是否具备远
程攻击的条件;另一类是各种主流的
黑客软件,主要包括端口扫描器、漏
洞扫描器、信息截获工具和密码破解
工具等。借助于黑客工具,可以提高
黑客的攻击速度和效率。当然,黑客也可以根据需要编写自己的黑客软件,达到更精确的攻击目的。
1.2.3 具备编程技能
具备编程技能最基本的要求就是能够掌握几种流行的编程语言和脚
本语言。计算机都是通过程序控制的,所以要想控制计算机就必须懂得
编程。这里不要求初学者对各类编程语言特别精通,只要能够看懂有关
语言、知道程序执行结果就可以了。编程语言都是相通的,当掌握了其
中一种编程语言后其他语言的学习就会非常简单。
1.2.4 熟悉网络协议和工作原理
知己知彼,百战不殆。要实现对网络的攻击,首先要了解网络,网
络之间的相互联系都是通过各种协议完成的。例如,TCP协议为相互通
信的两台主机提供可靠的传输机制,IP协议提供网络层的服务,ospf协
议为信息在网络中传输提供路由信息等。只有在对网络协议有了深入的
了解后,才可以抽象出整个网络工作的过程,进而实现攻击或保护的目
的。1.3 智能手机攻防基础
1.3.1 智能手机主流操作系统
随着智能手机的出现,我们的生活方式发生了巨大的变化,我们已
经离不开智能手机。智能手机能为我们提供各种各样的服务,而在这些
相似的服务下却有着不同的操作系统。下面将介绍几种主流的智能手机
操作系统。
(1)Android操作系统
Android是一种基于Linux的自由及开放源代码的操作系统,由
Google公司和开放手机联盟领导及开发,主要使用于移动设备,如智能
手机和平板电脑。2011年第一季度,Android在全球的市场份额首次超
过Symbian(塞班)系统,跃居全球第一。2013年的第四季度,Android
平台手机的全球市场份额已经达到78.1%。2013年9月24日,全世界采
用这款系统的设备数量已经达到10亿台。
该平台由操作系统、中间件、用户界面和应用软件组成。它采用软
件堆层的架构将系统分为3个部分:底层以Linux内核工作为基础,由C
语言开发,只提供基本功能;中间层包括函数库Library和虚拟机Virtual
Machine,由C++开发。最上层是面向用户的各种应用软件,包括通话
程序、短信程序等,由使用该系统的公司自行开发。Google通过与软
硬件开发商、设备制造商、电信运营商等其他有关各方结成深层次的合
作伙伴关系,旨在通过androiditong建立标准化、开放式的移动电话软件平台,从而在移动产业内形成一个开
放式的生态系统。
(2)iOS操作系统
iOS是由苹果公司开发的移动操作系统,最初是设计给iPhone使用
的,后来陆续套用到iPod touch、iPad以及Apple TV等产品上。iOS操作
系统是一种类Unix商业操作系统。
iOS的内置应用包括Siri、Facetime、Safari、Game Center等。Siri可
以使你通过语音发送短信、拨打电话,解放你的双手,实现语音控制手
机。Satari是一款深受大家喜爱的移动网络浏览器,可以帮助用户排除网页上的干扰,保存阅读列表,提供离线浏览服务。
(3)Windows Phone操作系统
Windows Phone是微软推出的一款手机操作系统,初始版本命名为
Windows Phone 7.0。该系统的内核使用Windows CE,用户界面采用
Metro,并且集成了微软旗下的Xbox Live游戏、Xbox Music音乐与独特
的视频体验。
Windows Phone可提供桌面定制、图标拖曳、滑动控制等一系列前
卫的操作体验。为了让用户能够随时更新重要信息,Windows Phone主
屏幕提供了类似仪表盘的体验来显示新的电子邮件、短信、未接来电
等。增强的触摸屏界面,让手指操作更加方便。而最新版本的IE Mobile
浏览器,为用户提供了更加便捷的服务。
(4)Symbian操作系统
Symbian是塞班公司为手机而设计的纯32位操作系统,具有实时
性、多任务、功耗低、内存占用少等特点。在有限的内存和运存情况
下,非常适合手机等移动设备使用,目前可以支持GPRS、蓝牙、SyncML、NFC及3G技术。它是一个标准化的开放式平台,任何人都可
以为支持Symbian的设备开发软件。Symbian将移动设备操作系统的内核
与图形用户界面技术分开,能很好地适应不同方式输入的平台,也使厂
商可以为自己的产品制作更加友好的操作界面,符合个性化的潮流,这
也是用户能见到不同样子的Symbian系统的主要原因。(5)BlackBerry OS操作系统
BlackBerry OS是Research In Motion专用的操作系统。这一操作系统
具有多任务处理能力,并支持特定的输入装置。BlackBerry平台处理邮件的能力十分突出,通过MIDP1.0以
及MIDP 2.0的子集,在与BlackBerry
Enterprise Server连接时,以无线的方
式激活并与Microsoft Exchange、Lotus Domino或Novell GroupWise同
步邮件、任务、日程、备忘录和联系
人。
1.3.2 智能手机漏洞简介
智能手机跟计算机系统一样,存在着许多可以被黑客利用以实施攻
击的漏洞。常见的漏洞有以下几种。
(1)系统软件漏洞
目前市面上的主流手机系统都曾被曝出存在系统漏洞,用户一般通
过打补丁和刷新系统的方式降低系统软件漏洞带来的风险。
(2)应用程序漏洞
应用程序漏洞是指智能手机下载的软件中出现漏洞。例如,在
iPhone手机APP商店中,有的银行软件就曾曝出错误收集用户敏感数
据,并且将其存储在手机文档中的漏洞问题。不过,该漏洞现在已经修
复。
(3)下载不安全程序
安装来历不明的软件很容易感染病毒,非常危险。随着手机软件市场的不断扩大,下载软件时经常会遇到一些来历不明的捆绑软件,稍有
疏忽就有可能造成手机安全漏洞。 技巧与问答
世界十大知名黑客
(1)凯文·米特尼克(Kevin Mitnick)
凯文·米特尼克被称为“世界第一黑客”,他有一句经典的名言被广
为传颂:“巡游五角大楼,登录克里姆林宫,进出全球所有计算机系
统,摧垮全球金融秩序和重建新的世界格局,谁也阻挡不了我们的进
攻,我们才是世界的主宰。”
凯文·米特尼克在15岁的时候就闯入了“北美空中防务指挥系统”的
计算机主机内,他和朋友们翻遍了美国指向苏联及其盟国的所有核弹头
的数据资料。如果当时米特尼克将这些情报卖给克格勃,那么他至少可
以得到50万美元的酬金,而美国则需花费数十亿美元来重新部署。但是
米特尼克并没有这么做,而是在查看资料后悄悄地离开了。
(2)丹尼斯·里奇(Dennis Ritchie)
丹尼斯·里奇是C语言之父、Unix之父,他设计开发的C语言不论在
当时还是在现在都是使用最广泛的语言之一。C语言的诞生是现代程序
语言革命的起点,是程序设计语言发展史中的一个里程碑。他和布莱恩
柯林汉(W. Kernighan)所编著的《C程序设计语言》(The C
Programming Language )一书已被翻译成多种语言,成为C语言方面最具权威性的教材之一。
(3)李纳斯·托沃兹(Linus Torvalds)
李纳斯·托沃兹为人所知的最大成就就是编写了一个操作系统的内
核——Linux,使自由软件从产业思想运动演变成为市场商业运动,从
此改变了软件产业乃至IT产业的面貌。李纳斯虽然是一位博士,但本人
看起来就像一名学生。他的房间非常简单,只有两只猫和几台计算机,另外还有一根由当地一家ISP安装并承担费用的专线。
(4)沃兹尼亚克
如果单单提到沃兹尼亚克这个名字大家会感到陌生,那么提到他的
朋友大家一定会非常熟悉——乔布斯。沃兹尼亚克与乔布斯一起创立了
苹果公司,他是一位技术天才,但也是一个淡泊名利、性格纯朴、在硅
谷被大家公认的“好人”。只不过他早早地离开了商场,过着平淡安静的
生活。
(5)汤普森
汤普生当初为了能让自己更方便地玩游戏,于是和朋友一起开发了
一个自己的操作系统。这个操作系统刚开始的时候很少有人知道,在
1974年以前他们甚至没有发表过任何关于项目的消息。他们并没有积极
推销,但大学、研究机构可以免费使用,而且还提供源代码,这个操作
系统很快就震动了整个计算机业。这个操作系统就是里奇和汤普森在
1969年创造的UNIX操作系统。
(6)理查德·马修·斯托曼
理查德·马修·斯托曼是一名老牌黑客,创立了自由软件基金,打破了软件是私有财产的概念。他还创建了GNU组织,GNU即“GNU’s Not
Unix”的缩写。另外,他还曾获得麦克阿瑟基金24万美元的天才奖。
(7)德拉浦
德拉浦是首位引入“盗用电话线路”打长途电话思想的人,他曾使
用“嘎吱嘎吱船长”牌的麦片盒里作为奖品的哨子向电话话筒吹声,音调
可达2600赫兹,将电话呼出的蓝匣子开启,以此来免费拨打长途电话。
(8)埃里克·雷蒙德(Eric S Raymond)
埃里克·雷蒙德是开放源代码运动和黑客文化的第一理论家。1998
年Mozilla的发布主要归功于他。大多数黑客和主流观察家也同意,正是
雷蒙德将开放源代码的理念成功地带到了华尔街。
(9)卡普尔
卡普尔与盖茨是美国软件业的双子星。他在1982年创办的Lotus公
司是当时最大的独立软件公司。直到1988年4月,微软才超过Lotus,成
为头号软件公司。卡普尔发起创办的电子边疆基金会(EFF),目的在
于维护黑客利益。也正因如此,卡普尔成为了20世纪80年代和90年代最
具影响力的计算机人物和黑客人物之一。
(10)罗伯特·塔潘-莫里斯(Robert Tappan Morris)
罗伯特·塔潘-莫里斯在1988年的第一次工作过程中戏剧性地散播出
了网络蠕虫病毒,使得“Hacker”一词被赋予了新的含义。在网络蠕虫病
毒事故中,成千上万的计算机受到了影响,并导致了部分计算机崩溃。
因此,黑客一词具有了贬义的色彩。黑客从此真正变黑,黑客伦理失去
约束,黑客传统开始中断。大众对黑客的印象永远不可能恢复,从此计算机病毒步入主流。
世界十大黑客组织
(1)ANONYMOUS
Anonymous的中文名称为匿名者,是全球最大的政治性黑客组织。
在巴黎恐怖袭击事件发生之后,Anonymous第一时间在 youtube上上传
了视频向ISIS宣战。从此人们记住了这个组织,也记住了盖伊·福克斯面
具。匿名者是一个开放性的网络黑客组织,在世界各地都有分部。该组
织的宗旨是:反对社会各行各业中存在的不公平现象。只要有不平等现
象发生,他们就会像盖伊·福克斯那样,化作一个正义的战士,与不平
等现象做斗争。
(2)LIZARD SQUAD
这是一个热衷于攻击政府、大型企业相关网站的组织,其中就包括
攻击马来西亚航空公司官网和 Facebook。在他们看来,攻击这些网站才
能体现出组织的高调姿态。他们攻击马来西亚航空公司网站,使得用户
在输入该网址后,会出现一个404-not-found的界面,以致无法正常查询
航班信息。
(3)THE LEVEL SEVEN CREW
The Level Seven Crew是许多年前出现的一个受人唾弃的黑客组织,在2000年以后就销声匿迹了。该组织的命名灵感来自于一款叫“但丁地
狱”的游戏,其中的第七级地狱是最恐怖的一级。他们主要的攻击对象包括美国第一国家银行,美国国家航空航天局(NASA),美国驻中国
大使馆网站,以及喜来登酒店等。
(4)CHAOS COMPUTER CLUB
Chaos Computer Club简称“CCC”,中文名称为混沌计算机俱乐部,1980年在德国柏林成立,是欧洲最大的黑客联盟,也是世界上黑客攻击
技术最好的组织之一。CCC主要致力于研究在政府和非政府组织的服务
网站中存在的安全漏洞,也向大众宣传一些黑客攻击方式以及防范措
施。他们在攻击之前都会查阅相关的法律文献,来明确哪些是属于非法
窃听,哪些是黑客领域合法的灰色地带,并注意规范自己的网络行为。
(5)LULZSEC
Lulzsec成立于2011年,被看作是Anonymous的一个分支。他们有自
己组织的口号——你的安全防护简直可笑。Lulzsec的第一次攻击是针对
FOX网站发起的,之后又攻击了索尼和美国中央情报局(CIA)的相关
网站。
(6)SYRIAN ELECTRONIC ARMY(叙利亚电子军队)
Syrian Electronic Army简称“SEA”,他们有着严明的组织纪律,被
认为是叙利亚总统阿萨德的拥护者,目标就是消灭叙利亚反对派。他们
常用的攻击手段包括钓鱼、DDOS攻击、垃圾邮件以及恶意软件等,在
攻下某个网站之后通常会在该网站上粘贴叙利亚国旗。他们还会攻击一
些国家领袖的Facebook和推特。
(7)GLOBALHELL
这个黑客组织的发起人跟其他组织的发起人有所不同,是一个名为Patrick Gregory的街头帮派成员。该组织共攻击了115个网站,在攻下这
些网站之后将这些网站的数据全部摧毁,造成了数以百万美元的损失。
他们虽然是由帮派成员发起,但是他们的攻击不像街头的小打小闹,因
为在他们攻击的网站中包含了美国军方的官网。
(8)NETWORK CRACK PROGRAM HACKER GROUP(网络
破解黑客组织)
Network Crack Program Hacker Group简称“NCPH”,是一个在中国
发现的黑客组织。该组织的发起人为谭戴林,是一名中国军人。
(9)TEAMPOISON
TeamPoison成立于2010年,发起人是一个名为Trick的16岁少年。该
组织发起的几次知名的攻击事件包括侵入北约、 Facebook、每日邮,以
及英国捍卫者联盟等组织机构的网站,还包括入侵前英国首相托尼布莱
尔(Tony Blair)的私人账户。该组织在2012年解散,2015年作为一个
白帽子安全研究组织复出。
(10)TARH ANDISHAN
Trah Andishan是伊朗的一个黑客组织,成员包括20个才华横溢的资
深黑客。该组织曾研发出了Stuxnet蠕虫病毒,但却被美国和以色列相关
情报人员用来对Tarh Andishan实施攻击。他们攻击的对象非常广泛,最
臭名昭著的一次应该是Operation Cleaver(手术刀行动)了。这次攻击
行动是针对军事、能源、石油和天然气、航空公司等部门,以及机场、交通和医院等社会基础设施发起的,造成的影响极其恶劣。什么是“黑帽子”黑客,什么是“白帽子”黑客?
“黑帽子”黑客就是我们通常所认为的“黑客”或者“骇客”了。他们主
要是利用计算机技术对网络或者用户主机进行破坏性攻击,还会通过破
解网络上的收费软件获利。他们的行为导致整个市场秩序遭到破坏,损
害了他人的利益,泄露了别人的隐私等。
“白帽子”黑客与“黑帽子”黑客正好相反,他们是来保护网络和系统
的。“白帽子”黑客会使用网络攻击技术对自己的网络或系统进行攻击,这样就可以检测出网络或系统中存在的漏洞,以便及时修补。“白帽
子”黑客和网络安全工程师性质有相似之处,都是利用自己的技术做好
事。第2章 智能手机操作系统——iOS
诺基亚的CEO康培凯在苹果刚出现的时候曾用这样一句话来嘲笑苹
果:“苹果先试试把市场认知度转化为市场份额。”可见,当时苹果公司
的发展很不被看好。iOS操作系统从2007年第一次发布到现在已经过了
很多年,iPhone手机在手机行业中的地位发生了巨大的变化,如今再也
没有人对苹果的实力产生怀疑。2.1 iOS操作系统的发展历程
2.1.1 iOS的发展回顾
(1)iPhone OS 1.0
2007年1月乔布斯在MacWorld大会上发布苹果的第一款手机时,iOS系统还没有一个正式的名称,只是被叫作iPhone Runs OS X。这款手
机刚刚发布时并不被全世界的同行所认可,还被认为是一个不能更换铃
声和壁纸、不能运行后台程序,甚至根本没有第三方应用的手机,也就
算不上是一个“智能手机”。但是第一款苹果手机并不是像上面说的那样一无是处,在这款手机
中我们可以看到许多创新的地方,如3.5英寸480×320分辨率的大屏幕、多点触控的交互方式,以及简洁美观的用户界面,这些创新都在一定程
度上颠覆了人们对传统手机的认识。就是这样一部手机的出现,使得手
机市场格局发生了巨大变化,也在之后的时间里引发了行业革命。
(2)iPhone OS 2.0
在iPhone OS 1.0中并没有应用商店,因此用户无法下载第三方的应
用程序。面对这种局面,乔布斯积极主张并鼓励开发者开发网页应用,这导致当时的应用程序质量不高,功能也很有限。几个月之后,苹果改
变了这种做法,并在2008年3月发布了第一款iOS软件开发包。同年7月,苹果公司又推出了App Store,它
的出现开启了iOS和整个移动应用时
代。
苹果公司制定了收入三七分成的
制度,同时为软件的开发创造了良好
的生态环境,这吸引了大量的软件开
发者积极投身到苹果软件开发大军中。随后,iPhone手机应用数量剧
增,功能也呈现出多样化。它不仅是一款手机,而且还可以被用作量角
器、水平仪、游戏机。在这些软件中,还不乏一些相当有意思的“喝啤
酒”“吹蜡烛”等游戏。iPhone OS 2.0系统还支持手写输入、正式支持中
文,支持Office文档、截图功能、计算器功能等。直到现在,App Store
里的应用还在不断地更新着,其中所包含的应用数量仍然是苹果公司值
得骄傲的地方。
(3)iPhone OS 3.0
iPhone OS 3.0新增了键盘的横向模式、新邮件和短信的推送通知、彩信、数字杂志,以及最初的语音控制功能,能够帮助用户寻找、播放
音乐和调用联系人。这些功能填补了前两代系统的空白,虽然与当时的
塞班系统相比存在着诸多差异,但还是给手机用户带来了一种新的使用
体验。
2010年4月,苹果发布了iOS 3.2系统。iOS 3.2是第一款针对“大
屏”iPad平板优化的移动系统,它的出现是一次划时代的演变。
(4)iOS 4
iPhone OS操作系统在这一代正式更名为iOS。iOS 4在外观上做了很大改变,乔布斯及其团队在界面设计上采用了复杂的光影效果,让整个
界面看上去非常新颖,增强了用户的视觉体验。
Game Center的界面设计颜色丰富,使用了绿色、酒红色、黄色
等,上下底部则是类实木设计。正是在这一版本的系统
中,“skeuomorphic(仿真拟物风格)”开始完善起来。除此之外,iOS 4
还实现了壁纸的切换,加入了文件夹功能;在全新亚麻质地背景的文件
夹中,用户可以存放相关应用内容。
常用的图标可以放入底部的Dock,在使用的时候非常方便。通过双
击Home键,用户可以查看当前打开的所有应用程序,通过点击程序界
面就可以实现多个应用程序之间的快速切换。
与iOS 4同期的iPhone 4也是前所未有的漂亮,首次引入了前后双玻
璃的设计,厚度也仅有9.2mm,创下了全球最薄智能手机的纪录。
iPhone 4被认为是乔布斯最经典的杰作之一,也是乔布斯临终前最后一
部杰作。iPhone 4出众的外形受到了广大用户的喜爱,上市后供不应求
现象屡见不鲜。
(5)iOS 5iOS 5沿用了iOS 4华丽的界面设
计风格,同时新增了一项功能——
Siri。Siri的出现是苹果公司第一次尝
试让用户通过语音来控制自己的iOS
设备,即通过Siri来打电话、播放音
乐、查询天气等。iOS 5中界面大量
模仿现实世界中的实物纹理,例如,黄色纸张背景的“备忘录”和亚麻纹理
的“提醒”应用。App Store也开始支持人民币支付,这样用户就不用越狱
下载盗版APP,而可以直接通过网银转账购买正版APP了。
(6)iOS 6
iOS 6中苹果采用了全新设计的地图软件。地图元素基于矢量,在
放大的情况下也不会失真。3D模式可以让用户从多个角度观察某一区
域。由于地图数据不够完善,大量图像出现扭曲现象,影响了地图软件
应有的效果,导致用户对此很不满意。然而在中国,地图软件却受到了广大用户的欢迎。由于中国地区的
地图数据由高德提供,相比于谷歌而言数据内容比较完善,实现了地图
软件应有的效果。除了地图之外,iOS 6还增加了Passbook、全景相机、蜂窝数据状态下的FaceTime、丢失模式等功能。
(7)iOS 7
iOS 7是iOS系统诞生以来变化最大的一次,它采用全新的图标界面
设计,引发了人们对扁平和拟物两种设计风格的强烈探讨。在iOS 7中
被改动的地方有上百项,其中包括控制中心、通知中心、多任务处理能
力等。
iOS 7除了对用户界面做了改动外,还添加了不少使用的功能,如
控制中心的出现在很大程度上简化了iOS系统的操作,我们在打开Wi-Fi
时就不需要进入设置界面打开开关了。同时也增加了九宫格输入法,迎
合了中国用户的需求。
(8)iOS 8
苹果公司利用iOS 8新增的Continuity功能对旗下所有平台进行了整
合,使其生态环境越发完善。iOS 8中新增的Continuity,可以实现把一台iOS设备上未完成的事情继续在另一台iOS设备上做完。如在iPhone上
写了一半的邮件可以在Mac或iPad上继续写,前提是这些设备在同一个
Wi-Fi网络中。
iOS 8为开发者带来了新的编程语言Swift和Metal渲染接口,还开放
了Touch ID的API,使开发者还能编写额外的通知中心控件,成了iOS 8
区别于以往iOS系统的一大特点。
(9)iOS 9
iOS 9给用户带来的最大惊喜就是升级门槛与iOS 8相同,支持的升
级设备与iOS 8相同,这意味着iPhone 4s也可以获得升级。
同时苹果也大幅度降低了iOS 9升级安装所需的存储空间,从原来
的4.6GB降到现在的1.3GB,为广大拥有16GB内存空间的iPhone用户带
来了福利。iOS 8对原有功能做了进一步的完善,让这些功能更加实
用,如原生地图支持公交查询、新的News新闻软件、iPad的分屏模式等。
2.1.2 iOS最新版本
目前苹果公司发布的iOS最新版本为iOS 9,是美国苹果公司于2015
年9月16日正式推出的移动操作系统。
iOS 9相比于之前的版本增加了以下功能。
(1)Siri
更新后的 Siri其速度和准确度都提升了40%,现在可以通过Siri 查
询更多主题的内容。更新后的 Siri可以根据用户的指示,按日期、位置
和相簿名称来搜索用户的照片和视频。如果用户在使用Safari、备忘录
或其他软件时需要中断操作,并且希望稍后继续,Siri稍后会向用户发
出提醒。
(2)邮件
iOS 9完善了邮件应用程序的功能。邮件应用程序为用户提供的标
记功能,可以让用户对邮件附件中的照片和文件进行添加图画、评论或
签名等操作。另外,邮件应用程序还可以轻松将iCloud Drive中保存的
文件添加为附件。(3)地图
地图在“公交”视图的模式下可以为用户提供附带路线和方向指示的
公共交通信息。用户在使用地图搜索某一地点时,会看到搜索地点周围
包括餐饮、购物和娱乐等场所的列表,并可以通过这个列表方便、快捷
地制订自己的出行计划,合理高效地安排自己的行程。
(4)备忘录
备忘录在iOS 9中除了拥有传统的编辑功能外,还支持制作待办事
项的核对清单。用户不仅可以使用文字描述备忘事项,还可以加入照
片、地图或网址链接,甚至可以手动画个草图记录备忘事项。
(5)iCloud Drive
在iOS 9中,用户可以通过iCloud Drive直接从主屏幕上便捷访问
iCloud里存储的任何文件。用户不仅可以通过iCloud Drive对iCloud里存
储的文件进行预览和整理,还可以搜索想要的文件。除了上述功能外,iCloud Drive还可以按日期、名称或添加到Mac上的任何标签来浏览全部
文件。
(6)多任务处理
iOS 9提供的多任务处理功能可以使用户同时打开多种应用,从而
在不退出当前应用程序的情况下浏览后台正在运行的应用程序。双击
Home键可以查看所有正在运行的应用程序,左右滑动屏幕单击可打开
要切换到的应用程序。
2.1.3 iOS用户界面iOS用户界面的设计思想是能够让用户使用多点触控直接操作iOS设
备,具体来说就是用户可通过滑动、轻触开关及按键来控制系统,通过滑
动、轻按、挤压及旋转来与系统交
互。此外,还可通过其内置的加速
器,旋转设备来改变屏幕的方向。
屏幕上方是状态栏,用来显示当
前时间﹑电池电量和信号强度等信
息。屏幕中间区域用于放置应用程序
图标,用户可以根据自己的喜好排列
应用程序图标的位置和顺序,使用时
只需单击图标就可打开应用程序。屏
幕底部是停靠栏,通常称为Dock。
用户可以将应用程序的图标拖曳到Dock上,应用程序图标就可以固定在
Dock上。启动程序时单击屏幕上的应用程序图标,按iPhone和iPod屏幕下方
的Home键可以退出程序,关闭iPad开启的应用程序可使用五指捏合手
势回到主屏幕。在 iOS的最新版本中,当第三方软件收到了新的信息
时,Apple的服务器将把这些通知推送至 iPhone、iPad或iPod Touch上,也可通过设定来隐藏通知。2.2 从底层剖析iOS
2.2.1 iOS的系统架构
iOS的系统架构分为4个层次:核心操作系统层(Core OS layer)、核心服务层(Core Services layer)、媒体层(Media layer)和可触摸层
( Cocoa Touch layer)。
① Core OS层:位于iOS框架的最底层,提供了最低级、系统级的
服务,主要包含内核、文件系统、网络基础架构、安全管理、电源管
理、设备驱动、线程管理、内存管理等。
② Core Services层:即核心服务层,提供了诸如字符串管理、集合
管理、网络操作、URL实用工具、联系人管理、偏好设置等服务。除此
之外,它还提供了很多基于硬件特性的服务,如GPS、加速仪、陀螺仪
等。
③ Media层:依赖于Core Services层提供的服务来实现与图形和多
媒体相关的功能。它包含Core Graphics、Core Text、OpenGL ES、CoreAnimation、AVFoundation、Core Audio等与图形、视频和音频相关的功
能模块。
④ Cocoa Touch层:直接向iOS应用程序提供各种服务。其中,UIKit框架提供各种可视化控件,如窗口、视图、视图控制器与各种用
户控件等供应用程序使用。除此之外,UIKit也定义了应用程序的默认
行为和事件处理结构。
2.2.2 iOS开发语言
iOS开发语言主要有两种,一种是Object-C语言,简称OC语言,是
扩充C的面向对象的编程语言。另一种是Swift语言,是苹果于2014年
WWDC(苹果开发者大会)发布的新语言。两种开发语言可共同运行
于Mac OS和iOS平台,用于搭建基于苹果平台的应用程序。
(1)Object-C语言
OC语言是扩充C语言的面向对象的编程语言,完全兼容C语言。在
OC代码中,可以混用C或者C++代码。
在OC语言中几乎所有的关键字都是以@开头的,这是为了更好地
区分C语言关键字,如@interface、@implementation、@public等;少部
分没有以@开头,如id、_cmd等。在C语言中字符串加引号表示,如“hello”。而在Oc语言中要在“hello”前加@符号,即@“hello”。
OC语言编写的程序在编译链接时,首先对.m格式的源文件进行编
译,编译后得到.o格式的目标文件,目标文件链接成为.out格式的可执
行文件。(2)Swift语言
Swift为iOS和OS X应用提供的新
的编程语言,基于C语言和Objective-
C语言,克服了C语言在兼容方面的
缺点。Swift采用了安全的编程模式
并添加了现代的编程功能,使得编程
更加简单、灵活和有趣。界面则基于
Cocoa和Cocoa Touch框架,展示了软
件开发的新方向。
苹果公司改进了现有的编译器、调试器、框架结构,通过自动引用计数来简化内存管理,在Foundation
和Cocoa的基础上构建框架。Swift继承了Objective-C支持块、集合语法
和模块的特点,支持现代编程语言技术。2.3 刷新iOS操作系统——刷机
2.3.1 什么是刷机
刷机就是更换手机操作系统的一种操作,类似计算机上的重装系
统,也就是为手机重装一个系统。大多数厂家的手机都支持刷机功能。
刷机的主要目的在于将手机更换成新系统,修复老版本中存在的
Bug,例如,老版本中存在的反应速度慢、声音较小、频繁死机等问
题。除此之外,通过刷机还可以增强原机型的功能,如增加数码变焦、相框种类、图像的编辑能力等。刷机后新的系统便优化对硬件的控制,在手机硬件不变的情况下充分提升手机功能。
手机用户如果有需要可以去手机厂商的客服免费刷机,这样刷机新
系统来源比较安全、高效。用户在刷机前需要注意的是要备份好自己手
机中存储的数据,否则数据将会丢失。除了寻求客服的帮助,用户还可
以自己通过专门的刷机软件为手机刷新系统。针对不同的刷机软件网上
都可以搜到相应的使用教程,简单易学。
2.3.2 iPhone刷机教程
现在市面上有许多针对iPhone手机进行刷机的软件,这些软件针对
性强且操作简单,非常适合没有刷机经验的用户使用。这里我们就以爱
思助手为例,简单介绍下iPhone手机刷机的方法。首先我们去爱思助手的官网下载正版计算机客户端,在爱思助手下
载页面单击“立即下载”按钮即可将爱思助手的安装包下载到计算机上。
下载完安装包之后,将爱思助手安装到计算机上。然后打开爱思助
手,按照主界面的提示将苹果手机使用数据线连接到计算机上。
手机与计算机连接后,爱思助手会自动获取手机信息。这时我们选
择爱思助手工具栏中的“刷机越狱”选项,爱思助手会为我们提供当前可用的刷机固件。我们选择好刷机固件后,单击“下载固件”按钮将固件下
载下来。然后单击界面右下角的“立即刷机”按钮,只需等待几分钟刷机
就会完成。2.4 iOS系统的数据备份与恢复
我们在备份和恢复手机数据的时候通常会用到两种方式,一种是利
用苹果手机自带的iCloud功能备份和恢复数据,另一种则是通过第三方
软件的方式备份和恢复手机数据,本节我们所介绍的第三方软件有
iTunes和91助手两款软件。下面我们就来了解一下这两种备份和恢复数
据的方法。
2.4.1 使用iCloud备份和恢复用户数
据
1.使用iCoud备份数据
在苹果手机主界面找到“设置”图标,单击“设置”图标进入手机设置
界面。在设置界面找到“iCloud”功能标签,单击“iCloud”标签进入iClud
设置界面。进入iCloud设置界面需要输入用户Apple ID和密码,输入完成后单
击“登录”按钮登录到自己的iCloud中。利用Apple ID和密码登录成功后,系统会提示“此iPhone上的Safari
数据、提醒事项、通讯录和日历将被上传,并且与iCloud合并”。这时,我们单击“合并”标签选择合并。系统自动开启“查找我的iPhone”功能,此处我们单击“好”标签。进入iCloud管理界面后我们可以看到“备份”标签,单击“备份”标签
进入备份设置界面。在备份设置界面中,我们单击“立即备份”标签对手
机数据进行备份。
单击“立即备份”标签后系统就开始对手机数据进行备份,并估算备
份所需时间。2.使用iCloud恢复数据
在iPhone刷机或者购买新机激活的时候,系统会提示我们对iPhone
进行设置,其中有一项就是从iCloud云备份恢复数据。
2.4.2 使用iTunes备份和还原用户数
据
1.使用iTunes备份数据打开iTunes,使用苹果手机原装USB数据线将手机与计算机连接起
来,iTunes会自动扫描到移动设备。iTunes扫描到移动设备后会在主界
面的左上角显示手机图标,单击手机图标可以对手机存储内容进行管
理,同时可以查看手机的基本信息。
在“备份”设置界面中,用户可以通过单击“立即备份”按钮手动将手
机数据备份到计算机上。单击“立即备份”按钮后iTunes开始将手机数据备份到计算机上,主
界面上方显示备份进度。
2.使用iTunes恢复数据
使用iTunes恢复数据时单击“数据备份”按钮,iTunes会提示数据恢
复前需要关闭“查找我的iPhone”功能。打开设置界面,选择iCloud选项,单击“iCloud”标签进入iCloud设置
界面,在iCloud设置界面单击“查找我的iPhone”标签。
进入查找我的iPhone设置界面后,单击“查找我的iPhone”开关按钮
将该功能关闭,即可通过iTunes对数据进行恢复。2.4.3 使用91助手备份和还原用户数
据
91助手的安装非常简单,登录91助手官网就可以看到在主页面
有“安装到计算机”按钮,我们只需单击该按钮就可以将91助手安装到计
算机上。1.使用91助手备份手机数据
将91助手安装到计算机上之后,我们用数据线将计算机和手机连接
在一起,91助手就会自动安装iTunes。
如果计算机上已经安装了iTunes,可以单击“已安装,继续”按钮结
束iTunes的安装;如果计算机上没有安装iTunes,则可以等待iTunes的安
装。
iTunes安装完成后,单击“重启”按钮可重新启动91助手。再次启动91助手后,91助手已经自动获取了手机的信息。我们在上
方的工具栏中单击“我的设备”,然后在左侧的菜单栏中单击“备份还
原”选项。在这里,备份和还原默认使用的是iTunes。我们单击要备份的
设备名称前的选框,选中要备份的设备,然后单击“创建备份”按钮创建
新的备份。
创建新的备份有两种方式,一种是全新备份,即对手机中所有的数
据进行备份。另一种是增量备份,即在之前备份的基础上备份新增的数据。如果我们是第一次备份,可以选择全新备份的方式进行备份。备份
的路径可以通过单击默认路径右侧的“修改”按钮进行修改,修改完成后
单击“备份”按钮开始对手机中的数据进行备份。在备份的过程中需要保持手机与计算机之间的连接不中断,如果设
置了密码需要我们将手机保持在解锁状态。等待几分钟后数据备份完
成,这时我们单击“完成”按钮结束此次备份。
2.使用91助手还原手机数据
在对手机数据进行还原之前,需要我们先关闭iPhone手机中的“查
找我的iPhone”功能。我们在设置界面中单击进入iCloud设置界面,然后
单击“查找我的iPhone”。
在查找我的iPhone中单击“查找我的iPhone”开关按钮,关闭查找我
的iPhone功能。我们在“备份还原”选项中选中我们需要备份的设备名称,然后单击
下方的“还原”按钮对手机数据进行还原。
输入iPhone账号密码,单击“确定”按钮开始还原数据。在数据还原
的过程中,要保持手机与计算机的正常连接。数据还原完成后我们可以单击“完成”按钮来结束还原操作,手机会
自动重启。2.5 越狱让iOS更加完美
2.5.1 认识越狱
苹果设备都使用的是iOS操作系统,它为了保证系统自身的安全限
制了用户一些存储读写的行为。用户的读写受到限制后感觉自己的行为
被束缚了,而解除这些限制就像越狱一样变得十分自由,所以人们把破
解iOS系统的读写权限限制称为越狱。越狱后的苹果设备可以对系统底
层的存储进行读写操作,最明显的变化就是用户可以免费使用破解后的
App Store软件中的应用程序,也就相当于在苹果设备上下载使用盗版软
件。越狱后的苹果设备除了可以安装破解后的免费软件外,还可以自行
编译软件;也可以对操作系统进行修改,使系统功能更加符合用户的需
求。
2.5.2 越狱的利与弊
1.越狱有利的地方
(1)可以访问Cydia商店
苹果设备在越狱前需要下载的软件只能到App Store中下载,一些不
符合苹果公司要求的软件是不能进入App Store供用户下载的。在这些不
符合苹果公司要求的软件中有许多好的软件,且都被放在了Cydia商店
中。这些软件可以实现iOS系统无法实现的功能,但只有通过越狱的苹果设备才能够下载。
(2)拥有更完美的Siri
Siri是iOS系统中的一个亮点,有
了Siri用户就可以通过声音来控制自
己的苹果设备。经过越狱的苹果设备
会将Siri的功能优化,使它变得更加
强大,甚至连关机和重启都可以通过
声音控制。
(3)使用多样化的输入法
苹果设备在越狱前只能使用系统自带的输入法,然而每个人的使用
习惯并不相同,所以用户更希望使用自己所习惯的输入法。越狱后的苹
果设备可以安装第三方输入法,用户可根据自己的喜好来下载,如我们
常用的九宫格输入法。
(4)提高安全性
越狱后的苹果设备可以安装一款名为iCaughtU的防盗软件,它可以
在使用者输入错误密码时对其拍照并发送到预先设置的邮箱中。这样苹
果设备一旦被盗,就可以在盗窃分子不知情的情况下搜集到他们的信
息,从而帮助我们找回自己的苹果设备。
(5)让苹果设备开启免费Wi-Fi热点
Cydia商店中的MyWi软件可以让苹果设备成为免费的移动热点,周
围的无线设备就可以通过连接热点来上网。(6)安装自定义主题
苹果设备使用的主题都是在系统
开发中预先存储的,主题风格比较单
调,且没有个性。越狱后的苹果设备
就能摆脱单一主题的束缚,用户可根
据个人的喜好自行下载安装喜欢的主
题,以凸显自己的个性。
(7)使用通知栏中的快捷开关
越狱后的苹果设备可以安装
SBSetting插件,这个插件功能十分强
大。它可以帮助用户快速更改手机设
置,还可以在通知栏中添加快捷开
关,供用户将苹果设备修改成自己喜欢的风格。
2.越狱的弊端
(1)导致系统不稳定
苹果设备越狱后可能会导致系统不稳定,主要表现在死机、应用程
序闪退或崩溃等现象出现的概率大大增加。
(2)电池寿命缩短
苹果设备的电池会因越狱插件和破解之后的App而损耗严重,这种
损耗是永久性的,难以恢复。(3)安全性降低
越狱后的苹果设备可以安装App Store以外的软件,这些软件中有一
部分是安全正规的,还有一些软件会给苹果设备带来安全隐患、给用户
带来经济损失或者暴露用户隐私。
(4)系统固件升级过程烦琐
没有越狱的苹果设备升级非常简单,只需接入无线网络使用OTA方
式对系统固件进行升级即可。越狱之后的苹果设备就不能再使用这种方
式升级固件,否则会出现“白苹果”
(1)。2.6 苹果攻击案例
1.Elk Cloner病毒
1982年,里奇·斯克伦塔(Rich
Skrenta)在一台苹果计算机上编写了
一个通过软盘传播的病毒。他称之
为“Elk Cloner”,这是世界上第一个
计算机病毒。在当时,计算机还没有
硬盘驱动器。该病毒感染了成千上万
的机器,但它是无害的;它在用户的屏幕上显示一首诗,其中有两句是
这样的:“它将进入你所有的磁盘它会进入你的芯片。”
2.Leap-A病毒
在Elk Cloner病毒之后的20多年间一直没有再出现MAC病毒,直到
2006年Leap-A病毒开始通过苹果粉丝论坛上泄露的Leopard操作系统的
照片在苹果用户中传播。Leap-A病毒主要通过iChat在计算机之间传
播,但并不会窃取信用卡信息,也不会实施任何恶毒的攻击。
3.远程攻击iPhone
2007年7月,iPhone刚上市不久,世界著名黑客查理·米勒(Charlie
Miller)就在那一年的黑帽大会(Black Hat Conference)上介绍了他的发现,证明了iPhone可以被远程攻击。他设计了一个病毒网页,iPhone
用户登录该网页后会导致手机崩溃;然后这台iPhone将处于黑客的控制
之下,并会按黑客的指令发送E-mail、浏览网页,甚至打开麦克风。
4.iPhone越狱者
2007年苹果公司推出iPhone时,乔治·霍茨(George Hotz)只有17
岁。经过500个小时的编码和修改,他成功解开了iPhone手机上的运营
商锁定。在随后的几个月里,他和其他程序员找到了一种只需要软件执
行的越狱方式。越狱后的iPhone增加了几百个新用途,但也使它更容易
受到在PC端中泛滥的恶意软件的攻击。
5.Mac黑客
首次攻破iPhone 6个月后,查理·米勒在温哥华CanSecWest安全会议
上仅用两分钟时间就破解了刚刚发布的苹果MacBook Air计算机,获得
了Pwn2Own黑客大赛的奖金。之后两年,米勒又在Pwn2Own大赛上两
次攻破MacBook笔记本电脑,巩固了他作为世界领先Mac黑客的声誉。
下图为查理·米勒。6.僵尸网络
2009年,苹果公司iWork办公软件出现了一个盗版版本。这个盗版
版本是一种恶意软件,可以在用户中传播。该软件能够劫持被感染的计
算机,使其成为“僵尸网络(iBotnet)”的一部分。这个恶意软件当时危
害到的用户并不多,攻击的意图也不清楚。
7.劫持iPhone
查理·米勒对iPhone的首次攻击和对MacBook的攻击方式相同,都是
通过用户访问含病毒的Web页面来实施的。在2009年7月,米勒又揭示
了iPhone的一个危险漏洞。该漏洞允许黑客在用户未做出任何动作的情
况下,通过文本信息控制用户的iPhone手机。这样用户的iPhone就会被
黑客完全接管,自动发送更多的短信以传播病毒。
8.Ikee Worm病毒Ikee 病毒能够将用户的手机背景改为歌手里克·阿斯特利(Rick
Astley)的头像,并显示一条消息:“ikee is never gonna give you
up.”(意为:ikee永不放弃你。)这消息源自阿斯特利的单曲Never
Gonna Give You Up 。
9.JailbreakMe
2010年,一名叫Comex的黑客发布了iPhone和iPad越狱工具
JailbreakMe 2。它允许任何人访问JailbreakMe.com网,并在几秒钟内突
破苹果的安全封锁。苹果公司对暴露的漏洞迅速做出反应,在10天内就
修补了这个漏洞,并添加了新的安全措施。然而,Comex在2011年7月6
日又发布了JailbreakMe 3版本,再次对苹果发起攻击。
10.Flashback
2012年年初,苹果公司花两个月的时间来实施Java更新时,黑客利
用这个机会制造了Flashback木马。利用隐身木马Flashback,黑客在用户
访问恶意WordPress博客网页时侵入用户的苹果计算机。Flashback木马攻击最严重时,超过70万台的Mac被
Flashback劫持,形成一个庞大的僵尸
网络。2.7 被用于iOS操作系统的攻击方
式与防范技巧
2.7.1 Ikee攻击与防范技巧
1.Ikee攻击原理
Ikee是2009年11月被检测到的一种蠕虫病毒。Ikee蠕虫病毒扫描到
分配给荷兰和澳大利亚电信运营商的IP地址块就会自动运行,然后根据
这些IP地址检测当前主机是否开启了TCP22端口,即检测SSH服务是否
开启。对于开启SSH服务的主机尝试使用默认证书“Root”和“alpine”进行
登录,如果用户没有修改默认证书账号和密码,就会被Ikee蠕虫病毒感
染。
Ikee攻击针对的是越狱后的iPhone手机。iPhone在越狱后功能更加
强大,用户可以获得更多的权限,但同时也会破坏设备的整体安全架
构。越狱后的系统禁用了代码签名机制,这样就使得黑客的攻击更加简
单。用户一旦下载了恶意软件并运行了未签名的代码,iPhone手机就很
有可能会受到攻击。例如,为设备增加系统实用程序,允许安装以Root
用户权限运行的应用等行为。
越狱后的系统在禁用代码签名机制的同时,也关掉了强有力的
DEP(Data Execution Prevention,数据执行保护)功能。这样一来ROP
有效载荷就可以禁用DEP,并在越狱过的设备上写入和执行shellcode。新的未签名应用是不受沙盒限制的,黑客可以利用这一特性继续对
iPhone进行破坏,iPhone的安全机制也就被破坏了。
很多用户在越狱后安装了SSH服务器却忽略了修改默认Root密码,使得任何连接到这种设备的人都能用Root权限远程控制这些设备,从而
给Ikee蠕虫的攻击制造了机会。某台手机受到Ikee蠕虫病毒感染后,会
获取手机的Root权限;获取该权限后,病毒就可以复制用户的电子邮
件、名片夹、短信、记事本、照片、影片、音乐档案等资料,以及所有
iPhone应用程序所储存的资料。除此之外,Ikee蠕虫病毒还会在网络上
继续搜索具有上述特征的手机,扩大攻击范围。
Ikee蠕虫病毒有多个变种,每一个变种都有不同的特征。如Ikee.A
在登录之后会执行一些基本操作,如关闭用户访问的SSH服务器、改变
手机的墙纸等。Ikee.A还可以将蠕虫二进制代码复制到设备本地,使被
感染的设备扫描和感染其他设备。Ikee.B之类的后续变种引入了类似僵
尸网络的功能,通过命令和控制信道来远程控制被感染的设备。
2.Ikee攻击的防范技巧
防范Ikee攻击最有效的方法就是不要将自己的iPhone手机越狱,依
靠iOS系统整体的安全架构就可以防范绝大多数的攻击。如果非要将
iPhone手机越狱,就要注意以下几点。
(1)正确配置越狱后的iPhone手机
Ikee蠕虫病毒感染的主要原因就是用户对越狱后的iPhone配置不
当。用户在安装SSH后必须马上修改越狱设备上的默认证书,即登录账
号和口令,并确保只连接到可信任的网络。(2)及时关闭不用的网络服务
像SSH之类的网络服务在需要时才开启。对网络服务的管理可以通
过SBSetting来实现,SpringBoard可以用来快速开启或关闭像SSH之类的
功能。
(3)及时升级系统更新补丁
iOS系统的越狱版本会随着原版系统的更新而更新,用户在使用越
狱版本时要确保当前使用的是最新版本,同时也要及时安装由越狱社区
提供的针对漏洞的补丁。
2.7.2 中间人攻击与防范技巧
1.中间人攻击原理
中间人攻击,简称MITM攻击(Man-in-the-Middle Attack),是一
种“间接”的攻击方式。在实施攻击时,黑客将一台计算机放置在两台相
互通信的主机的逻辑链路中间,这台计算机就被称为“中间人”。如上图所示,Host B就是中间人。当Host A和Host C通信时,Host
B来为其“转发”,也就是说Host A和Host C之间并没有真正意义上的通
信,它们之间的信息传递都是由Host B作为中介来完成的。当Host A和
Host C通信时并不知道Host B的存在,它们以为是在跟对方直接通信。
这样Host B在中间就成为了一个转发器,不仅可以窃听A、B的通信,还
可以对信息进行篡改再传给对方。
当然Host B在获取Host A和Host C之间传递的数据后并不一定要对
其进行篡改,还可以备份两者传递的数据,这种被动方式能很好地隐藏
攻击者,不容易被发现。
2.中间人攻击的常见攻击手法
(1)DNS欺骗
DNS服务器的作用就是将用户请求的域名转换成IP地址,然后用户
使用转换后的IP地址与另一台主机通信。黑客可以入侵到DNS服务器
中,将用户请求访问的域名解析成自己的IP地址,这样用户就会把数据发送到黑客的主机上。除了入侵DNS服务器外,黑客还可以控制路由器
实现攻击。黑客控制路由器后可以修改路由表,将用户发往目的主机的
数据通过黑客主机对应的路由器端口转发,使数据发送到黑客所在的网
络中,这样黑客就能很容易地获取到用户的数据信息。黑客获取到用户
信息后就可以备份后转发,或者篡改后再转发到目的主机。
(2)ARP缓存中毒攻击
ARP缓存中毒攻击利用了ARP协议中存在的缺陷,使用ARP的设备
则可以接受任何时间的更新。这意味着任何机器都可以向另一台主机发
送ARP回复数据包,并迫使主机更新其ARP缓存。ARP协议的这一特点
有别于其他协议,如DNS协议可以配置为仅接受安全动态更新。如果只
有发出的ARP回复数据包而没有对应的请求数据包,那么这个ARP回复
数据包就是一个无效ARP。黑客可以向被攻击主机发送一些无效ARP,被攻击主机收到无效ARP时会认为此时正在与黑客主机通信,从而会把
数据传输给黑客主机。
(3)会话劫持
会话劫持结合了嗅探和欺骗等技术。我们可以这样理解,会话劫持
就是在一次正常的通信过程中,攻击者作为第三方参与到其中,或者是
在数据里加入其他信息,甚至将双方的通信模式暗中改变,即从直接联
系变成有攻击者参与的联系。
当然我们还可以将会话劫持理解为攻击者把自己插入两台通信主机
之间,并设法在其间的数据通道中加入代理机器,就像是在两台通信主
机间加入“中转站”,这个代理机器就是攻击者的主机。这样可以干涉两
台机器之间的数据传输,例如监听敏感数据、替换数据等。由于攻击者已经介入其中,所以能轻易知道双方传输的数据内容,还能根据自己的
意愿去改变它们。这个“中转站”可以是逻辑上的,也可以是物理上的,关键在于它能否获取到通信双方的数据。常见会话劫持攻击方式有:
HTTP会话劫持,HTTPS会话劫持,SMB会话劫持。
3.FOCUS 11的中间人攻击
Stuart McAfee和McAfee TRACE团队在2011年拉斯维加斯McAfee
FOCUS11会议上演示了一系列入侵,这些演示中包括针对iPad的现场入
侵。
执行攻击的具体过程是,为MacBook Pro计算机安装和设置两个无
线网卡,然后配置其中一个网卡来作为恶意无线接入点(WAP)。这
个无线接入点被分配了一个SSID,这个SSID类似会议中合法的无线接
入点SSID。这样做是为了说明用户很容易能连接到恶意的无线接入点
上。
然后配置桌面系统将所有来自那个恶意无线接入点的通信数据流转
发到一个合法的无线接入点。这使得在桌面计算机系统上运行的工具具
有了中间人通信数据流的接收和转发能力——接收或转发来自iPad的通
信数据流。在演示中还利用CVE-2011-0228 X.509证书链验证的漏洞,为SSL连接的中间人提供了证书支持。
上述设置完成后,就用iPad来浏览Gmail(在SSL协议层上)。
Gmail被加载到了iPad的浏览器中,不过邮件中增加了点东西,即iframe
中含有一个到PDF文件的链接,该文件可以用来悄悄地获取设备的Root
权限。加载的PDF与JBME 3.0 PDF相似,但经过了修改以避免改变SpringBoard的外观,如增加Cydia图标。然后使用该PDF来加载自定义
的freeze.tar.xz文件,其中包含越狱后需要的文件以及在设备上安装SSH
和VNC所需要的相应软件包。
这个入侵演示向人们展示了获取iOS设备的非授权访问也是完全可
能的,改变了人们对苹果设备以往的印象,即苹果设备对各种攻击都是
免疫的。
这种入侵综合利用了以下几种漏洞攻击技术:客户端漏洞的JBME
3.0技术、SSH证书验证漏洞的攻击技术,以及基于局域网的攻击技术。
这表明了不仅iOS可以被入侵,而且可以使用多种方法入侵。但是攻击
iOS也不是一次就能搞定的,需要利用多个漏洞发起的复杂攻击。
4.针对FOCUS 11的防范
通过上面的介绍我们了解到FOCUS 11攻击是一个复杂的过程,它
在攻击的过程中利用了一组漏洞和一个恶意无线接入点来获取受影响设
备的非授权访问权限。这是操作系统的基本组件被颠覆的事实,所以找
到技术上能够抵御此类攻击的防范方法非常困难。
此类攻击可以通过更新设备的方式防范,使其保证在最新版本。除
此之外用户还可以在无线网络设置中开启“询问是否加入网络”,在加入
网络前确认无线接入点是否安全。对于已经连接过的网络依然可以自动
加入,但是在加入新的未知网络前用户会被询问,只有在我们同意时才
会加入,从而有效避免加入恶意网络中。FOCUS 11攻击使用了一个看
似友好的无线网络名,然而却是个恶意网络。这就提醒我们,在公共场
所不要随意连接未知的无线网络。2.7.3 恶意应用程序攻击与防范
1.Handy Light和InstaStock曝光
苹果应用程序都要求有苹果公司签名,并且只能从官方的APP商店
发布和下载。所以一个应用程序在APP商店中展出前首先要交给苹果公
司审核,如果审核中发现问题,像一些会泄露用户信息如电话号码、联
系信息的情况都被检测出来,苹果公司就会拒绝该程序的提交,也就是
说应用程序将不能被分发到APP商店中。
虽然苹果公司对放入APP商店中的应用程序有严格的审核制度,但
是仍有不少攻击可以通过客户端下载的软件获取iOS的非授权访问。例
如,2010年的Handy Light软件,就是通过了苹果公司的审查并被放到了
APP商店,表面上看这是一个简单的闪光灯应用,用于选择光线的颜
色;其实它包含一个隐藏“栓套”功能,允许用户以特定的顺序点击闪光
的颜色,随后就可以让电话开启一个SOCKS代理服务器,该服务器把
一台计算机“栓套”到电话蜂窝式网络的互联网连接上。
在2011年也发生过类似的事件,著名的iOS黑客Charlie Miller提交
了一个名为InstaStock的应用程序到苹果进行审查。最终苹果公司审核
通过了这款应用程序,并放入APP商店中供用户下载。InstaStock允许用
户实时跟踪股票报价,当时有数百个用户下载了这个应用程序。在
InstaStock中隐藏的逻辑被设计用来利用iOS中的一个“零天”漏洞,该漏
洞允许应用新用户加载并执行未签名的代码。在iOS的运行代码签名验
证的情况下,这是不可能发生的。然而在iOS 4.3中,苹果引入了在一些
特殊情况下可以执行未签名代码的能力。理论上,该功能只对MobileSafari开放,并只能用于开启JavaScript的即时编译。后来的结果
显示,该功能实现上的一个错误导致该功能对所有应用程序都是开放
的,而不仅仅对MobileSafari开放。有了执行未签名代码的功能,InstaStock应用程序就能够回连到一个命令和控制服务器来接收并执行
命令,执行从“被感染”设备中获取联系人信息等类型的活动。
2.针对APP商店恶意软件的防范
苹果公司的审查制度并不是十全十美的,Handy Light和InstaStock
的例子说明了在苹果APP商店下载的应用程序并不一定都是安全的。为
了防止此类攻击,我们不要随意下载用不到的应用程序,确需下载时一
定要选择从有信誉的供应商处获取。除此之外,我们还应该保持苹果设
备的固件版本为最新版本,因为新的固件版本通常解决了可能被恶意软
件用于获取设备访问权限的问题。
2.7.4 利用应用程序漏洞攻击与防范
苹果应用程序并不像我们想象的那样安全可靠,也存在着可以被攻
击者利用的漏洞,近几年来苹果应用程序的漏洞就接连不断。本小节我
们将介绍近几年出现的一些漏洞,在带领大家认识这些漏洞的同时为大
家提一些防范建议。
1.苹果应用程序存在的漏洞
2010年一个现在归档为CVE-2010-2913的漏洞被曝光,影响了CitiMobile应用程序的2.0.2及其以下版本。这个漏洞是应用程序将与银行相
关的敏感信息存储在设备本地,如果设备被远程攻击,或者设备丢失、被偷,那么敏感信息就可能在设备中被抽取。虽然这一漏洞并未提供远
程访问,且其严重性相对较轻,但却恰好说明针对iOS的第三方应用程
序像桌面系统对应的软件一样,只要安全相关的设计存在疏忽,就会受
到攻击。
2010年11月,现在归档为CVE-2011-4211的漏洞被曝光。这个漏洞
使PayPal应用程序受到了一个X.509证书验证问题的影响。客户机与服
务器建立SSL连接时会收到X.509服务器验证书,这个证书中主题字段值
需要与服务器主机名的值相同,而该应用程序并没有对二者的值进行匹
配。这个漏洞允许一个具有局域网访问权限的攻击者成为中间人,从而
获取或修改经由PayPal应用程序的通信数据。从理论上来说,该漏洞比
Citi Mobile漏洞更严重,因为它允许在没有控制应用程序或设备的前提
下,通过局域网访问来利用这个漏洞。但在实际操作中,这个漏洞需要
获取对局域网的访问权,利用起来就会变得十分困难。
2011年9月,一个跨站脚本攻击漏洞影响了Skype应用程序的3.0.1及
其以下版本。它是第三方应用程序在不需要获取局域网访问或设备物理
访问的情况下也会被远程利用的第一个实例。该漏洞通过把JavaScript代
码嵌入发送给用户的消息中的“全名”域内,使攻击者能够访问Skype应
用程序用户的文件系统。一旦接收到一条这样的消息,嵌入的JavaScript
脚本就会被执行。如果与处理URI机制的问题相结合,就可以允许攻击
者获取用户的文件,如联系人数据库,并传输该文件到远程系统。
2012年4月,iOS上包括Facebook以及Dropbox在内的几款流行软件
受到漏洞的影响,导致与进行身份验证的数据段存在本地设备上。攻击
者可以通过一个应用(如iExplorer)来入侵设备,浏览设备的文件系统和复制文件。这种攻击方式已经被证实。之后,攻击者还可以将文件复
制到另一设备上,并且通过“借来”的证书进行登录。
2012年11月,iOS上的Instagram应用程序的3.1.2版本受到了一个信
息泄露漏洞的影响。这个漏洞允许对设备网络连接进行中间人攻击的攻
击者获取会话信息,并且能利用该漏洞来恢复或删除信息。
2013年1月,iOS上的ESPN ScoreCenter应用程序的3.0.0版本受到了
两个漏洞的影响:一个是XSS漏洞,另一个是明文认证漏洞。这个应用
程序没有对用户的输入进行审查,而且泄露了敏感数据,包括网络上未
加密的用户名及密码。
无论目标应用程序是iOS捆绑应用程序还是第三方应用程序,当要
入侵iPhone时,获取应用程序的控制都只完成了一半的工作。
由于应用程序沙箱和代码签名验证的限制,即便成功获取了对一个
应用程序的控制,要从目标设备获取信息也是相对困难的。这和传统的
桌面系统不同,在桌面系统上一旦获取了对应用程序的控制,再获取信
息的成功率就非常大,甚至可以继续攻击系统中各个应用程序的执行。
要真正攻陷并占领iPhone,应用程序级的攻击必须利用内核级的漏洞攻
击才可能奏效,对于那些期待破解iOS的人来说,这个难度相当高。富
有经验的攻击者会倾向于重新利用内核级的漏洞。不管哪种情况,iOS
默认绑定的应用程序,再加上APP商店中可以下载的超过80万种的应用
程序,这些为数众多的应用程序都提供了大量的攻击目标。所以在将
来,针对应用程序漏洞的攻击将继续成为获取iOS设备初始访问权限的
最可靠途径。
2.针对应用程序漏洞的防范一个新的漏洞出现之后,苹果公司会迅速对漏洞进行处理,将原应
用程序中的漏洞修补后发布新的版本。用户在使用苹果设备的时候要时
刻保持操作系统为最新版本的iOS系统,关注App Store的应用程序更新
提醒,及时将应用程序升级到最新版本。 技巧与问答
设置iOS应用访问权限
在桌面找到“设置”图标,单击进入设置界面。
进入设置界面后,单击“通用”选项。在通用选项中单击“访问控制”选项。
如果访问控制功能处于关闭状态,则单击“启用访问限制”选项打开
该功能。
在开启访问限制功能前需要设置访问密码,同时对密码进行确认。开启访问限制功能后我们就可以对手机中已安装的应用程序进行访
问限制的设定,在默认情况下所有的应用程序都是允许访问的,我们可
以将其关闭。如单击“相机”选项右侧的开关按钮,就可以对相机的访问
进行限制。iPhone进入安全模式
(1)将iPhone关机,然后重新启动。
(2)当屏幕出现白苹果图标时,按住音量加键直到iPhone开机。禁用应用程序访问通讯录
在设置界面单击“隐私”选项。
在隐私设置界面单击“通讯录”界面。在通讯录界面我们看到当前可以访问手机通讯录的应用程序,这时
可以通过单击应用程序右侧的开关按钮来限制这些程序对手机通讯录的
访问。————————————————————第3章 智能手机操作系统——
Android
Android操作系统由Google公司和开放手机联盟领导及开发,是一
种基于Linux的自由及开放源代码的操作系统,主要使用于移动设备,如智能手机和平板电脑。Android操作系统因其开放性强,被广泛应用
到各大手机厂商生产的智能手机中,而基于Android操作系统的应用程
序更是数不胜数。Android操作系统价格低廉,应用范围广泛,功能强
大,深受智能手机用户的青睐。它不仅可以满足用户打电话、发短信等
基本要求,还可以连接互联网满足用户的上网需求,同时还可以是一个
音乐播放器、视频播放器、照相机……Android操作系统除了具有传统
手机的功能外,还可以兼容许多应用程序,对智能手机的功能进行扩
展,例如,可以安装QQ、微信等即时聊天工具与亲朋好友保持联系,还可以安装高德地图方便我们的出行等。3.1 Android操作系统的发展历程
3.1.1 Android操作系统的发展回顾
Android系统最初的研发公司名叫Android,谷歌公司在2005将其收
购。接着,Android系统的研发工作由谷歌负责。
2007年11月5日,谷歌公司正式向外界展示了这款名为Android的操
作系统,当天还宣布将建立一个全球性的联盟组织。这个组织由34家手
机制造商、软件开发商、电信运营商以及芯片制造商共同组成。这个联
盟的主要作用就是共同支持手机操作系统的开发以及提供相应的应用软
件,共同开发Android系统的开放源代码。
2008年5月28日到29日,在Google IO大会上,谷歌提出了Android
HAL架构图。同年8月18日,Android系统获得了美国联邦通信委员会
(FCC)的批准。
2008年9月,谷歌正式发布了Android 1.0系统,这也是Android系统
最早的版本。在2008年,诺基亚占领了智能手机市场的绝大多数份额,且Symbian(塞班)系统在智能手机市场中占有绝对优势,因此谷歌发
布的Android 1.0系统并没有被外界看好,甚至有言论称谷歌最多一年就
会放弃Android系统。
2009年4月,谷歌正式推出了Android 1.5版本的操作系统。从
Android 1.5版本开始,谷歌便以甜品的名字为Android的版本命名,Android 1.5命名为Cupcake(纸杯蛋糕)。2009年9月,谷歌发布了Android 1.6的正式版,并且推出了搭载
Android 1.6正式版的手机HTC Hero(G3)。凭借着出色的外观设计以
及全新的Android 1.6操作系统,HTC Hero(G3)成为当时全球最受欢
迎的手机。Android 1.6操作系统是以Donut(甜甜圈)来命名的。
2009年10月,谷歌发布了Android 2.0操作系统,并将Android 2.0至
Android 2.1系统的版本统称为Eclair(松饼)。2010年2月,Android操作系统的驱动程序从Linux内核“状态树”上除
去。从此,Android与Linux开发主流不再相同。同年5月,谷歌正式发
布了Android 2.2操作系统,并命名为Froyo(冻酸奶)。
2010年10月,电子市场上获得官方数字认证的Android应用数量已
经达到了10万,谷歌宣布Android系统达到了第一个里程碑,即Android
系统的应用增长非常迅速。
2010年12月,谷歌正式发布了Android 2.3操作系统——Gingerbread(姜饼)。
2011年1月,谷歌称Android设备新用户每天的新增数量达到了30万
部。到2011年7月,这个数字增长到55万部,而Android系统设备的用户
总数达到了1.35亿,Android系统已经成为智能手机领域占有量最高的系
统。
2012年6月28日,在Google IO大会上发布了Android 4.1(Jelly
Bean“果冻豆”)的更新包。2014年6月25日,于Google IO 2014大会上发布Developer版
(Android L),之后在同年10月15日正式发布且命名为Lollipop(棒棒
糖)。2015年9月30日,谷歌公司在2015年秋季新品发布会上正式发布了
代号为“Marshmallow(棉花糖)”的Android 6.0。据测试,Android 6.0可
使设备续航时间提升30%。3.1.2 Android 最新版本
目前,谷歌公布的Android操作系统的最新版本为Android 6.0。根据
Android系统以往的惯例,每一代新系统往往会根据其字母代号对应一
种甜食的名称。Android 6.0操作系统也不例外,其代号为“M”,表示的
意思是“Marshmallow(棉花糖)”。针对Android 6.0版本,一个在业内
已经被热议的议题是:Android M“为工作升级而生”(Android for Work
Update)。有业内人士将这种说法解释为“Android M将把Android的强大
功能拓展至任何你所能看到的工作领域”。3.1.3 Android 最新版本新特性
(1)Android Pay
Android Pay主要用于用户的日常支付,即用户消费的时候可以通过
Android Pay功能进行支付,这样就避免了现金的使用,支付过程也更加
简单高效。
(2)指纹识别
现在指纹识别功能在中高端Android手机中已经很常见,这些功能
都是由各个厂商自行开发的,没有系统底层的支持,开发成本较高。
Android 6.0将指纹识别加入了系统层面,同时提供原生的指纹识别
API,将各厂商开发指纹识别模块的成本大大降低。不仅如此,Android
6.0提供的原生指纹识别还将大大提升Android手机在指纹识别支付中的
安全性。
(3)更完整的应用权限管理
在之前的Android版本中系统虽然提供了应用权限管理功能,但是
对于用户来说权限管理能力有限,更为深入的应用权限管理需要借助于
第三方应用来实现。为了进一步强化用户对应用程序的权限管理,Android 6.0版本将应用权限管理加入到系统层面。这样用户就可以通过
系统自带的功能管理权限,而不再需要安装第三方软件进行应用权限的
管理。
(4)锁屏下语音搜索
虽然现在许多Android智能手机在锁屏状态下都支持语音唤醒功能,但这种功能由第三方软件提供。Android 6.0版本对语音功能进行了
升级,在系统层面加入锁屏下语音搜索。这样用户就可以在锁屏状态下
通过语音的方式进行搜索,在用户体验方面有了巨大的提升。
(5)Now on Tap功能
Now on Tap功能与Google搜索紧密结合,使用户可以在不切换应用
的情况下进行搜索。例如,我们在QQ聊天中提到出行路线,这时候不
需要切换应用就可以进行谷歌搜索。
(6)App Links
通过App Links功能,Android系统能够对连接内容进行识别,并且
向网络服务器发出申请,直接使用客户端进行访问。客户端功能完备,这有利于改善用户体验,让用户在APP客户端可完成更多操作。
(7)Doze电量管理
Android 6.0自带Doze电量管理功能,在“Doze”模式下,系统会对手
机进行检测,当系统在一段时间内检测不到手机移动时,就会让应用进
入休眠状态,并且自动关闭后台以减少功耗。当屏幕处于关闭状态时,平均续航时间就会提高30%。3.2 分层认识Android系统
3.2.1 认识系统分层
对于分层的概念大家可以这样理解,把系统最低级、最抽象的部分
称为第一层,也就是通常我们所说的最底层。在最底层之上还会有第二
层、第三层……根据系统设计方案的不同,系统所分的层次也会不同。
有了分层的概念后,我们再来了解一下各层之间的关系。通常最底
层实现的功能会直接被第二层所利用,然后在最底层的基础上实现新的
功能。第二层实现的新功能同理会直接被第三层所利用,继续实现新的
功能。
3.2.2 系统架构分层的优势
系统架构之所以使用分层的思想是因为分层有许多优势,可以使分
工明确,提升系统的开发效率。系统架构分层的优势具体体现在以下几
点。
1.分散开发人员的关注
在系统开发过程中,由于采用了分层的思想,所以开发人员的分工
也会比较明确。每个开发人员在开发过程中不需要过多地考虑其他层次
的问题,只需要集中精力开发本层的功能即可。这样每层的开发人员就可以专注于本层功能的开发,开发效率也会明显地提高。
2.无损替换
在系统的各个分层之间,下层向上层提供服务,上层通过下层提供
的服务实现本层的功能。也就是说上层只关心下层提供的服务,而不关
心是由谁提供的,这样当某一层出现问题时就可以将本层替换,只要提
供的服务相同就不会影响其他层的工作,从而保持整个系统的完整性。
3.降低了系统间的依赖性
分层之后系统的各层之间只与相邻两层发生关系,即下层向上层提
供服务。某一层只需要利用下层提供的服务实现相应的功能,并向自己
的上层提供服务。因此,分层系统中的某一层最多只与两层发生依赖关
系,大大降低了系统之间的依赖性。
4.复用
分层的复用体现在某一层提供的功能可以被多个上层所利用,就好
比我们生活中的饮水机一样,只要大家需要喝水,饮水机就会被不同的
人利用,即饮水机会向不同的人提供服务。
3.2.3 Android操作系统的基本架构
Android操作系统的基本架构共分为四层,由上至下分别为:应用程序层、应用程序框架层、系统运行库层、Linux核心层。接下来的每
一个小节中将分别为大家介绍每层的作用和实现的功能。
3.2.4 应用程序层
应用程序层主要是通过一些友好的交互界面,向用户提供一些具体
的应用功能,如智能手机主界面、联系人、浏览器等。另外,我们在智
能手机上使用的各种APP也都是属于应用程序层。
3.2.5 应用程序框架层
Android操作系统的应用程序框架层包含了许多管理器,通常所说的Anroid系统开发人员大部分情况下就是负责这一部分。下面我们对这
一层中主要的部分进行简单的介绍。
(1)活动管理器
管理各个应用程序生命周期以及通常的导航回退功能。
(2)窗口管理器
管理所有的窗口程序。
(3)内容提供者
使得不同应用程序之间存取或者分享数据。
(4)视图系统
构建应用程序的基本组件。
(5)通知管理器
使得应用程序可以在状态栏中显示自定义的提示信息。
(6)包管理器
Android系统内的程序管理。
(7)电话管理器管理所有的移动设备功能。
(8)资源管理器
提供应用程序使用的各种非代码资源,如本地化字符串、图片、布
局文件、颜色文件等。
(9)位置管理器
提供位置服务。
Android操作系统的开发有这样的特点,就是开发人员可以访问核
心应用程序使用的所有API框架。在Android平台上发布的任何应用程序
都可以发布自己的功能模块,这些功能模块发布后可以被其他应用程序
所使用。由于Android操作系统具有这样的重用机制,用户就可以方便
地替换系统自带的应用程序组件。
3.2.6 系统运行库层
系统运行库层中包含了两个部分:一个是系统运行库,另一个是
Android运行时。这两个部分又包含了不同的内容。下面我们就来简单
了解一下系统运行库和Android运行时的各个部分。1.系统运行库
系统运行库是应用程序框架的支撑,在应用程序框架层与Linux内
核层之间起到了承上启下的作用。系统运行库主要由以下几个部分组
成。
(1)界面管理器
执行多个应用程序时,负责管理显示与存取操作间的互动,也负责
2D绘图与3D绘图进行显示合成。
(2)媒体框架
多媒体库,基于PacketVideo OpenCore;支持多种常用音频、视频
格式的录制和回放,编码格式包括MPEG4、MP3、H.264、AAC、ARM。
(3)SQLite
小型的关系型数据库引擎。
(4)OpenGLES
根据OpenGLES 1.0API标准实现的3D绘图函数库。
(5)FreeType
提供点阵字与向量字的描绘与显示。
(6)WebKit一套网页浏览器的软件引擎。
(7)SGL
底层的2D图形渲染引擎。
(8)SSL
在Andorid上通信过程中实现握手。
(9)Libc
从BSD继承来的标准C系统函数库,专门为基于embedded linux的设
备定制。
2.Android运行时
Android应用程序采用Java语言进行编写,这些应用程序在系统中运
行的时候依赖于核心库和Dalvik虚拟机两部分。
(1)核心库
核心库提供了Java语言API中的大多数功能,同时也包含了Android
的一些核心API,如android.os、android.net、android.media等。
(2)Dalvik虚拟机
Android操作系统会在应用程序运行时为每一个应用程序分配一个
专有的进程,这些进程需要运行在不同的Dalvik虚拟机中。当然,这些
进程不是使用同一个Dalvik虚拟机实例,而是每个进程都会有自己的实例,且会在自己的实例中执行。Dalvik虚拟机是一种基于寄存器的Java
虚拟机,而不是传统的基于栈的虚拟机,并进行了内存资源使用的优化
以及拥有支持多个虚拟机的特点。
3.2.7 Linux核心层
Linux的核心层属于Android操作系统的最底层,主要向上层提供驱
动服务,如显示驱动、摄像头驱动、键盘驱动、Wi-Fi驱动、音频驱
动、闪存驱动等,上层系统通过这些驱动来调用手机硬件的各个部分。3.3 Android安全模型
Android系统安全模型在应用层面使用显式定义且经用户授权的应
用权限控制机制等,系统化地规范并强制各类应用程序的行为准则与权
限许可;引入应用程序签名机制,定义应用程序之间的信任关系与资源
共享的权限。从技术架构角度来看,Android安全模型基于强健的Linux
操作系统内核安全性,通过进程沙箱机制隔离进程资源,并且辅以独特
的内存管理技术与安全高效的进程间通信机制,适应嵌入式移动端处理
器性能与内存容量的限制。
Android安全模型主要提供以下几种安全机制。
1.进程沙箱隔离机制
Android应用程序在安装时被赋予独特的用户标识(UID),并永久
保持;应用程序及其运行的Dalvik虚拟机运行于独立的Linux进程空间,与UID不同的应用程序完全隔离。
2.应用程序签名机制
应用程序包(.apk文件)必须被开发者打上数字签名;同一开发者
可指定不同的应用程序共享UID,进而运行于同一进程空间共享资源。
3.权限声明机制应用程序需要显示声明权限、名称、权限组与保护级别。不同的级
别要求应用程序行使此权限时的认证方式不同:Normal级申请即可用;
Dangerous级需在安装时由用户确认才可用;Signature与
Signatureorsystem则必须是系统用户才可用。
4.访问控制机制
传统的Linux访问控制机制确保系统文件与用户数据不受非法访
问。
5.进程通信机制
Binder进程通信机制提供基于共享内存的高效进程通信;Binder基
于Client-Server模型,提供类似COM与CORBA的轻量级远程进程调用
(RPC);通过接口描述语言(AIDL)定义接口与交换数据的类型,确保进程间通信的数据不会溢出越界,以污染进程空间。
6.内存管理机制
基于标准Linux的低内存管理机制(OOM),设计实现了独特的低
内存清理(LMK)机制,将进程按重要性分级、分组。当内存不足
时,自动清理最低级别进程所占用的内存空间;同时,引入不同于传统
Linux共享内存机制的Android共享内存机制Shmem,具备清理不再使用
共享内存区域的能力。
Android安全模型的设计特点可概括为以下内容。① 采用多层架构,在保护用户信息安全的同时,保证开放平台上
各种应用的灵活性。
② 既允许经验丰富的开发者充分利用安全架构的灵活性,也为熟
悉安全架构的开发者提供更多可以信赖的默认安全性设置。
③ 鼓励用户了解应用程序是如何工作的,并鼓励用户对所持设备
进行安全控制。
④ 不但要面对恶意软件的威胁,而且还要考虑第三方应用程序的
恶意攻击。
⑤ 安全保护与风险控制同在,在安全防护失效时,尽量减少损
害,并尽快恢复使用。3.4 Android组件的基本功能
组件是对数据和方法的简单封装,开发人员利用组件可以提高开发
效率。Android操作系统为开发人员提供了四种组件,即活动、服务、广播接收器和内容提供商。活动组件用于表现功能;服务组件提供后台
运行服务,不提供用户界面;广播接收器用于接收广播;内容提供商可
支持在多个应用中存储和读取数据,相当于数据库。
3.4.1 活动
活动为用户的操作提供可视化界面,可用于设计良好的人机交互界
面,提升用户体验。我们在使用手机的时候,见到的一些包含说明的照
片、菜单项列表等都使用了活动。一个短消息应用程序可以包括一个用
于显示作为发送对象联系人的列表的组件,一个给选定的联系人写短信
的Activity以及翻阅以前的短信和改变设置的组件。虽然不同的组件可
以内聚成一个用户界面,但这其中每个组件都与其他的保持独立。
应用程序中包含的活动个数是不固定的,一个应用程序可以只有一
个活动,也可以同时包含多个活动。一个应用程序对组件的需求,取决
于这个应用程序要实现的功能。一般情况下,我们在打开一个应用程序
的时候总会有一个主界面出现,其他界面都需要从主界面跳转,这样的
界面和功能就是由活动来实现的。
使用组件设计一个用户界面的时候,每个活动都会被分配一个默认
的窗口进行绘制。这个窗口既可以是满屏显示的,也可以是一个在最上层显示的浮动窗口。一个活动也可以使用多个窗口,比如在一个界面运
行过程中弹出的一个与用户交互的小对话框,或是当用户选择了屏幕上
特定项目后显示的必要信息。
窗口显示的可视内容是由一系列视图构成的,这些视图均继承自
View 基类。每个视图均控制着窗口中一块特定的矩形空间。父级视图
包含并组织它子视图的布局。叶节点视图位于视图层次最底端,在它们
控制的矩形中进行绘制,并对用户操作做出响应。所以,视图是活动与
用户进行交互的界面。
3.4.2 服务
每个服务都继承自Service基类。服务比较抽象,不像活动那样有可
视化的界面,用户看不到它,但它可以在后台运行。例如,我们在聊
QQ的时候,后台可以为我们提供音乐播放的服务。另外,服务还可以
为活动提供必要的运算结果。
用户在播放音乐的时候,往往会有一个或多个活动来支持用户选择
并播放歌曲。当用户在音乐播放过程中需要切换应用程序的时候,由于
界面转换后活动就会不同,所以音乐播放这个任务本身不应该为任何
Activity所处理。为了保证用户在切换应用程序后音乐还能继续播放,媒体播放器Activity应该启用一个运行于后台的服务,使得播放音乐的
活动消失后音乐播放服务仍然可以在后台运行。
Android系统提供的组件都运行于应用程序进程的主线程内,服务
也一样。所以它不会对其他组件或用户界面有任何干扰,一般会派生一
个新线程来进行一些耗时任务。开启Service有两种方式。
1.Context.startService
Service会经历onCreate→onStart(如果Service还没有运行,则
Android先调用onCreate,然后调用onStart;如果Service已经运行,则
只调用onStart,所以一个Service的onStart方法可能会重复调用多
次);StopService的时候直接onDestroy,如果是调用者自己直接退出而
没有调用StopService的话,Service会一直在后台运行。该Service的调用
者再启动起来后,可以通过stopService关闭Service。
多次调用Context.startservice不会嵌套,所以无论同一个服务被启
动了多少次,一旦调用Context.stopService或者StopSelf,都会被停
止。补充说明:传递给StartService的Intent对象会传递给onStart方
法。调用顺序为:onCreate→onStart(可多次调用)→onDestroy。
2.Context.bindService
Service会经历onCreate→onBind,onBind将返回给客户端一个
IBind接口实例,IBind允许客户端回调服务的方法,比如得到Service运
行的状态或其他操作。这个时候会把调用者(Context,例如Activity)
和Service绑定在一起,Context退出了,Srevice就会调用
onUnbind→onDestroyed相应退出,所谓绑定在一起就共存亡了。
3.4.3 广播接收器广播接收器,顾名思义这是一个专注于接收广播通知信息的组件,并对接收的广播消息做出对应处理。所有的接收器均继承自
BroadcastReceiver基类。很多广播是源自于系统代码的,比如通知时区
改变、电池电量低、拍摄了一张照片或者用户改变了语言选项。应用程
序也可以进行广播,比如通知其他应用程序一些数据下载完成并处于可
用状态。
虽然广播接收器没有用户界面,但是它可以启动一个活动来响应它
们收到的信息,或者用NotificationManager来通知用户,通知可以用很
多种方式来吸引用户的注意力,比如我们接收到QQ消息时会有声音提
示、振动提示和提示灯闪烁,且QQ消息的内容还会显示在通知栏中。
在Android操作系统中,Broadcast是一种广泛运用在应用程序之间
传输信息的机制。而BroadcastReceiver是对发送出来的Broadcast进行过
滤接受并响应的一类组件,可以使用BroadcastReceiver来让应用对一个
外部的事件做出响应。这是非常有意思的,例如,当电话呼入这个外部
事件到来的时候,可以利用BroadcastReceiver进行处理。例如,当成功
下载一个程序的时候,仍然可以利用BroadcastReceiver进行处理。
BroadcastReceiver不能生成UI,也就是说对于用户来说不是透明的,即
用户是看不到的。BroadcastReceiver通过NotificationManager来通知用户
这些事情发生了。BroadcastReceiver既可以在AndroidManifest.xml中注
册,也可以在运行时的代码中使用Context.registerReceiver进行注册。
只要是注册了,当事件来临的时候,即使程序没有启动,系统也会在需
要的时候启动程序。当然,各种应用还可以通过使用
Context.sendBroadcast将它们自己的Intent Broadcasts广播给其他应用程
序。3.4.4 内容提供者
内容提供者是Android提供的第三方应用数据的访问方案。在
Android系统中,一个应用程序所使用的数据库、文件等内容,都是不
允许其他应用程序直接访问的,除非这些数据被放置在了SD卡中。在
Android系统中并不是把每个应用程序绝对地孤立起来,而是可以使用
内容提供者进行相互访问。
内容提供者继承于ContentProvider基类,为其他应用程序取用和存
储它管理的数据实现了一套标准方法。然而,应用程序并不直接调用这
些方法,而是使用一个 ContentResolver对象调用它的方法作为替代。
ContentResolver可以与任意内容提供者进行会话,与其合作来对所有相
关交互通信进行管理。内容提供者将一些特定的应用程序数据供给其他
应用程序使用,数据可以存储于文件系统、SQLite数据库或其他方式。3.5 使用备份保护数据
为了防止我们手机中存储的数据丢失或者遭到破坏,对我们的工作
和生活造成严重的影响,我们可以通过备份的方式将手机中的数据转存
到其他地方。这样手机中的数据即使丢失或遭到破坏,我们也可以很快
地将数据复原,避免因数据丢失或遭到破坏给我们带来损失。
3.5.1 手动备份
手动备份的方法很简单,只需要一根与手机配套的数据线和一台计
算机即可。我们将手机与计算机用数据线连接起来,然后用计算机就可
以直接读取手机中存储的数据。这样我们就可以将手机中的数据备份到
计算机硬盘上,也可以把手机中的数据存储到计算机的网络云盘中,使
之更加安全。下面我们就来简单地演示一下将手机中的数据备份到计算
机硬盘中的方法。
首先我们使用数据线将手机与计算机连接起来,如果手机是首次连
接计算机,还需要等待计算机安装驱动。安装驱动的过程很快,只需要
几秒钟的时间。驱动安装完成后,就可以进行下面的操作了。
驱动安装完成后,手机系统会提示手机已经通过USB连接到计算
机。这时我们就可以通过单击屏幕下方的“打开USB存储设备”按钮,在
计算机和Android手机的SD卡之间进行复制文件的操作。
单击“打开USB存储设备”按钮后,系统会提示如果打开USB存储设备,某些正在使用的应用程序可能会停止,并且在USB存储设备关闭前
都无法使用。这里我们单击“确定”按钮,继续进行下面的操作。
确定要打开USB存储设备后,系统就会将USB存储设备打开。系统
提示USB存储设备正在使用中,这时就可以在计算机和SD卡之间复制
文件了,如左下图所示。
我们在计算机桌面上找到“计算机”图标,双击打开计算机,如右下
图所示。在计算机中我们可以看到计算机硬盘的存储信息,在“有可移动存
储的设备”一栏我们可以看到有一个存储磁盘的名称为“GIONEE”,这就
是我们手机中的SD卡。双击GIONEE磁盘,可查看SD卡中的存储信
息。在GIONEE磁盘中我们可以看到SD卡中存储的所有数据,并对其中
的数据进行任意的复制。例如,想要把SD卡中的照片备份到计算机
上,就可以找到存储照片的文件夹。一般来说,手机中的照片都是存储
在“DCIM”文件中的。我们选中“DCIM文件夹”单击右键,在弹出的菜单列表中单击“复
制”选项。将DCIM文件夹复制后,我们还需要在计算机硬盘中创建一个存放
备份的文件夹,这样便于以后的管理。在这里,我们新建一个名字叫
作“手机备份”的文件夹。
双击“手机备份”文件夹,进入文件夹后单击右键,在弹出的菜单列
表中单击“粘贴”选项,刚才复制的DCIM文件夹就会被粘贴到“手机备份”文件夹中了。
由于复制文件的速度有限,所以在复制的文件较大时可能需要我们
等待一段时间。文件的所有内容都粘贴完成后,就可以在“手机备份”文
件夹中看到DCIM文件夹,如左下图所示。这样我们的照片就全部备份
到计算机硬盘中了。
将我们的数据备份完成后,单击手机中的“关闭USB存储设备”按钮
将USB存储设备关闭,然后拔掉手机与计算机相连的数据线即可,如右
下图所示。3.5.2 利用91助手备份
除了可以对手机数据进行手动备份外,还可以借助于第三方软件进
行备份。这种备份操作都很简单,只需在计算机和手机上安装相应的客
户端软件即可。
首先,我们到91助手官网下载计算机端应用程序,91助手官网提供
了一键安装到计算机的功能,我们只需单击“安装到计算机”按钮便可将
91助手直接安装到计算机上。91助手安装完成后打开,我们可以看到它提供了两种设备连接方
式:一种是利用Wi-Fi连接,另一种是利用USB数据线连接。在没有无
线热点的情况下我们可以选择USB数据线连接的方式,单击“使用USB
线连接计算机”选项,然后将手机与计算机用USB数据线连接,如左下
图所示。
使用USB数据线将手机与计算机连接之后,91助手会自动在手机端
下载安装百度连接助手,这是手机端的连接软件,如右下图所示。手机
连接助手安装完成后会自动运行,这样91助手就可以读取手机中的信息
了。91助手连接到手机后,其主界面右侧会显示手机屏幕当前显示的内
容。我们在91助手上面的菜单栏中单击“我的设备”菜单选项,在左侧的
菜单中单击“备份还原”选项,这时界面右侧会出现手机中可以备份的所
有内容。我们可以对要备份的内容进行选择,然后修改备份的位置。
在“备份到”标签后91助手给出了默认的备份路径,单击后面的“修改”按
钮可以自定义备份路径。备份路径设置完成后,单击下面的“备份”按钮
即可备份。在备份的过程中我们要保持设备的连通性,如果设备断开将导致备
份失败。备份完成后,91助手会提示备份完成,并将备份的内容反馈给用
户。
由于在备份前我们将备份路径设置成了保存到桌面,这时就可以在
桌面上看到手机备份的文件夹。3.6 Android系统刷机
3.6.1 Android系统刷机常识
Android系统在使用过程中会出现一些Bug,系统开发厂商会将这些
Bug修复,对现有版本进行升级。刷机就是为了更新手机中的操作系统
版本,修补旧版本中存在的一些Bug。另外,通过刷机还可以在不改变
手机硬件的情况下提升手机的功能。
刷机并不是每次都能成功,造成刷机失败的原因有多种,最常见的
有刷机文件与手机型号不匹配、刷机过程中电量不足、手机自动关机、手机内存不足和手机硬件损坏等。
我们在刷机之前需要对刷机使用的名词有一定的了解,这将有助于
我们刷机成功。
1.固件、刷新固件
固件是指固化的软件,它是把某个系统程序写入特定的硬件系统中
的flash ROM。手机固件相当于手机的系统,刷新固件即用新固件中的
系统替换现有的系统。
2.固件版本固件版本是指官方发布的固件的版本号,里面包含了应用部分的更
新和基带部分的更新。通常固件的版本号越大,版本就越新。
3.ROM(包)
ROM全称为Read-Only Memory,即只读存储器。只读存储器的特
点就是只能读取存储器中的数据而不能对其进行写入操作,一旦将资料
储存就无法改变或删除。通常用在不需经常变更资料的电子或计算机系
统中,并且资料不会因为电源关闭而消失。
4.Recovery(恢复模式 )
Recovery为刷机提供了一个可视化的界面。就像我们为计算机重装
系统的时候进入的DOS界面或者winPE,安装了Recovery相当于给系统
安装了一个DOS界面。在Recovery界面,可以选择安装系统、清空数
据、ghost备份系统、恢复系统等。
5.Root
Root权限是手机中用户管理的最高权限,相当于计算机中的
Administrator用户权限 。Root是Android系统中的超级管理员用户账户,使用该账户可以对手机操作系统进行任意的操作。在刷机过程中必须获
得Root权限,否则将不能对手机系统进行刷机操作。
6.RADIORADIO简单地说是无线通信模块的驱动程序。ROM是系统程序,RADIO负责网络通信;ROM和RADIO可以分开刷,互不影响。如果你
的手机刷新了ROM后有通信方面的问题,可以刷新RADIO试一试。
7.SPL
SPL全称是Second Program Loader,即二级程序加载器,负责装载
操作系统到RAM中。另外SPL还包括许多系统命令,如mtty中使用的命
令等。SPL损坏后,还可以用烧录器重写。
8.金卡
在刷机的过程中要保证手机的销售地和升级程序一致,否则会被提
示客户ID错误,刷机操作中断。为了保证能够刷机成功,可以使用金卡
来避免这种情况的发生。金卡实际上就是在一张普通的TF卡上写入一些
引导信息,使得升级程序或者说你本机 SPL的检测跳过对客户ID的检
查,从而避免刷机系统与手机场地不同导致刷机失败,使非官方版本的
机器得以顺利升级。
3.6.2 Android系统刷机教程
Android手机刷机可以借助于第三方软件来完成。现在市场上流行
的刷机软件有许多种,如刷机精灵、奇兔刷机、刷机大师等。在这里,我们以刷机精灵为例,简单介绍一下刷机的方法。刷机前我们先到刷机精灵官网下载计算机端刷机精灵应用程序,然
后在刷机精灵官网单击“下载刷机精灵”按钮就可以直接将刷机精灵安装
包下载到计算机上。
将刷机精灵安装包安装到计算机上,然后打开刷机精灵,在主界面
我们会看到提示,要求我们使用USB数据线连接设备。这时,我们将手
机通过USB数据线与计算机连接。连接成功后,刷机精灵主界面会显示当前连接设备的名称,并提供
相应的刷机固件。我们可以单击“一键刷机”按钮使用刷机精灵推荐的固
件刷机,也可以单击“更多”按钮选择其他可用的固件。
单击“更多”按钮后,刷机精灵会显示当前手机可用的刷机固件版
本。我们可根据自己的需要选择相应的固件,然后单击后面的“一键刷
机”按钮进行刷机操作。3.7 Android 系统获取Root权限
Root权限属于系统权限的一种,是Linux和Unix系统中的超级管理
员用户账户。由于Android系统是基于Linux内核开发的操作系统,所以
在Android操作系统中Root权限也是最高的权限,获取Root权限后就可
以对Android操作系统进行任意的操作。
3.7.1 Root原理简介
Root权限往往被视为一种黑客技术,因为在手机厂商生产手机的时
候并没有开放Root权限,这样做主要是为了保障操作系统的安全。除了
个别品牌的手机开放了Root权限外,其他手机的Root权限获取都需要借
助于系统的漏洞来实现。因此,由于不同厂商生产的手机系统漏洞不
同,获取Root权限的方式也会有所不同。Root的基本原理就是利用系统
漏洞,将su和对应的Android管理应用复制到system分区。常见的系统
漏洞有zergRush、Gingerbreak、psneuter等。不过,不管采用什么原理实
现Root,最终都需要将su可执行文件复制到Android系统的system分区
下,并用chmod命令为其设置可执行权限和setuid权限。为了让用户可以
控制Root权限的使用,防止其被未经授权的应用所调用,通常还有一个
Android应用程序来管理su程序的行为。
3.7.2 获取Root权限的优点与缺点
我们在看待获取Root权限这个行为的时候应该看到它的两面性,即对手机进行Root权限获取既有好处也有坏处。下面我们就来看一下获取
Root权限的优点和缺点。
1.获取Root权限的优点
① 获取Root权限后用户就可以对手机系统进行任意的操作,这样就
可以备份系统。
② 为了使系统更加符合用户需求,用户可以在获取Root权限后修改
系统的内部程序。
③ 可以将安装在手机中的应用程序转移到SD卡上,减轻手机负
担;还可以删除后台无用程序,增加手机运行内存,加快手机运行速
度。
④ 可以通过直接替换系统内的文件或者刷入开发者修改好的zip安
装包的方法,修改手机的开机画面、导航栏、通知栏、字体等。
⑤ 可以刷入第三方的Recovery,对手机进行刷机、备份等操作。
⑥ 可以汉化手机系统,使系统使用中文显示,以更符合我们的习
惯。
2.获取Root权限的缺点
① 获取Root权限后,用户可能会误删系统自带软件,导致手机系统
崩溃。② 随意授予软件管理权限可导致手机资料泄露。
③ 手机一旦获取Root权限就不能进行OTA升级,也不能享受保修
服务。
④ 增大被攻击者攻击的概率。
3.7.3 获取Root权限的方法
在使用智能手机的时候可能会需要获取Root权限,这里我们以刷机
精灵为例来简单地介绍一下获取Root权限的方法。
首先要去刷机精灵官网下载刷机精灵安装包,在刷机精灵主界面可
以单击“下载刷机精灵”按钮,将刷机精灵安装包下载到计算机上。
将下载的刷机精灵安装包安装到计算机上,然后使用USB数据线将
手机和计算机连接起来。打开刷机精灵,我们在主界面可以看到刷机精
灵功能栏有“一键Root”功能,单击“一键Root”选项开始对手机进行Root
权限获取。单击“一键Root”选项后刷机精灵启动了Root精灵程序,这时单
击“立即进入”按钮运行Root精灵。
运行Root精灵后,Root精灵自动连接手机,并检测手机当前是否处
于Root状态。Root精灵对手机Root情况检测完毕后,会将结果反馈给我们。如果
我们的手机尚未获取Root权限,就可以单击“一键安全Root”按钮开始对
手机Root权限进行获取。
Root精灵在获取Root权限的过程中手机会自动重启,这属于正常现
象。同时手机端会自动安装相应的Root应用程序,这个过程需要我们等
待几分钟。等待一段时间后Root精灵就会将Root结果反馈给我们,Root成功后
Root精灵会提示我们已经成功获取Root权限。
3.7.4 避免一键Root恶意软件的危害
为了方便获取Root权限,采用一键Root的方式确实是一个不错的选
择。如今市面上一键Root软件非常多,但并不是每一款都是安全的。在使用第三方软件进行一键Root操作的时候,很可能被第三方软件攻击。
一键Root过程对我们来说是透明的,我们不知道第三方软件获取Root权
限的过程,也不能保证第三方软件没有在获取Root权限的同时对手机做
其他的改动。所以说,一键Root的方式和进行一键Root所使用的软件都
有可能给我们的手机带来危害。
为了避免一键Root恶意软件带来的危害,我们可以从以下几个方面
入手。
① 不使用手机端一键Root,而使用计算机端大品牌Root软件进行
Root,如刷机精灵等Root破解工具。
② 不从来历不明渠道下载应用,且一定要选择官方认证应用版本
下载。
③ 刷机时不刷入来历不明的ROM包,应在带有ROM安全检测的
ROM市场下载ROM,如ROM之家等。
④ 使用手机需注意,当手机提示一些应用获取不需要权限时应禁
止,比如提示用户获取位置信息、短信权限等。3.8 认识Android模拟器
Android模拟器是一个能在Windows平台模拟Android手机系统的模
拟器。我们通过Android模拟器能在计算机上模拟出Android手机运行环
境,这给我们提供了免费体验Android手机的机会。同时Android模拟器
也可以应用到Android应用程序开发中,Android开发人员可以将新开发
的应用程序放到Android模拟器中测试运行效果。
Android模拟器能够模拟除了接听和拨打电话外的所有移动设备上
的典型功能和行为。Android模拟器提供了大量的导航和控制键,你可以通过鼠标或键盘点击这些按键来为自己的应用程序产生事件;同时,它还有一个屏幕用于显示Android自带应用程序和自己的应用程序。为
了便于模拟和测试应用程序,Android模拟器允许你的应用程序通过
Android平台服务调用其他程序、访问网络、播放音频和视频、保存和
传输数据、通知用户、渲染图像过渡和场景。Android模拟器同样具有
强大的调试能力,例如,能够记录内核输出的控制台、模拟程序中断
(如接收短信或打入电话)、模拟数据通道中的延时效果和遗失。3.9 Android平台常见恶意软件及
病毒的分类
3.9.1 ROM内置类恶意软件病毒
(1)a.privacy .ju6.[伪Google升级]
该病毒安装后没有启动图标,一旦激活后台便自动下载安装其他应
用,同时卸载手机应用,这不但消耗用户流量,还可能给用户带来一定
的经济损失以及进一步的安全隐患。该病毒还会上传用户数据,跟踪用
户位置,造成用户隐私泄露。
(2)a.payment.pmx.[刷机吸费大盗]
该病毒安装后没有启动图标,一旦激活便在特定的时间向某些特定
的SP号码发送扣费信息,并删除相关的反馈信息,让用户在不知情的情
况下遭受严重的经济损失。除此之外,该病毒还会自动连接网络,读取
用户信息并且上传用户信息,造成用户个人隐私的泄露。
(3)a.payment.dg
该病毒与a.payment.pmx.[刷机吸费大盗]病毒基本相同,唯一的
区别在于a.payment.dg读取并且上传用户手机IMEI、IMSI和手机号码等
信息,造成用户个人隐私的泄露。
(4)a.privacy .devicestatservice.[盗密诡计]该病毒通过刷ROM的形式安装到用户手机,安装后无启动图标,一旦激活便盗取包括ICCID、IMEI、IMSI、MSISDN等在内的信息,给
用户的隐私造成威胁。
(5)a.payment.dg.a.[系统杀手]
该病毒被内置到ROM内,具有系统最高权限,不但不能通过正常
途径卸载,而且能够阻止指定安全软件被安装,同时发送大量的扣费短
信并删除指定号码发送的短信,给用户带来严重的经济损失。
3.9.2 破坏类恶意软件病毒
(1)a.privacy.atools.[万能定时器]
该病毒伪装成一款定时软件,并在运行时自动获取Root权限,可能
联网下载并静默安装其他恶意应用,对用户手机安全造成威胁。
(2)a.privacy .dbsoft.[宅男必备]
该病毒伪装成一款写真集软件诱导用户下载安装,激活后利用
Android系统漏洞获取Root权限,通过终端设备无提示强制联网,下载
并静默安装其他恶意软件。这不仅消耗用户数据流量,有可能给用户带
来高额的流量费用,而且有可能影响手机或其他软件的正常运行和使
用。
(3)a.privacy.mmainservice.a
该病毒经常伪装成系统软件,启动后从后台服务器静默下载子包,在破解Root权限后进行静默安装。这一系列动作都在用户不知情的情况
下完成,给用户的手机安全带来严重威胁。
(4)a.privacy.safesys.[Root破坏王]
该病毒通常伪装成某些热门小型应用,在使用过程中会弹出Root权
限授予请求。如果被授予了Root权限,则在后台下载其他恶意程序并静
默安装,对用户手机安全造成威胁。
(5)a.privacy.AppleService
该病毒经常伪装成游戏软件,并开机自动启动,启动后获取Root权
限,以实现静默安装病毒子包,给用户的手机安全带来严重威胁。
3.9.3 吸费类恶意软件病毒
(1)a.payment .fzbk.[吸费海盗王]
此病毒嵌入一款国外著名的游戏软件里,散布在几个大的论坛与电
子市场上。另外,病毒发作时也是隐蔽的短信扣费,扣费指令与发送时
机由云端配置。但这个病毒在扣费成功后,还会向固定的几个手机号码
发送扣费手机的IMEI号等信息,部分存在分成对账的可能。
(2)a.payment.mj.[麻吉吸费木马]
该病毒以正常软件名义诱导用户下载安装,一旦激活便试图向多个
以106开头的号码发送信息,订购SP高额业务,同时屏蔽运营商的订购
短信,使用户在无法察觉的情况下遭受经济损失。(3)a.payment.smshider.[美女勾魂吸费大盗]
该病毒以“美女勾魂”软件名义诱导用户下载安装,一旦激活就会
获取用户的IMEI号、手机号等信息上传,并且会发送短信订购某些收费
SP业务,同时删除发送信息,不让用户发现。这很可能给用户造成严重
的经济损失以及个人隐私的泄露。
(4)a.payment .keji.[饥渴吸费魔]
该病毒捆绑正常游戏软件诱导用户安装,安装主程序后启动,提示
升级,用户一旦确认升级便安装了该病毒子包;同时该病毒尝试利用系
统漏洞获取Root权限,进行静默安装。病毒激活后,每隔数分钟向号码
10656发送信息,并屏蔽10086短信;同时,在后台拨打指定号码,该号码通过服务器远程设定,可能会消耗用户大量的资费。另外该病毒
会终止某些安全应用,给用户的手机带来严重的安全隐患。
(5)a.payment .zchess.[爱情连陷]
该病毒以“爱情”名义诱导用户下载安装,每次启动都会发送扣费
信息到以106开头的扣费端口,并删除回执短信,给用户造成严重的经
济损失;同时该病毒还收集IMSI、地理位置等用户信息上传到服务器,造成用户个人隐私的泄露。
3.9.4 窃取隐私类恶意软件病毒
(1)a.remote.Netvision
该病毒安装后无图标,并且开机自启动。病毒运行后会监听手机收件箱,并根据其他接收到的指令,将收件箱中的短信内容转发到指定号
码,给用户隐私带来严重的安全威胁。
(2)a.remote.droiddream.[隐私盗贼]
该病毒经常捆绑在一些常用软件及游戏软件上,安装后病毒会利用
Android平台上的系统漏洞获取手机Root权限 ......
您现在查看是摘要介绍页, 详见PDF附件(41403KB,601页)。





