包括什么是 docker、docker 和虚拟机的的区别、docker 搭建 DVWA 及执行步骤、为 kali 配置 docker 加速器、访问 dockerhub 的 dvwa 镜像、vulhub 搭建漏洞复现。
1、什么是 docker
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密钥
(2)、更新源
(3)、直接导入证书
(4)、系统更新
(5)、安装 docker
(6)、检查 docker 安装是否成功
如图,显示出 docker 版本信息,代表 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)、创建一个文件
(5)、第二句
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://2fnam28c.mirror.aliyuncs.com"]
}
EOF
注:直接复制,在 kali 中右键点击 Paste Selection,即可粘贴上去
(6)、启动加速器
(7)、重启服务
查看镜像: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)、查看镜像
(2)、下载镜像
(3)、启动容器
(4)、访问,首先重新打开一个终端控制台,查看 ip
如图:查看 eth0 中的 ip 地址
(5)、本地浏览器输入 ip 地址:http://192.168.159.128/
(6)、输入账号密码,点击 Login
账号:admin
密码:password
(7)、如图,表示搭建成功
本地打开 cmd,输入 whoami。如图:admin 为此电脑的用户名
漏洞:网站原本给予我们的功能,我们突破了这个功能,执行的实现了其它一个功能;只要突破了网站的限制,达到未给予的功能
1、docker-compose 是什么?
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)、查看版本
(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 包
(6)、进入解压后的 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.yml 文件,启动靶场会提示文件不存在
必须进入到有 docker-compose.yml 文件的目录下,才可以使用 docker-compose up -d 命令启动靶场
(9)、启动靶场后,使用命令查看全部启动的容器
如图,可以看到启动的容器名,映射端口为8080
(10)、使用本地浏览器登录网站
注:如果不知道 ip,重新开一个终端控制台,可以使用 ifconfig 命令查看
(11)、关闭靶场