逆向工具angr的快捷教程(1):安装、排雷、CFG范例

Angr是一个基于Python开发的二进制程序分析(Binary analysis)框架,可以用于开展动态符号执行(Symbolic Execution)和多种静态分析。作为系列文章的第一篇,本文将介绍安装angr的基本步骤,尤其是其中可能遇到的各种坑。然后,我们会利用angr对程序进行静态分析,生成相应的CFG,并以此演示angr的基本用法。首先声明的是,笔者是在Ubuntu系统上使用angr的。因此,下面的例子、错误提示及解决办法,也仅限于Ubuntu环境。

排雷过程中主要解决下面几条错误提示(当然如果你没有遇到它们,那是最好不过的了):

virtualenvwrapper.sh: There was a problem running the initialization hooks.

If Python could not import the module virtualenvwrapper.hook_loader,
check that virtualenvwrapper has been installed for
VIRTUALENVWRAPPER_PYTHON=XXXX and that PATH is set properly.

Error while finding module specification for 'virtualenvwrapper.hook_loader'
(ModuleNotFoundError: No module named 'virtualenvwrapper')

Error: deactivate must be sourced. Run 'source deactivate' instead of 'deactivate'.


一、安装以及过程中可能遇到的问题

简单的安装请参考【1】。这里需要说明的是,官方建议在一个虚拟的Python环境下使用angr,毕竟这种逆向工具搞不好会影响到你系统里原有的其他配置。构建Python虚拟环境的方法很多,例如你可以使用Docker(文献【2】中给出但是在Docker下配置Tensorflow深度学习环境的方法

你可能感兴趣的:(系统安全与逆向工程)