Docker 搭建多层内网靶场环境
简介
创建一个自定义网络
1 | |
在创建容器时指定网络
1 | |
在容器已运行的情况下加入网络
1 | |
启动容器并测试
1 | |
测试容器之间的连接
1 | |
实践
首先创建一个靶场网络,命名为 vuln_network,设置 IP 段为 192.168.100.0/24
1 | |
先搭建一个 Shiro来助助兴
1 | |
medicean/vulapps:s_shiro_1 也可以
在运行容器的时候将它分配到我们新建的网络并给他分配一个 IP 地址,因为需要一个服务外网可访问作为跳板,因此 -p 转发一下端口,以后的机子可以不用映射到外网。
1 | |
访问主机的 23333 端口
尝试利用一波
注:靶场里环境可能比较纯净,ifconfig 的命令都没有
可以用 ip addr
如果需要用到其它命令,自己进容器安装下
1 | |
1 | |
接下来再安装一个st2
外部没有途径访问到,因此 192.168.100.10 便是跳板机
现在两个机子都配好了
当然还可以用命令加入网络
1 | |
创建一个新网络,地址为 192.168.1.0/24
将 st2 的容器加入到网络中
1 | |
现在为双网卡,ip addr:
同时添加一台 thinkphp5的机子,添加进 vuln_network2Shiro1 192.168.100.10 的主机只在一个网络内,因此与 tk5 是不通的
在 st2 192.168.100.11里可以通
现在就有了两个网络 vuln_network 和 vuln_network2
其中只有 192.168.100.10映射到外网,可以通过此主机进行多层渗透训练。
做了二层代理后访问 192.168.1.3:
Summary
原理就是创建网络,将容器加进网络,还可以用 docker swarm 进行集群管理,以后再探索。
Docker 搭建多层内网靶场环境
https://52hertz.tech/2023/07/30/Docker_vuln/
