【P2】VMware 下 docker 快速搭建漏洞靶场 DVWA


包括什么是 docker、docker 和虚拟机的的区别、docker 搭建 DVWA 及执行步骤、为 kali 配置 docker 加速器、访问 dockerhub 的 dvwa 镜像、vulhub 搭建漏洞复现。


一、docker 快速搭建漏洞靶场指南

1、什么是 docker

  • Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中,然后发布到任何流行的 Linux 或 Windows 操作系统的机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口

2、docker 和虚拟机的的区别

  • vm 虚拟机是一个完整的操作系统

  • docker 直接在宿主主机的操作系统上调用硬件资源,而不是虚拟化操作系统和硬件资源

在这里插入图片描述

3、docker 搭建 DVWA

(1)、kali 安装 docker:

  • sudo apt install -y docker.io

  • apt 是 debian 系统的软件包管理器(kali 和 ubuntu 其实也是 debian 的分支)

(2)、使用示例:

  • apt install firefox(安装火狐浏览器)

  • apt remove firefox(卸载火狐浏览器)

  • apt upgrade firefox(升级火狐浏览器)

(3)、windows 能不能安装 docker?当然可以:https://www.docker.com/products/docker-desktop

二、执行步骤

(1)、添加Docker官方的GPG密钥

  • curl -fsSL https://download.docker.com/linux/debian/gpg | sudo apt-key add -

在这里插入图片描述

(2)、更新源

  • echo ‘deb https://download.docker.com/linux/debian stretch stable’> /etc/apt/sources.list.d/docker.list

在这里插入图片描述

(3)、直接导入证书

  • echo deb https://download.docker.com/linux/debian/ stretch stable> /etc/apt/sources.list.d/docker.list

在这里插入图片描述

(4)、系统更新

  • apt-get update

在这里插入图片描述

(5)、安装 docker

  • sudo apt install docker.io

在这里插入图片描述

(6)、检查 docker 安装是否成功

  • docker -v

在这里插入图片描述

如图,显示出 docker 版本信息,代表 docker 安装成功

三、为 kali 配置 docker 加速器

(1)、阿里云镜像加速器:https://help.aliyun.com/document_detail/60750.html

sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
    "registry-mirrors":["https://xxxxx.mirror.aliyuncs.com"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker

(2)、进入阿里云网址,点击 容器镜像服务控制台,没账号注册一个即可

在这里插入图片描述

(3)、点击 镜像工具,点击 镜像加速器

在这里插入图片描述

(4)、创建一个文件

  • sudo mkdir -p /etc/docker

在这里插入图片描述

(5)、第二句

sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://2fnam28c.mirror.aliyuncs.com"]
}
EOF

在这里插入图片描述

注:直接复制,在 kali 中右键点击 Paste Selection,即可粘贴上去

(6)、启动加速器

  • sudo systemctl daemon-reload

在这里插入图片描述

(7)、重启服务

  • sudo systemctl restart docker

在这里插入图片描述

四、访问 dockerhub 的 dvwa 镜像

查看镜像:docker search dvwa

  • 下载镜像:docker pull vulnerables/web-dvwa

  • 通过镜像启动容器:docker run --rm -it -p 80:80 vulnerables/web-dvwa / -p 80:80 (将容器里的80端口映射到 Kali 的80端口(网站服务))

  • 关闭容器:docker stop [container_id(容器 id)]

  • 开启容器:docker start [container_id(容器 id)]

注:使用 docker 命令获取容器 id

  • 启动 docker 服务:systemctl start docker

  • 列出镜像:docker images

  • 列出容器:docker ps -a / docker container ls -a

  • 删除镜像:docker rmi [image_id]

  • 删除容器:docker rm [container_id]

在这里插入图片描述

如图,第一列 CONTAINER ID 字符就是容器 id,第二列 IMAGE 为镜像名称

(1)、查看镜像

  • docker search dvwa

在这里插入图片描述

