macOS软件安全与逆向分析 macOS软件安全第一书PDF电子书下载
- 电子书积分:15 积分如何计算积分?
- 作 者:丰生强,网名非虫著
- 出 版 社:北京:人民邮电出版社
- 出版年份:2017
- ISBN:9787115460639
- 页数:461 页
第1章 如何分析macOS软件 1
1.1 分析环境搭建 1
1.1.1 安装Clang 1
1.1.2 HT Editor 2
1.1.3 Homebrew 6
1.2 第一个macOS程序 8
1.3 使用HT Editor进行破解 10
1.4 本章小结 14
第2章 系统安全架构 15
2.1 系统架构概述 15
2.1.1 shell环境 16
2.1.2 目录结构 16
2.1.3 文件权限 17
2.2 系统调用 17
2.3 进程间通信 18
2.4 安全框架 19
2.4.1 CommonCrypto 19
2.4.2 Keychain 20
2.4.3 安全传输 25
2.5 系统安全机制 28
2.5.1 FileVault 2 29
2.5.2 代码签名 31
2.5.3 ASLR/kASLR 33
2.5.4 沙盒 37
2.5.5 Rootless 39
2.5.6 Gatekeeper 42
2.6 软件安全开发建议 50
2.7 本章小结 50
第3章 软件开发基础 51
3.1 Objective-C语言 51
3.1.1 开发环境 51
3.1.2 Objective-C语言特性 54
3.1.3 内存管理 60
3.2 Swift语言 65
3.2.1 Playground 65
3.2.2 Swift语法简介 67
3.3 其他语言 88
3.4 框架 88
3.4.1 框架的开发与使用 88
3.4.2 在Objective-C中使用Swift编写的框架 93
3.4.3 常用的框架 94
3.5 第三方开发工具 94
3.5.1 Qt Creator 94
3.5.2 Xamarin Studio 95
3.5.3 JetBrains系列开发工具 96
3.5.4 Visual Studo Code 97
3.6 完整的Cocoa GUI程序 97
3.6.1 创建工程 98
3.6.2 Storyboard和xib 98
3.6.3 Outlet和Action机制 101
3.7 本章小结 103
第4章 软件内幕 104
4.1 可执行文件 105
4.2 下载与安装软件 106
4.2.1 免费与付费软件 106
4.2.2 安装软件 106
4.3 Bundle 107
4.3.1 Bundle目录结构 107
4.3.2 在代码中访问Bundle 109
4.4 通用二进制格式 109
4.5 Mach-O文件格式 112
4.5.1 Mach-O简介 112
4.5.2 Mach-O头部 113
4.5.3 加载命令 116
4.5.4 LC_CODE_SIGNATURE 117
4.5.5 LC_SEGMENT 129
4.6 动态库 131
4.6.1 构建动态库 132
4.6.2 dyld 135
4.6.3 动态库的加载 136
4.7 静态库 151
4.7.1 构建静态库 152
4.7.2 静态库格式 154
4.7.3 管理静态库 156
4.8 框架 156
4.8.1 构建框架 157
4.8.2 框架的使用与安装 158
4.9 pkg 160
4.9.1 构建pkg 160
4.9.2 pkg的安装与卸载 167
4.9.3 pkg文件格式 170
4.9.4 破解pkg 173
4.10 dmg 177
4.10.1 构建dmg 177
4.10.2 管理dmg 179
4.11 本章小结 181
第5章 汇编基础 182
5.1 搭建汇编语言开发环境 182
5.2 Hello World代码概览 185
5.3 伪指令 186
5.4 x86_64汇编基础 189
5.4.1 寄存器 190
5.4.2 汇编语法 192
5.4.3 数据传送指令 195
5.4.4 控制转移指令 195
5.4.5 栈操作指令 196
5.4.6 运算指令 197
5.5 与其他模块的交互 197
5.5.1 与C语言互相调用 197
5.5.2 使用系统调用 200
5.6 本章小结 201
第6章 软件静态分析 202
6.1 代码分析与二进制分析 202
6.2 分析工具 203
6.2.1 Radare2 203
6.2.2 IDA Pro 207
6.2.3 Hopper 209
6.3 代码分析技术 211
6.3.1 行为分析 211
6.3.2 资源分析 212
6.3.3 数据分析 215
6.3.4 流量分析 216
6.3.5 API分析 218
6.4 反汇编工具的使用 219
6.4.1 反汇编 219
6.4.2 流程图 224
6.4.3 伪代码 225
6.5 破解Mach-O程序 227
6.5.1 定位修改点 227
6.5.2 修改程序 228
6.5.3 代码签名处理 230
6.5.4 重新打包 234
6.5.5 Keygen 234
6.6 本章小结 235
第7章 软件动态调试与跟踪 236
7.1 DTrace 236
7.1.1 DTrace简介 236
7.1.2 DTrace示例 236
7.2 D脚本语言 237
7.2.1 脚本加载方式 237
7.2.2 D语言与C语言 238
7.2.3 D语言语法 238
7.2.4 变量 241
7.2.5 参数传递 243
7.2.6 聚合 243
7.2.7 内置函数与变量 244
7.3 调试器 246
7.3.1 GDB 246
7.3.2 LLDB 248
7.3.3 IDA Pro 258
7.3.4 Hopper 267
7.4 本章小结 269
第8章 调试器开发 270
8.1 概述 270
8.2 开发环境搭建 270
8.2.1 安装所需环境 271
8.2.2 编译Saber 280
8.3 系统调试接口 285
8.3.1 ptrace简介 286
8.3.2 Mach调试接口 287
8.4 macOS异常机制 292
8.4.1 异常与Mach RPC/IPC 292
8.4.2 信号 300
8.5 调试器功能实现 302
8.5.1 调试器架构 302
8.5.2 开始调试 303
8.5.3 异常处理循环 305
8.5.4 读写被调试进程内存 308
8.5.5 获取基地址与入口点 309
8.5.6 单步调试 310
8.5.7 断点 311
8.5.8 继续运行 312
8.5.9 反汇编 313
8.6 本章小结 316
第9章 破解技术 317
9.1 软件破解步骤 317
9.2 常见的保护类型 318
9.2.1 试用版&序列号 319
9.2.2 License授权 319
9.2.3 重启验证与暗桩 330
9.2.4 防拷贝技术 338
9.2.5 网络验证 338
9.2.6 混合验证 342
9.3 App Store内购机制 342
9.4 Hook技术 351
9.4.1 DYLD_INSERT_LIBRARIES 352
9.4.2 SymbolTable Hook 355
9.4.3 Inline Hook 358
9.4.4 Method Swizzing 359
9.5 代码注入 362
9.5.1 静态注入 362
9.5.2 动态注入 365
9.5.3 Hook与注入框架 366
9.6 补丁&注册机 373
9.7 本章小结 375
第10章 反破解技术 376
10.1 反破解技术类型 376
10.2 校验保护 377
10.2.1 完整性检查 377
10.2.2 代码签名验证 377
10.2.3 沙盒检测 382
10.2.4 来源检测 386
10.3 代码保护 386
10.3.1 代码混淆 386
10.3.2 SMC 387
10.3.3 代码校验 387
10.3.4 壳保护 387
10.4 数据保护 391
10.4.1 数据清除 391
10.4.2 数据存储 395
10.4.3 数据传输 400
10.5 调试器对抗 408
10.5.1 调试器检测 408
10.5.2 反调试 410
10.6 Hook检测 411
10.6.1 Method Swizzing检测 411
10.6.2 dyld Hook检测 412
10.7 本章小结 413
第11章 游戏安全 414
11.1 游戏类型 414
11.2 游戏框架与引擎 414
11.2.1 SpriteKit与SceneKit 415
11.2.2 GameplayKit&ReplayKit 417
11.2.3 Cocos2d-x 417
11.2.4 Unity3D 419
11.3 游戏分析工具 422
11.3.1 静态分析工具 423
11.3.2 动态调试工具 424
11.3.3 资源修改工具 424
11.3.4 内存修改工具 427
11.4 游戏分析方法 427
11.4.1 对比分析 427
11.4.2 动态调试 429
11.4.3 静态补丁 429
11.4.4 动态补丁 430
11.5 防破解技术 430
11.6 本章小结 431
第12章 恶意软件与Rootkit 432
12.1 安全趋势 432
12.1.1 知名恶意软件 432
12.1.2 安全漏洞 433
12.1.3 安全软件 435
12.2 文件关联技术 435
12.3 软件自启动技术 439
12.3.1 Launch Items 439
12.3.2 Login Items 441
12.3.3 StartupItems 442
12.3.4 Login/Logout Hooks 444
12.3.5 Cron Jobs 444
12.3.6 Periodic Scripts 446
12.3.7 Authorization Plugins 446
12.3.8 Browser Extensions 447
12.3.9 Spotlight Importers 448
12.3.10 QuickLook Plugins 448
12.3.11 Kernel Extensions 448
12.4 Rootkit 449
12.4.1 文件隐藏 449
12.4.2 进程隐藏 451
12.4.3 内核模块隐藏 452
12.4.4 Root提权 453
12.5 本章小结 454
附录 macOS工具一览表 455
参考资料 460
- 《水面舰艇编队作战运筹分析》谭安胜著 2009
- 《分析化学》陈怀侠主编 2019
- 《影响葡萄和葡萄酒中酚类特征的因素分析》朱磊 2019
- 《仪器分析技术 第2版》曹国庆 2018
- 《软件工程》齐治昌,谭庆平,宁洪编著 2019
- 《全国普通高等中医药院校药学类专业十三五规划教材 第二轮规划教材 分析化学实验 第2版》池玉梅 2018
- 《Power BI数据清洗与可视化交互式分析》陈剑 2020
- 《行测资料分析》李永新主编 2019
- 《药物分析》贡济宇主编 2017
- 《土壤环境监测前沿分析测试方法研究》中国环境监测总站编著 2018
- 《甜的吃苦的也吃》阿虫著 2004
- 《铁臂阿童木 17》(日)手冢治虫著;漫友文化译 2009
- 《粉墨烟花录》秋虫著 1993
- 《铁臂阿童木 16》(日)手冢治虫著;漫友文化译 2009
- 《身在福中我知福》阿虫著 2004
- 《铁臂阿童木 18》(日)手冢治虫著;漫友文化译 2009
- 《微积分与线性代数》张振良,唐生强主编 1998
- 《手塚治虫的漫画之旅》手冢治虫著 2009
- 《老家》弘虫著 2014
- 《社会主义市场经济学概论 上》董生强,姚恩全 1998
- 《指向核心素养 北京十一学校名师教学设计 英语 七年级 上 配人教版》周志英总主编 2019
- 《办好人民满意的教育 全国教育满意度调查报告》(中国)中国教育科学研究院 2019
- 《北京生态环境保护》《北京环境保护丛书》编委会编著 2018
- 《人民院士》吴娜著 2019
- 《指向核心素养 北京十一学校名师教学设计 英语 九年级 上 配人教版》周志英总主编 2019
- 《中国人民的心》杨朔著;夕琳编 2019
- 《高等院校旅游专业系列教材 旅游企业岗位培训系列教材 新编北京导游英语》杨昆,鄢莉,谭明华 2019
- 《中华人民共和国成立70周年优秀文学作品精选 短篇小说卷 上 全2册》贺邵俊主编 2019
- 《指向核心素养 北京十一学校名师教学设计 数学 九年级 上 配人教版》周志英总主编 2019
- 《中华人民共和国成立70周年优秀文学作品精选 中篇小说卷 下 全3册》洪治纲主编 2019