使用docker快速搭建Permeate滲透測試系統實踐

tdaxia發表於2018-11-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管理軟體連線測試,如下圖所示

 

image

四、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/,便可以開啟安裝協議頁面,如下圖所示

 

image

五、安裝配置

安裝過程比較簡單,但在填寫資料庫地址的時候需要注意,我們已經將mysqlserver連結到了permeate容器當中,此時資料庫地址直接填寫db即可,資料庫密碼筆者在啟動MySQL容器時設定的為123,這裡也填寫123,參考如下圖所示

 

image

 

再次點選下一步的時候,能看到頁面當中返回資料表安裝成功的提示,如下圖所示

 

image

 

點選進入首頁按鈕之後,便可以來到首頁,首頁如下圖所示

 

image

六、圖書推薦

如果對筆者的文章較為感興趣,可以關注筆者新書《PHP Web安全開發實戰》,現已在各大平臺上架銷售,封面如下圖所示

 

image


 

作者:湯青松

 

日期:2018-11-26

 

微信:songboy8888

相關文章