[渗透测试]渗透测试靶场docker搭建 — —全集
对于初学者来说,仅仅相识漏洞原理是不敷的,还需要举行实操。对于公网上的服务我们肯定不能轻易验证某些漏洞,否则可能触犯法律。这是就需要用到靶场。
- 本文主要给各人介绍几种常见漏洞对应的靶场(个人推荐),假如各人有更好的,欢迎在评论区打出来,各人一起交流。
环境准备:docker安装
1. Windows/Mac:
mac或Windows系统推荐安装DockerDesktop可视化应用,安装乐成后自带docker。
- 官网地址:https://docs.docker.com/desktop/setup/install/mac-install/
2. Linux:apt/yum直接安装
- # 更新软件
- sudo apt-get update
- # 安装docker
- sudo apt-get install docker.io
- # 启动docker
- sudo systemctl start docker
- # 将docker作为服务自启(可选)
- sudo systemctl enable docker
复制代码- yum install -y yum-utils
- yum-config-manager \
- --add-repo \
- https://download.docker.com/linux/centos/docker-ce.repo
- # 安装docker
- yum install docker
- # 启动docker
- systemctl start docker
复制代码 靶场搭建
1. CSRF/SSRF漏洞:pikachu
CSRF漏洞详解:https://blog.csdn.net/weixin_45565886/article/details/147232587
SSRF漏洞详解:https://blog.csdn.net/weixin_45565886/article/details/146994934
- # 安装docker
- apt install docker.io
- # 通过docker搭建靶场
- docker run -d -p 8765:80 8023/pikachu-expect:latest
- # 浏览器输入下面地址,访问靶场页面
- http://localhost:8765
复制代码 初始化靶场,点击启动或初始化,配置数据库信息,然后就可以选择漏洞模块举行测试:
2. SQL注入:sqli-labs
SQL注入详解:https://blog.csdn.net/weixin_45565886/article/details/144769308
- # 搜索镜像
- docker search sqli-labs
- # 选择合适的镜像
- docker pull acgpiano/sqli-labs
- # 运行容器
- docker run -d --name my-sqli-labs -p 80:80 acgpiano/sqli-labs
- # 访问页面准备打靶
- http://localhost
- # 点击页面Setup/reset Database初始化靶场数据
- # 设置id,请求数据
- http://localhost/Less-2/?id=1
复制代码
选择关卡举行挑衅:
3. XSS漏洞:xss-challenge-tour
XSS详解:https://blog.csdn.net/weixin_45565886/article/details/146162767
- # 拉取镜像
- docker pull c0ny1/xss-challenge-tour
- # 运行容器
- docker run -dt --name xss -p 8080:80 --rm c0ny1/xss-challenge-tour
复制代码 输入http://localhost:8080/访问靶场:
4. 目录遍历漏洞:webgoat
目录遍历详解:https://blog.csdn.net/weixin_45565886/article/details/145579398
- # 拉取镜像
- docker pull webgoat/webgoat-8.0
- docker pull webgoat/webwolf
- docker pull webgoat/goatandwolf
- # 启动容器
- docker run -p 8888:8888 -p 8080:8080 -p 9090:9090 webgoat/goatandwolf
复制代码 浏览器访问:http://127.0.0.1:8080/WebGoat,进入靶场页面:
5. 文件上传漏洞:upload-labs
文件上传漏洞详解:https://blog.csdn.net/weixin_45565886/article/details/145793742
- # docker拉取镜像
- docker pull cuer/upload-labs
- # 运行镜像
- docker run -d -p 8081:80 cuer/upload-labs
复制代码 浏览器输入http://localhost:8081/ 访问靶场:
6. 万能靶场:DVWA
除了dvwa,上面的pikachu、webgoat也属于万能靶场,可以验证多种漏洞。
- # 拉取dvwa镜像
- sudo docker pull vulnerables/web-dvwa
- # 创建docker网络
- sudo docker network create dvwa-network
- # 启动MySQL容器
- sudo docker run --name dvwa-db --network dvwa-network -e MYSQL_ROOT_PASSWORD=root -e MYSQL_DATABASE=dvwa -d mysql:5.7
- ## -------
- 如果出现报错:docker: no matching manifest for linux/arm64/v8 in the manifest list entries.
- 这是因为docker默认会识别我们当前CPU架构,然后拉取对应版本架构的镜像。我这里是mac m芯片,对应arm64.但
- 实际MySQL没有该架构的版本。因此我们分成两步走,先通过 --platform linux/x86_64 指定架构拉取镜像,然后再启动容器。
- sudo docker pull --platform linux/x86_64 mysql:5.7
- sudo docker run --name dvwa-db --network dvwa-network -e MYSQL_ROOT_PASSWORD=root -e MYSQL_DATABASE=dvwa -d mysql:5.7
- ## -------
- # 启动dvwa容器
- sudo docker run --name dvwa --network dvwa-network -p 80:80 -d vulnerables/web-dvwa
- # 在浏览器中访问 http://localhost/setup.php,选择“创建数据库”,这将自动为你创建DVWA所需的数据库。
- ## 确保数据库连接信息是正确的,默认信息是:
- ## 数据库主机:dvwa-db
- ## 用户名:root
- ## 密码:root
- ## 数据库名:dvwa
- http://localhost/setup.php
- # 访问dvwa,初始默认用户:默认用户 admin 和密码 password
- http://localhost
复制代码 点击下方create,创建数据库配置:
然后访问http://localhost,初始默认用户:默认用户 admin 和密码 password:
调整漏洞难度级别:
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。 |