百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术资源 > 正文

用docker简单搭建多层靶场(审计演练)

off999 2025-01-23 20:14 35 浏览 0 评论

本文将利用 docker 的自身功能结合若干开源渗透测试环境,在一台虚拟机中,搭建一套简单的三层渗透测试靶场。部分操作过程可能会稍显繁琐,可维护性也不佳,不足之处希望师傅们能够给出建议,不胜感激。

虚拟机配置

4核CPU

4G内存

60G磁盘存储

系统:Ubuntu 22.04.01桌面版最小化安装

(上述配置可根据自身需要进行修改调整)

1. 安装软件

sudo update
sudo apt install openssh-server git wget vim nano python3 python3-pip docker.io docker-compose gcc g++ ufw -y

2. 拉取 Docker 系统镜像

sudo docker pull ubuntu

3. 利用 ubuntu 镜像创建系统容器,并安装 nginx web 服务器

sudo docker run -itd --net=host --name umiddle ubuntu
sudo docker exec -it umiddle bash

进入 docker 容器 shell 后,安装编译安装 nginx 所需的软件,并下载 nginx 当前最新稳定版源码

# 下载所需软件及环境
apt update
apt install git wget vim nano curl gcc g++ openssl libssl-dev libpcre3 libpcre3-dev zlib* make iputils* iproute2 net-tools
wget https://nginx.org/download/nginx-1.22.0.tar.gz
# 解压源码包
tar -zxvf nginx-1.22.0.tar.gz
# 进入源码目录
cd nginx-1.22.0
# 添加 nginx 用户
useradd -M -s /sbin/nologin nginx
# 编译安装
./configure --prefix=/opt/nginx --user=nginx --group=nginx --with-http_ssl_module --with-http_stub_status_module
make && make install
cp /opt/nginx/sbin/nginx /bin/ && cp /opt/nginx/sbin/nginx /usr/bin
# 安装无误后退出该容器 shell
exit

4. 创建 docker 网络

docker network create --driver bridge --subnet 172.22.0.0/24 --gateway 172.22.0.1 --ip-range 172.22.0.0/24 dockernet1
docker network create --driver bridge --subnet 172.33.0.0/24 --gateway 172.33.0.1 --ip-range 172.33.0.0/24 dockernet2

下图中,第一块桥接网卡为安装 docker 时默认的桥接网卡

这一步中,也可以创建三块 docker 桥接网卡,在搭建靶机时,分别为第一层靶机分配网络1和网络2的地址,为第二层靶机分配网络2和网络3的地址,为第三层靶机分配网络3的地址即可。

