CTF PWN题目部署
系统:Ubuntu18
一、Docker 安装
1.使用官方安装脚本自动安装
curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun
也可以使用国内 daocloud 一键安装命令:
curl -sSL https://get.daocloud.io/docker | sh
apt安装docker-compose:
apt-get install docker docker-compose
2.切换镜像源
vim /etc/docker/daemon.json
cat > /etc/docker/daemon.json << EOF
{
"registry-mirrors": ["https://docker.mirrors.ustc.edu.cn"]
}
EOF
service docker restart
二、Docker 简单使用
我们可以通过以下几条命令简单测试一下docker是否安装成功:
#启动docker
service docker start
docker images
#hello-world为其自带的一个image
docker run hello-world
常用指令:
docker images
#查看镜像
docker run -d [images_name/id] /bin/bash
#run:运行 镜像 从而生成 容器; -d:后台运行容器; [images_name/id]:换成镜像的id或者名称; /bin/bash:运行镜像的权限
docker ps
#查看在运行的容器
docker ps -a
#查看所有容器
docker exec -it [container-id] /bin/bash
#进入容器; exec:在运行的容器中执行命令; -i:互交界面, -t:分配一个伪终端; container-id:换成容器id
docker rm [container-id]
#删除容器
docker rmi [images-name]
#删除镜像
三、ctf_xinetd下载与使用
从GitHub上下载ctf_xinetd
1.放题目
把题目可执行文件和flag放在ctf_xinetd/bin中
ps:不要把 bin 作为题目的名字
2.修改ctf.xinetd文件
回到ctf_xinetd目录下,修改ctf.xinetd
把图片箭头指向的 helloworld
改成bin文件夹中题目的名字
保存退出
3.Build
在ctf_xinetd目录下 docker build -t "pwn" .
4.Run
在ctf_xinetd目录下 docker run -d -p "0.0.0.0:pub_port:9999" -h "pwn" --name="pwn" pwn
-h:指定容器的hostname
pub_port:改成你想放置的端口号,建议如8001,8002…等
此时输入docker ps 会发现题目容器已经启动了,可以nc 0.0.0.0 pub_port进行测试一下(pub_port:改成你想放置的端口号)