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的更多相关文章
- CentOS安装gitlab,gerrit,jenkins并配置ci流程
CentOS安装gitlab,gerrit,jenkins并配置ci流程 By Wenbin juandx@163.com 2016/4/9 这是我参考了网上很多的文档,配置了这三个软件在一个机器上, ...
- 【推荐】CentOS安装Subversion-1.8.11+HTTP协议支持配置
注:以下所有操作均在CentOS 6.5 x86_64位系统下完成. 我们需要搭建一个自己的SVN服务器. 此外,搭建好的SVN服务器除了需要支持svn协议外,最好还需要支持HTTP协议和HTTPS协 ...
- 【推荐】CentOS安装PHP-5.6.4+扩展安装+安全配置+性能配置
注:以下所有操作均在CentOS 6.5 x86_64位系统下完成. #准备工作# 前段时间PHP官方发布了一个重要的安全升级公告,修复了两个unserialize函数的严重漏洞,目前受影响的版本有: ...
- CentOS安装Apache-2.4.10+安全配置
注:以下所有操作均在CentOS 6.5 x86_64位系统下完成. #准备工作# 在安装Nginx之前,请确保已经使用yum安装了各基础组件,并且配置了www用户和用户组,具体见<CentOS ...
- CentOS安装Nginx-1.6.2+安全配置
注:以下所有操作均在CentOS 6.5 x86_64位系统下完成. #准备工作# 在安装Nginx之前,请确保已经使用yum安装了pcre等基础组件,具体见<CentOS安装LNMP环境的基础 ...
- CentOS安装MySQL-5.6.10+安全配置
注:以下所有操作均在CentOS 6.5 x86_64位系统下完成. #准备工作# 在安装MySQL之前,请确保已经使用yum安装了各类基础组件,具体见<CentOS安装LNMP环境的基础组件& ...
- 转: CentOS 安装 SVN1.8 客户端
from: http://blog.csdn.net/clementad/article/details/46898091 CentOS 安装SVN客户端 标签: subversionrpmcent ...
- CentOS安装gitLab服务器
首先利用gitlab-install-el6.sh安装,比较简单: (出处:http://www.linuxidc.com/Linux/2013-06/85754.htm) 1:如果有条件,提供一台全 ...
- 【推荐】CentOS安装Tomcat-7.0.57+启动配置+安全配置+性能配置
注:以下所有操作均在CentOS 6.5 x86_64位系统下完成. #准备工作# 在安装Tomcat之前,请确保已经安装了JDK-1.7环境,具体见<CentOS安装JDK-1.7>. ...
随机推荐
- 常见Chrome 插件
Chrome插件网:http://chromecj.com/downloadstart.html Chrome浏览器:http://chromecj.com/chrome/2014-09/177.ht ...
- NginxI/O模型理论基础
I/O模型介绍 同步IO 关注的是消息通信机制 调用者需要等待被调用者先执行完毕才能往下继续执行 被调用者在执行完自己的任务后并不会同之调用者执行结果需要调用者自己去获取被调用者的执行状态 异步 ...
- 【adaboost】周志华
- vue-自定义pc端键盘-动画
<template> <div class="keyboard"> <div class="keyboard_key"> & ...
- JVM内存管理(转)
转载出处:http://blog.csdn.net/wind5shy/article/details/8349559 模型 JVM运行时数据区域 JVM执行Java程序的过程中,会使用到各种数据区域, ...
- (转)Docker镜像构建上下文(Context)
镜像构建上下文(Context) Docker在构建镜像时,如果注意,会看到 docker build 命令最后有一个 ... 表示当前目录,而 Dockerfile 就在当前目录,因此不少初学者以为 ...
- gem安装出错了
1.首先是SSL出错. SSL 证书错误 正常情况下,你是不会遇到 SSL 证书错误的,除非你的 Ruby 安装方式不正确. 如果遇到 SSL 证书问题,你又无法解决,请修改 ~/.gemrc 文件, ...
- MSSqlServer 主从同步复制原理(发布/订阅)
基本模型 1.发布类型: 快照发布:用于为事务复制和合并复制提供初始数据集:在适合数据完全刷新时也可以使用快照复制.利用这三种复制,SQL Server 提供功能强大且灵活的系统,以便使企业范围内的数 ...
- React对比Vue(04 父子组件的通信 )
跟vue差不多 都是props,但是react里面不仅可以给子组件传值,还可以传方法,MD尽然还可以把自己传给子组件,(卧槽vue可没有这个啊 ) vue的传递值差不多,传方法就不用了,子组件可以掉 ...
- model.addattribute()的作用
1.往前台传数据,可以传对象,可以传List,通过el表达式 ${}可以获取到, 类似于request.setAttribute("sts",sts)效果一样. 2.@ModelA ...