(2)、下载镜像

  • docker pull citizenstig/dvwa

在这里插入图片描述

(3)、启动容器

  • docker run --rm -it -p 80:80 citizenstig/dvwa

在这里插入图片描述

(4)、访问,首先重新打开一个终端控制台,查看 ip

  • ipconfig

在这里插入图片描述

如图:查看 eth0 中的 ip 地址

(5)、本地浏览器输入 ip 地址:http://192.168.159.128/

在这里插入图片描述

(6)、输入账号密码,点击 Login

  • 账号:admin

  • 密码:password

在这里插入图片描述

(7)、如图,表示搭建成功

在这里插入图片描述

五、漏洞利用初探,修改 requests 请求参数远程执行命令

本地打开 cmd,输入 whoami。如图:admin 为此电脑的用户名

在这里插入图片描述

漏洞:网站原本给予我们的功能,我们突破了这个功能,执行的实现了其它一个功能;只要突破了网站的限制,达到未给予的功能

六、vulhub 搭建漏洞复现

1、docker-compose 是什么?

  • Docker Compose 是一个用来定义和运行复杂应用的 Docker 工具。一个使用 Docker 容器的应用,通常由多个容器组成。使用 Docker Compose 不再需要使用 shell 脚本来启动容器

2、安装

(1)、安装 pip(需要有 python3)

  • curl -s https://bootstrap.pypa.io/get-pip.py | python3

  • kali 默认有 python3,所以不需要安装 python3

在这里插入图片描述

如图:kali 输入 python3,会显示出 python 版本

在这里插入图片描述

(2)、安装 docker-compose

  • pip3 install docker-compose

  • sudo pip3 install docker-compose(备用命名)

在这里插入图片描述

注:如果报错使用:sudo pip3 install docker-compose

(3)、查看版本

  • docker-compose -v

在这里插入图片描述

(4)、下载 vulhub-master.zip 包

  • vulhub官网:https://vulhub.org/

  • 开启靶场容器:docker-compose up -d

  • 关闭靶场容器:docker-compose down

1)、进入 vulhub 官网,下载 vulhub-master.zip 压缩包

在这里插入图片描述

注:网站下载的压缩包有问题,可以上百度网盘上取

网盘获取地址:https://pan.baidu.com/s/1vwwid_t5Q-Ie-HgcjB2LJA?pwd=ue1e

提取码:ue1e

2)、下载后,将压缩包直接拉取或复制到 kali 中

在这里插入图片描述

(5)、解压 zip 包

  • unzip vulhub-master.zip

在这里插入图片描述

(6)、进入解压后的 vulhub-master 文件夹

  • cd vulhub-master

在这里插入图片描述

如图,vulhub-master 文件夹下有许多集成的漏洞;基于不同平台、基于不同组件、基于不同中间件等

(7)、开启靶场,例如 thinkphp,进入此目录下的 5.0.23-rce,目录下存在 docker-compose.yml 文件,才可以启动,如图

  • cd thinkphp

  • cd 5.0.23-rce

在这里插入图片描述

(8)、在路径下,使用 docker-compose up -d 命令启动靶场

  • docker-compose up -d

在这里插入图片描述

注:如图,路径下不存在 docker-compose.yml 文件,启动靶场会提示文件不存在

在这里插入图片描述

必须进入到有 docker-compose.yml 文件的目录下,才可以使用 docker-compose up -d 命令启动靶场

(9)、启动靶场后,使用命令查看全部启动的容器

  • docker ps

在这里插入图片描述

如图,可以看到启动的容器名,映射端口为8080

(10)、使用本地浏览器登录网站

注:如果不知道 ip,重新开一个终端控制台,可以使用 ifconfig 命令查看

在这里插入图片描述

在这里插入图片描述

(11)、关闭靶场

  • docker-compose down

在这里插入图片描述

  • 5
    点赞
  • 27
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小鹿快跑~

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值