什麼是WebGoat?引用一下OWASP官方介紹:
java
WebGoat是OWASP組織研製出的用於進行web漏洞實驗的應用平臺,用來講明web應用中存在的安全漏洞。WebGoat運行在帶有java虛擬機的平臺之上,當前提供的訓練課程有30多個,其中包括:跨站點腳本***(XSS)、訪問控制、線程安全、操做隱藏字段、操縱參數、弱會話cookie、SQL盲注、數字型SQL注入、字符串型SQL注入、web服務、Open Authentication失效、危險的HTML註釋等等。WebGoat提供了一系列web安全學習的教程,某些課程也給出了視頻演示,指導用戶利用這些漏洞進行***。git
WebGoat多年來一直是版本5.4,今年升級爲版本6。主要是基於新的框架和界面對各項課程進行了從新集成,項目主頁是http://webgoat.github.io/。github
先來看一下兩個版本的界面:web
實際使用中,新版本不只界面漂亮,關鍵是hints、solutions等選項的內容更加完善,便於學習。使用WebGoat有兩種方法,一是直接下載運行包WebGoat-6.0-exec-war.jar,而後:瀏覽器
java -jar WebGoat-6.0-exec-war.jar
隨後就能夠在本機瀏覽器裏使用了:tomcat
http://localhost:8080/WebGoat
安全
可是我的更傾向於另外一種方法,就是下載源碼包,經過maven部署使用。好處是能夠完成一些須要修改源代碼的課程,並且不限於本機運行。但全新安裝tomcat、maven、java等必需環境,並且把參數設置好很是麻煩,因此直接在OWASP的Broken Web APP虛擬機上使用是最方便的,由於環境都已經構建好了。具體步驟以下:bash
下載獲得WebGoat-Master.tar.gz,複製到/var/www裏解壓,獲得WebGoat-master項目目錄:cookie
由於虛擬機啓動時tomcat已經運行了,因此要先中止服務,再用mvn啓動。將幾個過程寫成批處理:框架
cat >~/run_webgoat6.sh<<EOF /etc/init.d/tomcat6 stop cd /var/www/WebGoat-master mvn clean tomcat:run-war EOF
這樣,WebGoat5.4和6兩個版本就是虛擬機裏共存了。開機之後不運行run_webgoat6.sh腳本,則啓動webgoat5.4,運行了之後再從主界面進入就能夠play了!