1. 程式人生 > >測試開發必備技能:安全測試漏洞靶場實戰

測試開發必備技能:安全測試漏洞靶場實戰

安全在網際網路行業,是一個對專業性較強,且敏感的一個領域,所謂"一念成佛,一念入魔",安全技術利用得當,可以為你的產品、網站更好的保駕護航,而如果心術不正,利用安全漏洞去做一些未法牟利,則容易造成承擔不必要的違法責任。 在日常很容易被大家忽略的一點,在非授權的情況下,對網站進行滲透攻擊測試,也是屬於非合規操作,是觸及法律法規的。因此對於大家在學習安全測試過程中,通常建議是直接在本地直接**搭建安全演練靶場環境**,儘量避免直接對非授權的網站進行測試。 掌握安全測試是測試開發工程師進階的一項硬技能,今天這篇文章,就來給大家分享兩款常用安全測試演練靶場專案。 # 1. WebGoat WebGoat是由OWASP組織研製出的用於進行Web漏洞實驗的Java靶場程式。提供的訓練課程有30多個,其中包括:跨站點指令碼攻擊(XSS)、訪問控制、執行緒安全、操作隱藏欄位、操縱引數、弱會話cookie、SQL盲注、數字型SQL注入、字串型SQL注入、web服務、Open Authentication失效、危險的HTML註釋等等。WebGoat提供了一系列web安全學習的教程,某些課程也給出了視訊演示,指導使用者利用這些漏洞進行攻擊。 ![](https://tva1.sinaimg.cn/large/008eGmZEgy1goahwgonf8j30ub0kygo2.jpg) 專案地址: ``` https://github.com/WebGoat/WebGoat ``` **1.1 安裝前置條件說明** 進入到專案地址,選擇WebGoat的jar版本,由於WebGoat 8的jar檔案已自帶了tomcat和資料庫,所以不需要再另外安裝tomcat和mysql,只需要安裝jdk用於執行jar檔案即可。 ![](https://tva1.sinaimg.cn/large/008eGmZEgy1goahww6epij30so079wez.jpg) 需要說明的是,WebGoat8.0以上的版本,需要安裝依賴JDK11以上。 下載完成後,其中: - `webgoat-server-8.1.0.jar` 對應的是webgoat服務,用於啟動**WebGoat**。 - `webwolf-8.1.0` 另一個含有漏洞的輔助系統,非必需。 **1.2 啟動方法** 通過`java -jar xxx.jar`分別啟動webgoat和webwolf兩個jar程式,例如: ![](https://tva1.sinaimg.cn/large/008eGmZEgy1goahxbisu3j318t0jhgsp.jpg) 執行成功後,就可以通過連結`http://127.0.0.1:8080/WebGoat`訪問Webgoat。 ![](https://tva1.sinaimg.cn/large/008eGmZEgy1goahxl51tnj31h00fdmyl.jpg) 首先需要注入一個賬號,然後登陸後,按照WebGoat的側邊順序一項一項進行測試。 目前WebGoat分為三類,`Lesson`、`Challenges/CTF`、`WebWolf`。 其中Lesson為課程,每個課程中包括漏洞描述,成因,以及練習, ![](https://tva1.sinaimg.cn/large/008eGmZEgy1goahxzavd2j31hc0hejuv.jpg) WebWolf的啟動方式基本一致,WebWolf的預設埠為9090,登入地址`http://127.0.0.1:9090/WebWolf/login`,WebWolf的賬戶與WebGoat是相通的,使用WebGoat的賬戶可以直接登入WebWolf。 # 2. DVWA DVWA(Damn Vulnerable Web Application)是一款比較著名的漏洞靶場,採用PHP+Mysql編寫的一套用於常規WEB漏洞教學和檢測的WEB脆弱性測試程式。包含了SQL注入、XSS、盲注等常見的一些安全漏洞。旨在為安全專業人員測試自己的專業技能和工具提供合法的環境,幫助web開發者更好的理解web應用安全防範的過程。 官網: ``` https://dvwa.co.uk/ ``` ![](https://tva1.sinaimg.cn/large/008eGmZEgy1goahybcjx8j30kq0agjsv.jpg) **DVWA共有十個模組**,分別是: - 1.Brute Force(暴力(破解)) - 2.Command Injection(命令列注入) - 3.CSRF(跨站請求偽造) - 4.File Inclusion(檔案包含) - 5.File Upload(檔案上傳) - 6.Insecure CAPTCHA (不安全的驗證碼) - 7.SQL Injection(SQL注入) - 8.SQL Injection(Blind)(SQL盲注) - 9.XSS(Reflected)(反射型跨站指令碼) - 10.XSS(Stored)(儲存型跨站指令碼) **2.1 搭建方法** 如果是在Windows上搭建DVWA,安裝過程主要分為兩步: - phpstudy下載以及安裝。 - DVWA下載及配置。 1、 由於DVWA需要執行在有資料庫/伺服器等多種環境下,我們一般選用集成了這些環境的phpStudy: `https://www.xp.cn/`,這個工具可以在官網下載,如下: ![](https://tva1.sinaimg.cn/large/008eGmZEgy1goahyoafyvj311o0fo40i.jpg) 2、下載完成,按要求,傻瓜式安裝即可,安裝完成後,開啟啟動**Apache**、**MySQL**兩個服務。 ![](https://tva1.sinaimg.cn/large/008eGmZEgy1goahyxctazj30rs0lvtbo.jpg) 3、下載DVWA,將壓縮包解壓到phpstudy的WWW目錄下。並且找到DVWA\config下面的config.ini.php.dist檔案,修改其中的使用者名稱密碼,按需修改即可。最後將字尾.dist刪除,檔名為:`config.inc.php`,內容如下: ``` ``` 4、訪問`http://localhost/dvwa/setup.php`,點選建立資料庫。 ![](https://tva1.sinaimg.cn/large/008eGmZEgy1goahzlz1ebj30p60pjjwj.jpg)) 5、建立成功,會自動跳轉到登入頁面,需要輸入使用者名稱密碼。預設使用者名稱:`admin` ,預設密碼:`password`。 ![](https://tva1.sinaimg.cn/large/008eGmZEgy1goai0ddumej30ns0g5aaj.jpg) 到這裡,我們已經完成了,安全漏洞靶場環境的搭建。怎麼樣,你學會了嗎? 繁忙之餘,原創不易,如果你覺得文章還不錯,可點贊、轉發、關注 ,因為這將是持續輸出更多優質文章的最強