展开全部

主编推荐语

深入解析unidbg使用方法、工作原理、实现细节。

内容简介

全书共31章,分为四个部分。

第一部分(第1~3章)unidbg基础主要介绍了unidbg的基本使用和操作,包括工作环境的准备、so文件加载、简单补环境、Hook和Patch的方法等。

第二部分(第4~15章)unidbg原理与实现通过源码分析的方式对unidbg的原理与实现进行了详细的剖析,首先分析了Unicorn模拟linker实现so的加载、链接、初始化的原理,然后深入分析了unidbg主要功能和模块的源码实现,包括AndroidEmulator、JNI交互流程追踪、DalvikVM、Memory、Hook等。

第三部分(第16~26章)补环境与模拟执行实战通过实战案例讲解了unidbg在生产环境中的使用,包括如I/O重定向、Debugger自吐,指针参数与Debugger、魔改Base64还原、使用unidbg动态分析内存中的数据、使用unidbg主动调用fork进程,并对补环境中的补环境入门、标识记录、设备风控、补环境加强等进行分析,指导读者编写实际的补环境代码,更好地将理论知识运用于实践中。

第四部分(第27~31章)反制与生产环境部署。介绍了环境变量检测、xHook框架检测、JNI层常见函数处理等,对常规检测进行了总结,并介绍了在检测之后如何把so部署到x86服务器上。这部分内容对批量生产与对抗、大数据风控非常有价值,对于打击黑灰产、遏制网络犯罪有着非常积极的意义。

