-
-
Notifications
You must be signed in to change notification settings - Fork 4.4k
贡献指南
phithon edited this page Mar 23, 2018
·
4 revisions
贡献一个环境给vulhub。
Fork本项目,然后将你的项目拉取到本地。
根据你想制作的靶场环境,新建一个对应的分支,如shellshock
。
以破壳漏洞shellshock
为例,你需要了解两点:
- 破壳漏洞是因为什么软件什么版本出现的漏洞?
- 破壳漏洞的主要影响是什么,如何复现该漏洞?
首先,第一个问题,破壳漏洞是bash的4.x版本出现的漏洞。所以,我们先做一个vulhub/bash:4.x
镜像,是为基础镜像。基础镜像最好是下载源码进行编译,如果编译实在太麻烦,可以选择直接FROM dockerhub下其他用户编译好的镜像,但一定要确定版本号。
制作vulhub/bash:4.x
的过程如下:
- 切换到
shellshock
分支 - 新建
base/bash/4.x
目录 - 编写
base/bash/4.x/Dockerfile
文件 - 编译该镜像,名字为
vulhub/bash:4.x
第二,破壳漏洞有一个很典型的影响:使用bash cgi开发的web应用能够直接执行命令。所以,第二个镜像,就是继承vulhub/bash:4.x
,然后搭建一个简单的基于bash的web网站,用户可以直接对其进行攻击。
如果目标靶场中存在多个服务,理论上请分成多个镜像,然后使用docker-compose.yml进行配置。如果不存在多个服务,你也需要编写docker-compose.yml文件。
比如,wordpress的漏洞需要两个容器,一是apache,二是mysql,二者用docker-compose相连。
如果实在需要在一个容器中启动两个服务,比如redis写文件弹shell,那也没办法。
编写完成后,进行本地测试。
环境搭建完成之后,编写README.md,漏洞说明、利用文档。
向vulhub项目提交pull request。
一段时间后,质量达标,我拉你为贡献者。