其他分享
首页 > 其他分享> > Angr包含什么

Angr包含什么

作者:互联网

angr是什么

angr是一个多架构的二进制分析平台,具备对二进制文件的动态符号执行能力(例如Mayhem,KLEE等)和多种静态分析能力。

大概看来,要做到这些必须要克服一些问题:

angr拥有的组件能满足所有这些挑战。 这本书将会向你解释每一个组件是如何工作的,以及如何使用它们来完成你的邪恶目标(原文:accomplish your evil goals)。

装载二进制程序

angr安装完成后,你就可以装载二进制程序进行分析了。这个过程以及支持它的angr组件CLE的详细描述在这里

中间语言(Intermediate Representation)

angr使用中间语言(具体来说,VEX)在不同的架构上分析二进制文件。关于IR的详细说明在这里

求解引擎(Solver Engine)

angr的子模块Claripy解决约束求解和一些其它计算性的需求。大多数的angr使用者不需要知道Claripy的任何事,但我们仍然提供文档以防万一。其详细说明可以看这里

程序状态(Program States)

angr提供模拟的程序状态的接口。理解它是成功使用angr的关键。详细说明可以看这里

程序路径(Program Paths)

程序可以通过其所有可能的执行路径来分析。angr会揭露关于路径如何被执行的信息。这一节给出了如何使用angr这一能力的总览。

语义表达(Semantic Representation)

angr的一个强大的能力就是通过基本块对于程序状态的影响来描述它们。换句话说,angr可以推断出基本块做什么,而不仅仅是它们是什么。这通过SimuVEX模块来完成,详细描述可以看这里

符号执行(Symbolic Execution)

angr提供了强大的符号执行引擎。这个引擎的接口以及使用方法在这里

完整的程序分析

上面描述的所有模块组合起来使得angr可以进行复杂的、完全的程序分析。关于进行和记录分析的机制的详细说明可以看这里

例子

我们准备了一些使用angr的例子!你可以在这里找到它们。

标签:分析,Angr,包含,二进制,什么,IR,程序,符号执行,angr
来源: https://www.cnblogs.com/0xHack/p/11581765.html