图书介绍
Android系统安全和反编译实战PDF|Epub|txt|kindle电子书版本网盘下载
![Android系统安全和反编译实战](https://www.shukui.net/cover/20/30968574.jpg)
- 杨峻编著 著
- 出版社: 北京:人民邮电出版社
- ISBN:9787115393036
- 出版时间:2015
- 标注页数:529页
- 文件大小:103MB
- 文件页数:539页
- 主题词:移动终端-应用程序-程序设计-安全技术
PDF下载
下载说明
Android系统安全和反编译实战PDF格式电子书版下载
下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!
(文件页数 要大于 标注页数,上中下等多册电子书除外)
注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具
图书目录
第1章 Android技术概述1
1.1 智能手机系统介绍1
1.2 搭建Android应用开发环境2
1.2.1 安装Android SDK的系统要求2
1.2.2 安装JDK2
1.2.3 获取并安装Eclipse和Android SDK5
1.2.4 安装ADT7
1.2.5 设定Android SDK Home8
1.2.6 验证开发环境9
1.2.7 创建Android虚拟设备(AVD)9
1.2.8 启动AVD模拟器10
1.2.9 解决搭建环境过程中的常见问题12
第2章 Android技术核心框架分析15
2.1 简析Android安装文件15
2.1.1 Android SDK目录结构15
2.1.2 android jar及内部结构16
2.1.3 阅读SDK帮助文档16
2.1.4 常用的SDK工具17
2.2 演示官方实例19
2.3 剖析Android系统架构23
2.3.1 Android体系结构介绍23
2.3.2 Android应用工程文件组成25
2.4 简述五大组件27
2.4.1 用Activity来表现界面27
2.4.2 用Intent和Intent Filters实现切换28
2.4.3 Service为你服务28
2.4.4 用Broadcast Intent/Receiver发送广播29
2.4.5 用Content Provider存储数据29
2.5 进程和线程29
2.5.1 先看进程29
2.5.2 再看线程30
2.5.3 应用程序的生命周期30
第3章 获取并编译源码33
3.1 在Linux系统中获取Android源码33
3.2 在Windows平台获取Android源码34
3.3 分析Android源码结构36
3.3.1 应用程序38
3.3.2 应用程序框架39
3.3.3 系统服务39
3.3.4 系统程序库41
3.3.5 系统运行库44
3.3.6 硬件抽象层44
3.4 编译源码45
3.4.1 搭建编译环境46
3.4.2 开始编译46
3.4.3 在模拟器中运行47
3.4.4 常见的错误分析48
3.4.5 实践演练——演示两种编译Android程序的方法49
3.5 编译Android Kernel52
3.5.1 获取Goldfish内核代码52
3.5.2 获取MSM内核代码55
3.5.3 获取OMAP内核代码55
3.5.4 编译Android的Linux内核55
3.6 编译源码生成SDK57
第4章 Android系统的安全机制61
4.1 Android安全机制概述61
4.1.1 Android的安全机制模型61
4.1.2 Android的安全框架概述62
4.2 分析Linux系统的安全机制63
4.2.1 Linux用户权限基础63
4.2.2 进程68
4.3 分析Android系统的安全机制70
4.3.1 沙箱模型介绍70
4.3.2 应用程序的安全机制72
4.3.3 分区加载机制73
第5章 内存安全机制——匿名共享内存系统74
5.1 分析Ashmem驱动程序74
5.1.1 基础数据结构74
5.1.2 初始化处理75
5.1.3 打开匿名共享内存设备文件76
5.1.4 内存映射78
5.1.5 实现读写操作79
5.1.6 锁定和解锁81
5.1.7 回收内存块86
5.2 分析C++访问接口层87
5.2.1 接口MemoryBase87
5.2.2 客户端实现90
5.2.3 接口MemoryBase94
5.3 分析Java访问接口层97
5.4 内存优化机制100
5.4.1 sp和Wp简析100
5.4.2 详解智能指针102
5.5 Android内存系统的安全机制分析118
5.5.1 Ashmem匿名共享内存的机理119
5.5.2 使用Low Memory Killer机制实现安全和高效119
第6章 Binder通信安全机制(上)121
6.1 Binder机制基础121
6.1.1 选择Binder机制的原因——简洁快速、低耗内存、更加安全121
6.1.2 Binder安全机制的必要性122
6.1.3 Android的进程间通信(IPC)机制Binder122
6.1.4 Service Manager是Binder机制的上下文管理者123
6.1.5 Service Manager服务137
6.2 分析Binder驱动程序140
6.2.1 分析数据结构140
6.2.2 分析设备初始化150
6.2.3 打开Binder设备文件151
6.2.4 内存映射152
6.2.5 释放物理页面156
6.2.6 分配内核缓冲区157
6.2.7 释放内核缓冲区158
6.2.8 查询内核缓冲区160
第7章 Binder通信安全机制(下)162
7.1 Binder封装库162
7.1.1 类BBinder163
7.1.2 类BpRefBase165
7.1.3 类IPCThreadState166
7.2 初始化Java层Binder框架168
7.3 分析MediaServer的通信机制170
7.3.1 MediaServer的入口函数170
7.3.2 ProcessState171
7.3.3 defaultServiceManager173
7.3.4 注册MediaPlayerService179
7.3.5 分析StartThread Pool和join Thread Pool188
7.4 总结进程通信机制的安全性190
7.4.1 进程先线程安全190
7.4.2 远程过程调用机制(RPC)191
7.4.3 实现线程安全方法192
7.4.4 Binder中的安全策略193
第8章 Android虚拟机基础194
8.1 Dalvik VM和JVM的差异194
8.2 Dalvik虚拟机的主要特征195
8.3 Dalvik VM架构196
8.3.1 Dalvik虚拟机的代码结构196
8.3.2 dx工具198
8.3.3 Dalvik VM的进程管理198
8.3.4 Android的初始化流程198
8.4 Dalvik VM控制VM命令详解199
8.4.1 基本命令199
8.4.2 扩展的JNI检测199
8.4.3 断言200
8.4.4 字节码校验和优化200
8.4.5 Dalvik VM的运行模式201
8.4.6 死锁预测201
8.4.7 dump堆栈追踪202
8.4.8 dex文件和校验202
8.4.9 产生标志位202
8.5 Dalvik VM进程管理202
8.5.1 Zygote基础202
8.5.2 Dalvik的进程模型211
8.5.3 Dalvik的进程通信215
8.6 Zygote(孕育)进程218
8.6.1 Zygote基础218
8.6.2 分析Zygote的启动过程219
第9章 Dalvik VM的运作流程233
9.1 Dalvik VM相关的可执行程序233
9.1.1 dalvikvm、 dvz和app_rocess简介233
9.1.2 对比app_process和dalvikvm的执行过程234
9.2 初始化Dalvik VM236
9.2.1 开始虚拟机的准备工作236
9.2.2 初始化跟踪显示系统237
9.2.3 初始化垃圾回收器237
9.2.4 初始化线程列表和主线程环境参数237
9.2.5 分配内部操作方法的表格内存238
9.2.6 初始化虚拟机的指令码相关的内容238
9.2.7 分配指令寄存器状态的内存239
9.2.8 分配指令寄存器状态的内存和最基本用的Java库239
9.2.9 初始化使用的Java类库线程类240
9.2.10 初始化虚拟机使用的异常Java类库241
9.2.11 初始化其他对象242
9.3 启动Zygote250
9.3.1 在init. rc中配置zygote启动参数250
9.3.2 启动Socket服务端口250
9.3.3 加载preload-classes251
9.3.4 加载preload-resources252
9.4 启动SystemServer进程253
9.4.1 启动各种系统服务线程253
9.4.2 启动第一个Activity255
9.5 加载class类文件255
9.5.1 DexFile在内存中的映射255
9.5.2 ClassObject———Class在加载后的表现形式257
9.5.3 加载Class并生成相应ClassObject的函数257
9.5.4 加载基本类库文件258
9.5.5 加载用户类文件258
第10章 DEX文件详解259
10.1 DEX文件介绍259
10.2 DEX文件的格式259
10.2.1 map_ list260
10.2.2 string id_item262
10.2.3 type_id_item266
10.2.4 proto_ id _item266
10.2.5 ield_id_ item267
10.2.6 method_ id _item267
10.2.7 class_ def _item268
10.3 DEX文件结构271
10.3.1 文件头(File Header)271
10.3.2 魔数字段272
10.3.3 检验码字段272
10.3.4 SHA-1签名字段274
10.3.5 map off字段274
10.3.6 string ids size和off字段275
10.4 DEXFile接口详解277
10.4.1 构造函数277
10.4.2 公共方法278
10.5 DEX和动态加载类机制280
10.5.1 类加载机制280
10.5.2 具体加载281
10.5.3 代码加密283
10.6 动态加载jar和DEX283
第11章 编写安全的应用程序284
11.1 开发第一个Android应用程序284
11.1.1 新创建Android工程284
11.1.2 编写代码和代码分析284
11.1.3 调试285
11.1.4 运行项目287
11.2 声明不同的权限287
11.2.1 AndroidManifest. xml文件基础288
11.2.2 声明获取不同的权限288
11.2.3 自定义一个权限292
11.3 发布Android程序生成APK293
11.3.1 什么是APK文件293
11.3.2 申请会员294
11.3.3 生成签名文件296
11.3.4 使用签名文件301
11.3.5 发布到市场303
11.4 反编译APK文件303
11.4.1 使用dex2jar和jdgui.exe进行反编译303
11.4.2 Smali指令破解305
11.5 防止APK文件被反编译306
11.6 操作实战——演示反编译和编译的完整过程306
11.6.1 分析反编译后的文件307
11.6.2 分析smali文件309
11.6.3 分析内部类316
11.6.4 分析监听器321
11.6.5 分析注解类322
11.6.6 Android独有的自动类324
11.7 Android应用组件的安全机制325
11.7.1 设置组件的可访问性325
11.7.2 Intent组件的安全机制325
11.7.3 Activity组件的安全机制329
11.7.4 Content Provider组件的权限机制330
11.7.5 Service组件的安全机制332
11.7.6 Broadcast Receiver组件的安全机制333
第12章 应用安全策略334
12.1 应用程序安装安全策略334
12.1.1 Android应用程序权限的背景334
12.1.2 Android应用程序的权限334
12.1.3 控制Android应用权限的工具336
12.2 Android浏览器安全策略338
12.2.1 WebKit源码分析338
12.2.2 C/C++层框架342
12.2.3 分析WebKit的操作过程344
12.2.4 WebView讲解347
12.2.5 Android浏览器的安全漏洞分析349
12.3 数据库和SQL注入350
12.3.1 Android系统存储数据的方式351
12.3.2 恶意获取存储卡信息354
12.3.3 SQLite注入漏洞分析354
12.4 软件更新安全策略357
12.4.1 设置软件实现自动更新358
12.4.2 自动更新的安全隐患365
第13章 文件加密366
13.1 Dmcrypt加密机制介绍366
13.1.1 Linux密码管理机制366
13.1.2 Dmcrypt加密机制分析371
13.1.3 使用dmcrypt机制构建加密文件系统378
13.2 Vold机制介绍380
13.2.1 Vold机制基础380
13.2.2 Vold的主要功能384
13.2.3 Vold处理SD/USB的流程389
13.2.4 Vold的加密机制410
第14章 电话系统的安全机制412
14.1 Android电话系统详解412
14.1.1 电话系统简介412
14.1.2 电话系统结构413
14.1.3 需要移植的内容415
14.1.4 驱动程序介绍416
14.1.5 RIL接口417
14.1.6 分析电话系统的实现流程420
14.2 分析Andorid音频系统425
14.2.1 音频系统结构425
14.2.2 分析音频系统的层次427
14.3 电话系统的安全机制433
14.3.1 防止电话监听433
14.3.2 VoIP语音编码和安全性分析437
14.3.3 SIP协议控制440
14.3.4 在Android平台实现SIP协议栈443
14.3.5 通话加密技术444
第15章 短信系统的安全机制446
15.1 Android短信系统详解446
15.1.1 短信系统的主界面446
15.1.2 发送普通短信的过程449
15.1.3 发送彩信的过程459
15.1.4 接收短信467
15.2 短信加密机制的设计模式471
15.2.1 短信编码设计模式472
15.2.2 DES短信息加密解密算法472
第16章 网络防火墙系统实现474
16.1 防火墙系统需求分析474
16.2 编写布局文件475
16.3 编写主程序文件476
16.3.1 主Activity文件477
16.3.2 帮助Activity文件485
16.3.3 公共库函数文件486
16.3.4 系统广播文件494
16.3.5 登录验证495
16.3.6 打开/关闭某一个实施控件496
第17章 文件加密系统实现499
17.1 文件加密系统功能模块介绍499
17.2 系统主界面499
17.3 文件加密模块502
17.3.1 选择加密文件502
17.3.2 加密文件503
17.4 文件解密模块507
17.4.1 选择解密文件507
17.4.2 解密文件507
17.5 数字签名模块511
17.5.1 数字签名主界面511
17.5.2 设置数字签名512
17.5.3 签名验证516
17.5.4 生成密钥518
17.6 报文鉴别模块520
17.6.1 报文鉴别主界面520
17.6.2 生成鉴别码521
17.6.3 鉴别文件524
17.7 编辑文件模块527