centos安装angr

Posted beixiaobei

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了centos安装angr相关的知识,希望对你有一定的参考价值。

1、angr环境

yum install -y python-dev libffi-dev build-essential virtualenvwrapper
mkvirtualenv angr

问题:mkvirtualenv command not found

解决:

sudo pip install virtualenv 
sudo pip install virtualenvwrapper

问题:You are using pip version 8.1.2, however version 10.0.1 is available.You should consider upgrading via the ‘pip install --upgrade pip‘ command.

解决:

pip install --upgrade pip

再重新上面两步操作,然后

vi ~/.bashrc

在最后面加下面两句话

export WORKON_HOME=~/.environments
source /usr/local/bin/virtualenvwrapper.sh

报错:-bash: /usr/local/bin/virtualenvwrapper.sh: 没有那个文件或目录

通过:

find / -name virtualenvwrapper.sh

找到后,修改~/.bashrc为找到的那个路径

重新加载.bashrc文件:

source ~/.bashrc

 以上完成后即可再次:mkvirtualenv angr进入angr环境

 

2、cfg需要的包

以下就安装angr和输出cfg需要的包(用plot_cfg需要from angrutils import *,这个会出现很多依赖包没安装问题)

首先用workon angr命令进入angr环境,进入angr环境然后进入Python环境,然后输入import angr会出现问题:ImportError: No module named angr

输入from angrutils import *会依次出现以下4个问题:

1、ImportError: No module named angrutils 

2、ImportError: No module named bingraphvis

3、ImportError: No module named pydot

4、ImportError: No module named simuvex

 

退出python环境(还在angr环境),运行以下依次解决上述5个问题:

git clone https://github.com/angr/angr-dev
cd angr-dev
#mkvirtualenv angr
./setup.sh
git clone https://github.com/axt/angr-utils
cd angr-utils
python setup.py build python setup.py install
git clone https://github.com/axt/bingraphvis
cd bingraphvis
python setup.py build
python setup.py install
pip install graphviz
pip install pydot
git clone https://github.com/angr/simuvex
cd simuvex
python setup.sh build
python setup.sh install

然后进入python环境,可以成功运行下面:

Python 2.7.12 (default, Dec  4 2017, 14:50:18) 
[GCC 5.4.0 20160609] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import angr
>>> from angrutils import *
>>> 

 但是在运行plot_cfg(cfg,"pid_cfg",asminst=True,remove_imports=True,remove_path_terminator=True)会出现以下问题:

OSError: [Errno 2] "dot" not found in path.

因为:后安装graphviz会出现类似:"dot" not found in path的问题。安装graphviz不要用pip install安装,否则还是会找不到可执行程序

所以先graphviz然后pydot:

yum  insall graphviz
pip install pydot

 

3、angr容器

angr有一个docker容器可以使用:

# install docker
curl -sSL https://get.docker.com/ | sudo sh

# pull the docker image
sudo docker pull angr/angr

# run it
sudo docker run -it angr

但是在里面运行from angrutils import *还是会出现上述问题,就按照上述解决即可

 

感觉描述有点不严谨呀....但是以上运行下来,我的机器上是可以正确使用angr和plot_cfg等



以上是关于centos安装angr的主要内容,如果未能解决你的问题,请参考以下文章

动若脱兔(二):深入浅出angr--angr小实践和过程探究

逆向工具angr的快捷教程:CTF解题实例

逆向工具angr的快捷教程:CTF解题实例

angr 00_angr_find demo

angr 00_angr_find demo

angr 00_angr_find demo