4. 符号执行及其应用
一、符号执行是什么?
栗子:
pop rdi; ret
[1] Schwartz E J, Avgerinos T, Brumley D. All You Ever Wanted to Know about Dynamic Taint Analysis and Forward
Symbolic Execution (but Might Have Been Afraid to Ask) [C]// Security & Privacy. DBLP, 2010:317-331.
[2] Cadar C, Sen K. Symbolic execution for software testing: three decades later[M]. ACM, 2013》
[3] https://zhuanlan.zhihu.com/p/26927127
Symbolic Execution Instruction: pop rdi; ret | 5fc3
----output----
rip <- { | [0:64]->M64(rsp+8) | }
rsp <- { | [0:64]->(rsp+0x10) | }
rdi <- { | [0:64]->M64(rsp) | }
25. 基于笔飞苍迟辞辞濒蝉的自动化搁翱笔项目
? 自动化程度测试
1. 初级测试
? pop rdi; ret
2. 中级测试
? pop eax; ret
? mov ebx, eax; ret
3. 高级测试
? 对jmp和call类型的
Gadget的处理能力
4. 同源情况处理
? mov eax, [esp]; pop ebx;
ret
5. 栈迁移测试
? pop ebp; ret;
? leave; ret