30 Years of Decompilation and the Unsolved Structuring Problem: Part 1 (2024)
3 days ago
- #decompilation
- #reverse-engineering
- #control-flow-structuring
- 文章探讨了反编译的历史与挑战,重点聚焦于控制流结构重建技术。
- 克里斯蒂娜·西富恩特斯博士1994年的博士论文被公认为反编译领域的奠基性研究。
- 控制流结构重建将反汇编程序(控制流图)转换为高级语言结构,如if-then-else条件语句和循环结构。
- 早期反编译器如dcc生成的代码虽然简陋但功能完整,常过度使用while循环结构。
- 研究指出反编译三大核心支柱:控制流图恢复与提升、变量恢复、控制流结构重建。
- IDA Pro和Reko是西富恩特斯之后出现的著名反编译器,遵循相似的结构重建原则。
- 2011年学术界重现反编译研究热潮,涌现出《TIE》和《Phoenix》等标志性论文。
- 尽管至关重要,反编译研究进展缓慢,顶级安全会议仅收录少量相关论文。
- Ghidra等开源反编译器的出现,使研究者能更便捷地接触反编译技术。
- 文章暗示第二部分将探讨现代控制流结构重建技术及其局限性。