使用docker快速搭建Permeate渗透测试系统实践

时间:2024-07-29 23:36:26

一、背景

笔者最近在做一场Web安全培训,其中需要搭建一套安全测试环境;在挑选渗透测试系统的时候发现permeate渗透测试系统比较满足需求,便选择了此系统;为了简化这个步骤,笔者将系统直接封装到了docker当中,同时编写了一套启动文档,希望到时候给学员和读者参考。

二、操作实践

  1. 数据库搭建
  2. permeate搭建
  3. 安装配置

三、数据库搭建

permeate渗透测试系统使用的数据库是MySQL,因此笔者需要先安装mysql数据库服务,为了简化安装,便直接使用了docker方式进行,参考命令如下

docker run --name mysqlserver -e MYSQL_ROOT_PASSWORD=123 -d -i -p 3309:3306  mysql:5.6

启动之后,可以使用宿主机的MySQL管理软件连接测试,如下图所示

使用docker快速搭建Permeate渗透测试系统实践

四、permeate搭建

在安装完MySQL服务之后,便可以安装permeate系统了,笔者已经将所需PHP和nginx环境封装好了,因此只需下载镜像运行即可

4.1 运行容器

在运行容器时候需要考虑两个问题,首先需要将web端口映射出来宿主机才可以访问,第二个是需要考虑此容器要能访问得到mysql服务,因此参考命令如下:

docker run --name permeate_test --link mysqlserver:db  -d -i  -p 8888:80  registry.cn-hangzhou.aliyuncs.com/daxia/websafe:init

4.2 启动服务

在启动容器之后,通过浏览器访问http://localhost:8888/并不能打开网页,原因是因为nginx服务和PHP服务都还未启动,启动的命令参考如下所示:

docker exec permeate_test zsh -c "nginx && /usr/sbin/php-fpm7.2  -R"

此时再通过浏览器访问http://localhost:8888/,便可以打开安装协议页面,如下图所示

使用docker快速搭建Permeate渗透测试系统实践

五、安装配置

安装过程比较简单,但在填写数据库地址的时候需要注意,我们已经将mysqlserver链接到了permeate容器当中,此时数据库地址直接填写db即可,数据库密码笔者在启动MySQL容器时设置的为123,这里也填写123,参考如下图所示

使用docker快速搭建Permeate渗透测试系统实践

再次点击下一步的时候,能看到页面当中返回数据表安装成功的提示,如下图所示

使用docker快速搭建Permeate渗透测试系统实践

点击进入首页按钮之后,便可以来到首页,首页如下图所示

使用docker快速搭建Permeate渗透测试系统实践

六、图书推荐

如果对笔者的文章较为感兴趣,可以关注笔者新书《PHP Web安全开发实战》,现已在各大平台上架销售,封面如下图所示

使用docker快速搭建Permeate渗透测试系统实践


作者:汤青松

日期:2018-11-26

微信:songboy8888