目录

  • 版权信息
  • 内容简介
  • Preface 前言
  • 第一部分 Part 1 进入unidbg的世界
  • Chapter 1 第1章 unidbg环境准备与快速上手
  • 1.1 r0env环境介绍与集成
  • 1.2 IDEA安装及配置
  • 1.3 第一个unidbg项目
  • 1.4 本章小结
  • Chapter 2 第2章 unidbg模拟执行初探
  • 2.1 第一个NDK项目
  • 2.2 unidbg的符号调用与地址调用
  • 2.3 本章小结
  • Chapter 3 第3章 unidbg补环境、Hook与Patch
  • 3.1 为so添加交互:使用JNI接口编写md5方法
  • 3.2 使用unidbg修补执行环境并模拟执行
  • 3.3 脱离编译器,使用命令行编译so
  • 3.4 unidbg的Hook
  • 3.5 unidbg的Patch
  • 3.6 本章小结
  • 第二部分 Part 2 unidbg原理
  • Chapter 4 第4章 ELF文件执行视图解析
  • 4.1 ELF文件结构
  • 4.2 深入jelf代码细节,探究ELF解析
  • 4.3 本章小结
  • Chapter 5 第5章 Unicorn的初级使用与初探Linker
  • 5.1 Unicorn的初级使用:模拟执行与Hook
  • 5.2 初探Android系统源码
  • 5.3 本章小结
  • Chapter 6 第6章 深入Linker:so的加载、链接、初始化
  • 6.1 so的加载过程
  • 6.2 so的链接过程
  • 6.3 so的初始化操作
  • 6.4 本章小结
  • Chapter 7 第7章 使用Unicorn模拟Linker:so的加载过程
  • 7.1 模拟Linker:环境准备
  • 7.2 模拟Linker:so的加载
  • 7.3 动态调试Linker,探究so的内存布局图
  • 7.4 本章小结
  • Chapter 8 第8章 使用Unicorn模拟Linker:so的链接过程
  • 8.1 so的依赖库加载过程
  • 8.2 so的动态链接
  • 8.3 初尝试:使用unidbg模拟执行简单so文件
  • 8.4 探究unidbg的Linker代码细节
  • 8.5 本章小结
  • Chapter 9 第9章 R0dbg实战与Unidbg_FindKey
  • 9.1 模拟Linker:so的初始化过程
  • 9.2 指令追踪与排错
  • 9.3 使用R0dbg模拟执行so
  • 9.4 Unidbg_FindKey牛刀小试
  • 9.5 本章小结
  • Chapter 10 第10章 unidbg源码解析:AndroidEmulator
  • 10.1 创建AndroidEmulator
  • 10.2 创建FileSystem
  • 10.3 创建Backend
  • 10.4 创建SvcMemory
  • 10.5 本章小结
  • Chapter 11 第11章 unidbg源码解析:DalvikVM
  • 11.1 分析createDalvikVM()
  • 11.2 Dvm相关类介绍
  • 11.3 本章小结
  • Chapter 12 第12章 unidbg源码解析:模拟执行流程追踪
  • 12.1 编写含JNI交互的MD5算法并模拟执行
  • 12.2 模拟执行流程追踪:寻找函数
  • 12.3 模拟执行流程追踪:处理参数并模拟执行
  • 12.4 本章小结
  • Chapter 13 第13章 unidbg源码解析:JNI交互流程追踪
  • 13.1 JNI注册
  • 13.2 JNI指令执行
  • 13.3 本章小结
  • Chapter 14 第14章 unidbg源码解析:Memory
  • 14.1 Memory模块的创建
  • 14.2 AndroidElfLoader的方法实现
  • 14.3 加载so的loader功能
  • 14.4 本章小结
  • Chapter 15 第15章 unidbg源码解析:Hook
  • 15.1 unidbg的Hook框架
  • 15.2 Debugger模块解析
  • 15.3 本章小结
  • 第三部分 Part 3 模拟执行与补环境实战
  • Chapter 16 第16章 unidbg实战:I/O重定向
  • 16.1 分析App的内部逻辑
  • 16.2 unidbg模拟执行分析
  • 16.3 本章小结
  • Chapter 17 第17章 unidbg实战:Debugger自吐
  • 17.1 分析App的内部逻辑
  • 17.2 使用unidbg工具进行分析
  • 17.3 本章小结
  • Chapter 18 第18章 unidbg实战:指针参数与Debugger
  • 18.1 指针参数的使用
  • 18.2 快速识别AES算法
  • 18.3 本章小结
  • Chapter 19 第19章 unidbg实战:魔改Base64还原
  • 19.1 逆向环境搭建
  • 19.2 APK分析
  • 19.3 so文件详细分析
  • 19.4 使用unidbg辅助分析so
  • 19.5 本章小结
  • Chapter 20 第20章 unidbg实战:使用unidbg动态分析内存中的数据
  • 20.1 环境搭建
  • 20.2 APK基本分析
  • 20.3 使用IDA静态分析so并使用unidbg动态验证
  • 20.4 本章小结
  • Chapter 21 第21章 unidbg实战:使用unidbg主动调用fork进程
  • 21.1 样本情景复现
  • 21.2 样本反编译分析
  • 21.3 so中代码的分析
  • 21.4 使用unidbg对fork进程中的函数做处理
  • 21.5 本章小结
  • Chapter 22 第22章 unidbg补环境实战:补环境入门
  • 22.1 为什么要补环境
  • 22.2 unidbg补环境的案例情景复现
  • 22.3 模拟执行so
  • 22.4 本章小结
  • Chapter 23 第23章 unidbg补环境实战:标识记录
  • 23.1 样本一:如何补JNI_OnLoad环境
  • 23.2 样本二:文件标识的补环境策略
  • 23.3 样本总结
  • 23.4 本章小结
  • Chapter 24 第24章 unidbg补环境实战:设备风控
  • 24.1 Android系统API补全策略
  • 24.2 目录获取
  • 24.3 样本最后一个函数的调用
  • 24.4 本章小结
  • Chapter 25 第25章 unidbg补环境实战:补环境加强
  • 25.1 上文回顾
  • 25.2 样本的框架搭建
  • 25.3 补环境实操
  • 25.4 本章小结
  • Chapter 26 第26章 unidbg补环境实战:总结
  • 26.1 补环境初始化
  • 26.2 补环境适用场景
  • 26.3 补环境的规范
  • 26.4 本章小结
  • 第四部分 Part 4 反制与生产环境部署
  • Chapter 27 第27章 Anti-unidbg系列:环境变量检测
  • 27.1 Linux中的环境变量
  • 27.2 Android中的环境变量
  • 27.3 环境变量源码解析
  • 27.4 unidbg如何设置环境变量
  • 27.5 本章小结
  • Chapter 28 第28章 Anti-unidbg系列:xHook检测
  • 28.1 xHook的基本使用
  • 28.2 xHook的原理阐述
  • 28.3 xHook检测实现
  • 28.4 unidbg xHook检测
  • 28.5 补充Inline Hook检测
  • 28.6 本章小结
  • Chapter 29 第29章 Anti-unidbg系列:JNI层常见函数处理
  • 29.1 FindClass反制策略
  • 29.2 methodID反制策略
  • 29.3 本章小结
  • Chapter 30 第30章 Anti-unidbg系列:unidbg常规检测总结
  • 30.1 检测说明
  • 30.2 基地址检测
  • 30.3 JNI环境之JNI调用
  • 30.4 JNI环境之类检测
  • 30.5 文件描述符
  • 30.6 uname
  • 30.7 运行时间检测
  • 30.8 检测Unicorn
  • 30.9 本章小结
  • Chapter 31 第31章 unidbg生产环境部署
  • 31.1 Spring Boot框架的基本使用方法
  • 31.2 Spring Boot和unidbg结合
  • 31.3 unidbg-boot-schmerver简介
  • 31.4 unidbg-boot-schmerver项目实例
  • 31.5 本章小结
  • 推荐阅读
  • 作者简介
展开全部

评分及书评

尚无评分
目前还没人评分

出版方

机械工业出版社

机械工业出版社是全国优秀出版社,自1952年成立以来,坚持为科技、为教育服务,以向行业、向学校提供优质、权威的精神产品为宗旨,以“服务社会和人民群众需求,传播社会主义先进文化”为己任,产业结构不断完善,已由传统的图书出版向着图书、期刊、电子出版物、音像制品、电子商务一体化延伸,现已发展为多领域、多学科的大型综合性出版社,涉及机械、电工电子、汽车、计算机、经济管理、建筑、ELT、科普以及教材、教辅等领域。