目录
  1. 1. 前言
  2. 2. 配置镜像加速器
  3. 3. 安装angr
  4. 4. 测试
  5. 5. 拷贝文件
  6. 6. 容器操作
    1. 6.1. 查看容器进程
    2. 6.2. 打开容器
    3. 6.3. 关闭容器
    4. 6.4. 删除容器
    5. 6.5. 导出容器
  7. 7. 镜像操作
    1. 7.1. 查看镜像
    2. 7.2. 导入镜像
    3. 7.3. 运行images
    4. 7.4. 删除images
docker安装angr

前言

angr不建议在实体机上安装,所以就安装到docker里面,官方容器里已经集成了angr,但安装的太慢。这里我选择了阿里云的容器镜像,本地环境为ubuntu16.04。

实体机安装参考链接https://docs.angr.io/introductory-errata/install,这里用docker安装。

配置镜像加速器

申请阿里云,修改daemon配置文件/etc/docker/daemon.json来使用加速器,把下方的registry-mirrors换成你的加速器地址。

1
2
3
4
5
6
7
8
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://culfukli.mirror.aliyuncs.com"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker

安装angr

1
docker pull registry.cn-hangzhou.aliyuncs.com/liujunjie/angr

安装完执行docker images 查看镜像,运行angr

1
docker run -it registry.cn-hangzhou.aliyuncs.com/liujunjie/angr

上述命令可以执行angr,但不会保存你在其中做的修改,应该用下列命令

1
2
3
4
5
6
$docker run -itd registry.cn-hangzhou.aliyuncs.com/liujunjie/angr
1d443841326281a8c5aee9cfad74893a5eded421eadc3eac2222f91bf15e3eb9
$docker exec -it 1d44 bash #1d44为你的id的前四位
root@1d4438413262:/# ls
bin dev home lib64 mnt proc run srv tmp var
boot etc lib media opt root sbin sys usr

这时可以输入命令了,与在linux中操作一样。
但在root用户下import angr会失败,用su angr命令切换到angr用户即可。

测试

进入到有例子的目录下,执行脚本,可以看到flag。

1
2
3
4
5
6
7
$cd /home/angr/angr-dev/angr-doc/examples/ais3_crackme
$ls
ais3_crackme solve.py
$python solve.py
'ais3{I_tak3_g00d_n0t3s}\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00'
ais3{I_tak3_g00d_n0t3s}
'ais3{I_tak3_g00d_n0t3s}'

拷贝文件

主机向docker中拷贝:

1
docker cp (本地文件路径) (docker container id):(容器中路径)

docker向主机中拷贝:

1
docker cp (docker container id):(容器中路径) (本地文件路径)

容器操作

查看容器进程

1
docker ps -a

打开容器

1
docker start container_id

关闭容器

1
dockr stop container_id

删除容器

1
docker rm container_id

导出容器

1
docker export container_id > 容器快照名

镜像操作

查看镜像

1
docker images

导入镜像

1
docker pull 镜像名称

运行images

1
docker run -it 镜像名称 bash

删除images

1
docker rmi image_id
文章作者: nocbtm
文章链接: https://nocbtm.github.io/2019/10/02/docker安装angr/
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 nocbtm's Blog
打赏
  • 微信
  • 支付宝