符号执行工具链精通
📘 逆向工程师 · 30章 完全攻略
1
01
符号执行导论
什么是符号执行?与具体执行的区别,逆向工程应用场景
2
02
核心概念
符号变量、符号状态、路径约束、执行树
3
03
工具链概览
Angr、Triton、S2E、KLEE对比与选型
4
04
Angr环境搭建
安装、依赖管理、Docker配置、第一个Angr脚本
5
05
Angr基础架构
Project, Factory, State, Simulation Manager
6
06
符号化输入
命令行参数、文件输入、网络数据符号化
7
07
路径探索
DFS/BFS策略、路径修剪、超时控制
8
08
约束求解
Z3集成、约束添加与求解、模型提取
9
09
Angr实战:CrackMe破解
静态分析辅助,符号执行自动生成有效输入
10
10
Angr进阶
Hooks、SimProcedures、内存操作符号化
11
11
Triton入门
架构、Pin/Dynamorio后端、上下文管理
12
12
Triton符号化
寄存器、内存符号化,指令语义提取
13
13
Triton路径约束
约束收集、快照与恢复、多路径探索
14
14
Triton实战:反混淆
控制流平坦化还原、常量展开
15
15
S2E框架
架构、选择符号执行器(SEL)、插件系统
16
16
S2E配置
虚拟机配置、快照管理、符号化设备与中断
17
17
S2E实战:内核驱动分析
符号化IOCTL,探索驱动执行路径
18
18
KLEE基础
LLVM位码、KLEE安装、测试用例生成
19
19
KLEE高级
符号化环境、模型检查、内存错误检测
20
20
混合执行
Concolic Testing原理,Angr与具体执行结合
21
21
路径爆炸问题
问题分析、抽象解释、状态合并、启发式搜索
22
22
约束求解优化
SMT理论选择、超时策略、增量求解
23
23
符号执行与模糊测试
结合LibFuzzer、AFL,提升代码覆盖率
24
24
漏洞挖掘实战
缓冲区溢出、Use-After-Free发现
25
25
恶意代码分析
加壳检测、反调试绕过中的应用
26
26
符号执行与污点分析
结合污点传播缩小符号化范围
27
27
多架构支持
x86/x64、ARM、MIPS符号执行差异
28
28
性能调优
并行符号执行、状态缓存、选择性符号化
29
29
工具链集成
CI/CD集成、自动化分析管道构建
30
30
综合实战项目
从零构建基于符号执行的自动化漏洞验证框架