5. 第一层靶机搭建

  1. 创建新的 docker 容器用于安装宝塔面板或根据个人所需部署相应服务,这里的端口映射可根据自己要求进行调整,也可在后续靶场搭建过程中在合适的位置中放置 flag 。
  2. docker run -itd --name ubt -p 8888:8888 ubuntu
  3. 为该容器分配网卡及IP地址,并断开与默认桥接网卡的连接
  4. docker network connect --ip 172.22.0.10 dockernet1 ubt docker network disconnect -f 默认桥接网卡id ubt
  5. 进入该容器 shell,并安装相应环境
  6. docker exec -it ubt bash apt update apt install vim nano git wget curl gcc g++ make net-tools iproute2 iputils*
  7. 上述安装完成后,相关网络信息如下

  8. 安装宝塔面板,获取脚本后根据提示一步步进行即可
  9. wget -O install.sh http://download.bt.cn/install/install-ubuntu_6.0.sh && bash install.sh ed8484bec

  10. 安装完成后,若默认配置与 docker 容器现有端口映射配置等存在冲突,可修改 docker 容器配置,或使用 bt 命令,根据提示修改宝塔面板的服务端口

  11. 查看入口地址进行登录配置(也可以通过 bt 命令,根据提示修改用户名密码及面板地址)

  12. 浏览器访问宝塔地址(虚拟机 IP+宝塔服务端口+面板入口地址),登录面板后,安装并启动 nginx/apache+mysql+php 环境,也可根据自身需求安装并部署其他服务


  13. 上述环境安装完成后,首先进入“网站”功能,新建站点。在这一步的关键在于配置站点目录及添加数据库

  14. 站点创建成功后,可使用开源脆弱系统或部分 CMS 搭建脆弱 web 系统。这一步可能会需要自行通过宝塔面板上传站点文件并修改站点目录权限等。

  15. 进入在第三步安装有 nginx 的 docker 容器中,修改 nginx 服务相关配置
  16. # 进入容器内 shell 环境 docker exec -it umiddle bash # 编辑 nginx 配置文件 vi /opt/nginx/conf/nginx.conf
  17. 相关配置如下(也可根据自身需求配置多个服务及端口映射和代理转发):
  18. worker_processes 1; events { worker_connections 1024; } http { include mime.types; default_type application/octet-stream; sendfile on; keepalive_timeout 65; gzip on; server { listen 80; server_name localhost; charset utf-8; access_log /var/log/nginx/access.log; location / { root html; index index.html index.htm index.php; # proxy_pass 后填写宝塔容器所部署 web 服务的地址及端口 proxy_pass http://172.22.0.10; proxy_redirect off; proxy_pass_header Server; proxy_set_header Host $http_host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Scheme $scheme; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; } error_page 500 502 503 504 400 403 404 /50x.html; location = /50x.html { root html; } } }

保存配置后,执行 nginx 命令启动 nginx 服务

  1. 访问虚拟机地址及相应 nginx 监听端口,查看并配置 web 脆弱系统是否正常。若站点搭建完毕且服务访问正常,第一层靶机则基本搭建完成。

6. 第二层靶机搭建

# 拉取 shiro 反序列化漏洞镜像

docker pull vulfocus/shiro-cve_2016_4437

# 创建并启动容器

docker run -itd --name shirovuln vulfocus/shiro-cve_2016_4437

# 为该容器分配两块网卡及IP地址,并断开与默认桥接网卡的连接

docker network connect --ip 172.22.0.20 dockernet1 shirovuln
docker network connect --ip 172.33.0.20 dockernet2 shirovuln
docker network disconnect 默认桥接网卡id shirovuln

# 安装部分所需工具及软件

docker exec -it shirovuln bash
apt update
apt install vim nano git wget curl net-tools iproute2 iputils*

完整安装完成后,具体网络配置如下

7. 第三层靶机搭建

# 拉取 thinkphp 任意代码执行漏洞镜像
docker pull vulfocus/thinkphp-cnvd_2018_24942
# 创建并启动容器
docker run -itd --name thinkphpvuln vulfocus/thinkphp-cnvd_2018_24942
# 为该容器分配网卡及IP地址,并断开与默认桥接网卡的连接
docker network connect --ip 172.33.0.30 dockernet2 thinkphpvuln
docker network disconnect 默认桥接网卡id thinkphpvuln
# 安装部分所需工具及软件
docker exec -it thinkphpvuln bash
apt update
apt install vim nano git wget curl net-tools iproute2

安装完成后,具体网络配置如下:

8. 配置检查

若安装配置无误,正常情况下应该第一层靶机仅与第二层靶机互通,第二层靶机分别于第一层和第三层靶机互通,第三层靶机仅与第二层靶机互通

检查配置无误后,执行以下命令,修改 docker 容器为自启

# 容器自启

docker update umiddle --restart=always
docker update ubt --restart=always
docker update shirovuln --restart=always
docker update thinkphpvuln --restart=always

最后进入宝塔所在容器中,将面板服务关闭即可(或直接执行 docker exec -it ubt bt stop

配置完成后创建当前虚拟机快照即完成此次靶场的全部配置,当然最好是在给虚拟机创建快照之前,给每一台 docker 容器分别创建快照。

相关推荐

安全教育登录入口平台(安全教育登录入口平台官网)

122交通安全教育怎么登录:122交通网的注册方法是首先登录网址http://www.122.cn/,接着打开网页后,点击右上角的“个人登录”;其次进入邮箱注册,然后进入到注册页面,输入相关信息即可完...

大鱼吃小鱼经典版(大鱼吃小鱼经典版(经典版)官方版)

大鱼吃小鱼小鱼吃虾是于谦跟郭麒麟的《我的棒儿呢?》郭德纲说于思洋郭麒麟作诗的相声,最后郭麒麟做了一首,师傅躺在师母身上大鱼吃小鱼小鱼吃虾虾吃水水落石出师傅压师娘师娘压床床压地地动山摇。...

谷歌地球下载高清卫星地图(谷歌地球地图下载器)
  • 谷歌地球下载高清卫星地图(谷歌地球地图下载器)
  • 谷歌地球下载高清卫星地图(谷歌地球地图下载器)
  • 谷歌地球下载高清卫星地图(谷歌地球地图下载器)
  • 谷歌地球下载高清卫星地图(谷歌地球地图下载器)
哪个软件可以免费pdf转ppt(免费的pdf转ppt软件哪个好)
哪个软件可以免费pdf转ppt(免费的pdf转ppt软件哪个好)

要想将ppt免费转换为pdf的话,我们建议大家可以下一个那个wps,如果你是会员的话,可以注册为会员,这样的话,在wps里面的话,就可以免费将ppt呢转换为pdfpdf之后呢,我们就可以直接使用,不需要去直接不需要去另外保存,为什么格式转...

2026-02-04 09:03 off999

电信宽带测速官网入口(电信宽带测速官网入口app)

这个网站看看http://www.swok.cn/pcindex.jsp1.登录中国电信网上营业厅,宽带光纤,贴心服务,宽带测速2.下载第三方软件,如360等。进行在线测速进行宽带测速时,尽...

植物大战僵尸95版手机下载(植物大战僵尸95 版下载)

1可以在应用商店或者游戏平台上下载植物大战僵尸95版手机游戏。2下载教程:打开应用商店或者游戏平台,搜索“植物大战僵尸95版”,找到游戏后点击下载按钮,等待下载完成即可安装并开始游戏。3注意:确...

免费下载ppt成品的网站(ppt成品免费下载的网站有哪些)

1、Chuangkit(chuangkit.com)直达地址:chuangkit.com2、Woodo幻灯片(woodo.cn)直达链接:woodo.cn3、OfficePlus(officeplu...

2025世界杯赛程表(2025世界杯在哪个国家)

2022年卡塔尔世界杯赛程公布,全部比赛在卡塔尔境内8座球场举行,2022年,决赛阶段球队全部确定。揭幕战于当地时间11月20日19时进行,由东道主卡塔尔对阵厄瓜多尔,决赛于当地时间12月18日...

下载搜狐视频电视剧(搜狐电视剧下载安装)

搜狐视频APP下载好的视频想要导出到手机相册里方法如下1、打开手机搜狐视频软件,进入搜狐视频后我们点击右上角的“查找”,找到自已喜欢的视频。2、在“浏览器页面搜索”窗口中,输入要下载的视频的名称,然后...

pubg免费下载入口(pubg下载入口官方正版)
  • pubg免费下载入口(pubg下载入口官方正版)
  • pubg免费下载入口(pubg下载入口官方正版)
  • pubg免费下载入口(pubg下载入口官方正版)
  • pubg免费下载入口(pubg下载入口官方正版)
永久免费听歌网站(丫丫音乐网)

可以到《我爱音乐网》《好听音乐网》《一听音乐网》《YYMP3音乐网》还可以到《九天音乐网》永久免费听歌软件有酷狗音乐和天猫精灵,以前要跳舞经常要下载舞曲,我从QQ上找不到舞曲下载就从酷狗音乐上找,大多...

音乐格式转换mp3软件(音乐格式转换器免费版)

有两种方法:方法一在手机上操作:1、进入手机中的文件管理。2、在其中选择“音乐”,将显示出手机中的全部音乐。3、点击“全选”,选中所有音乐文件。4、点击屏幕右下方的省略号图标,在弹出菜单中选择“...

电子书txt下载(免费的最全的小说阅读器)

1.Z-library里面收录了近千万本电子书籍,需求量大。2.苦瓜书盘没有广告,不需要账号注册,使用起来非常简单,直接搜索预览下载即可。3.鸠摩搜书整体风格简洁清晰,书籍资源丰富。4.亚马逊图书书籍...

最好免费观看高清电影(播放免费的最好看的电影)

在目前的网上选择中,IMDb(互联网电影数据库)被认为是最全的电影网站之一。这个网站提供了各种类型的电影和电视节目的海量信息,包括剧情介绍、演员表、评价、评论等。其还提供了有关电影制作背后的详细信息,...

孤单枪手2简体中文版(孤单枪手2简体中文版官方下载)

要将《孤胆枪手2》游戏的征兵秘籍切换为中文,您可以按照以下步骤进行操作:首先,打开游戏设置选项,通常可以在游戏主菜单或游戏内部找到。然后,寻找语言选项或界面选项,点击进入。在语言选项中,选择中文作为游...

取消回复欢迎 发表评论: