图书目录

目录

基础篇

第1章构建Android安全分析环境

1.1常用adb命令一览

1.2NDK命令行编译Android动态链接库

1.3NDK工具链常用工具

1.4解除手机BL锁

1.5给手机刷入工厂镜像

1.6Root Android系统

1.7本章小结

第2章破解第一个Android应用

2.1反编译Apk

2.2分析包内文件

2.3修改Smali代码文件

2.4重编译并签名

2.5本章小结

第3章iOS基础知识

3.1iOS包结构分析

3.1.1_CodeSignature文件夹

3.1.2lproj文件夹

3.1.3xcent文件

3.1.4mobileprovision文件

3.1.5info.plist文件

3.2iOS应用启动过程分析

3.3本章小结

理论篇

第4章移动应用安全基线

4.1移动应用评估思路

4.1.1移动应用可能面临的威胁

4.1.2移动应用的评估方向

4.1.3移动应用自动化检测思路

4.2安全检测的要点

4.2.1Android常见漏洞分析

4.2.2Android权限安全

4.3OWASP移动平台十大安全问题

4.4本章小结

第5章移动安全+AI

5.1LLM大模型技术

5.1.1大模型的基础原理

5.1.2大模型的发展历程

5.1.3大模型的应用领域

5.1.4大模型在App开发中的应用

5.2大模型技术在移动攻防领域的应用

5.2.1使用生成式人工智能创建Smishing活动

5.2.2使用大模型对Android应用进行安全审计

5.3大模型在应用开发安全领域的应用

5.3.1通过大模型进行模糊测试

5.3.2利用大模型自动化修复错误代码

5.4移动设备搭载大模型所面临的风险

5.4.1对部署在移动设备模型的白盒攻击

5.4.2移动深度学习模型中隐藏恶意负载

5.5本章小结

第6章MobSF移动安全框架

6.1安装部署MobSF

6.2功能及源代码讲解

6.2.1MobSF功能模块分析

6.2.2一般功能分析

6.2.3静态扫描功能分析

6.2.4动态扫描功能分析

6.3Apk静态分析流程

6.4Apk动态分析流程

6.5规则自定义开发

6.6本章小结

工具篇

第7章静态逆向工具

7.1Apktool工具

7.1.1Apktool基础与用法

7.1.2Apktool源码分析

7.2JEB工具

7.2.1JEB安装

7.2.2JEB静态分析

7.3Jadxgui工具

7.4010editor工具

7.4.1010editor解析so文件

7.4.2010editor解析Dex文件

7.5本章小结

第8章动态调试工具

8.1动态调试介绍

8.2IDA Pro工具

8.2.1IDA简介以及基本用法

8.2.2IDA动态调试Apk

8.2.3IDA Dump Android应用内存

8.3JDB调试器

8.4JEB调试工具

8.5本章小结

第9章Hook工具

9.1Frida

9.1.1Frida简介

9.1.2Frida安装运行

9.1.3Frida程序编写与运行

9.2Xposed框架

9.2.1Xposed简介

9.2.2Xposed框架的安装

9.2.3Xposed程序的编写与运行

9.3本章小结

第10章Unicorn框架

10.1Unicorn基础

10.1.1Unicorn简介

10.1.2Unicorn快速入门

10.2Unicorn HelloWorld

10.2.1编译与安装

10.2.2编写HelloWorld程序

10.2.3使用Unicorn Hook函数

10.2.4利用Unicorn优化程序运行

10.3Unicorn与Android

10.3.1Unicorn建立ARM寄存器表

10.3.2Unicorn加载调用so文件

10.3.3Unicorn调试so文件

10.4本章小结

第11章iOS逆向工具的使用

11.1砸壳工具

11.1.1Clutch

11.1.2CrackerXI

11.2Classdump工具

11.3Tweaks工具

11.3.1Theos的前置环境

11.3.2安装Theos

11.3.3编写Tweaks程序

11.3.4Tweaks程序的编译与安装

11.4Cycript工具

11.4.1Cycript的安装使用

11.4.2使用Cycript分析应用

11.4.3Cycript脚本

11.5本章小结

实战篇

第12章脱壳实战

12.1Frida脱壳

12.1.1Frida脱壳原理

12.1.2编写脱壳脚本

12.1.3执行脱壳脚本

12.2FART脱壳

12.2.1ART的脱壳点

12.2.2FART脱壳原理

12.2.3脱壳实践

12.3OLLVM脱壳

12.3.1指令替换混淆还原

12.3.2控制流平展的还原

12.3.3伪造控制流的还原

12.4本章小结

第13章逆向实战

13.1逆向分析Smali

13.1.1逆向分析Apk

13.1.2修改Smali代码

13.1.3重编译运行

13.2逆向分析so文件

13.2.1逆向分析Apk

13.2.2使用IDA Pro分析so文件

13.2.3插入调试语句运行

13.3本章小结

第14章Hook实战

14.1Xposed Hook

14.1.1JEB分析Apk

14.1.2编写Xposed模块

14.1.3获取Flag

14.2Frida Hook

14.2.1JEB解析Apk

14.2.2使用IDA Pro分析foo.so

14.2.3编写Frida脚本

14.2.4获取flag

14.3本章小结

第15章调试实战

15.1静态调试

15.1.1从Activity切入分析应用

15.1.2使用Jadxgui分析应用

15.2动态调试

15.2.1获取目标逻辑的函数调用

15.2.2使用Android Studio调试

15.3Native调试

15.3.1Unidbg工具的介绍

15.3.2Unidbg工具的安装测试

15.3.3利用Unidbg直接调用so文件方法

15.4本章小结

第16章IoT安全分析实战

16.1IoT移动应用威胁建模

16.2反编译Android应用包

16.3Android代码静态分析

16.4Android数据存储分析

16.5动态分析测试

16.6本章小结

参考文献