WebGoat實驗環境搭建 - 2016.01.01


1.1 WebGoat簡介

Webgoat是OWASP組織研究出的一個專門進行web漏洞實驗的應用品臺,這個平臺裏包含了web中常見的各種漏洞,例如:跨站腳本攻擊、sql注入、訪問控制、隱藏字段、Cookie等;

OWASP(Open Web Application Security Project)是一個非營利的組織,它的目的是幫助個人和企業來發現和使用可信賴的軟件。

1.2 用到的工具

Webscarab十一個用來分析瀏覽器到服務器請求或者服務器到瀏覽器響應信息的一個框架,或者說是一個代理。它可以查看、修改、分析、刪除瀏覽器和服務器之間的傳送的信息,可以用來對http協議和https協議進行分析。

Firebug是Firefox下的一個開發工具,包含html、css、js審查和html、css修改等多項功能,是用來調試用的。可以通過F12之間打開,也可以通過菜單 -> 開發者打開。

Webscarab需要java環境,如果沒有配置好java環境先自行配置java環境,這裏假設java環境已經配置完成;則我們需要下載webscarab的安裝包,解壓完之後,如圖0所示;這是我們只需點擊webscarab.jar進行安裝即可。

圖 0 webscarab目錄結構

1.3 安裝過程

首先,webgoat是運行在帶有java的品臺之上的,如果你的機器沒有安裝java環境,還是需要先安裝java環境的,具體java環境的安裝不再介紹。

(1)下載任意版本的webgoat即可,不過還是推介下載最新版的,因爲有一些實驗在較低版本上是不能做的。下載完之後解壓縮你會看到如圖1所示的目錄結構

圖 1 webgoat 目錄結構

(2)運行圖中的webgoat.bat或者webgoat_8080.bat,則會啓動tomcat服務器;

(3)在tomcat服務器啓動之後,我們就可以通過瀏覽器對webgoat站點進行訪問了,具體的訪問地址爲如下:http://localhost:8080/WebGoat/attack或者http://127.0.0.1:8080/WebGoat/attack;有時上面兩個URL都不行,這是因爲我們指定了端口號,而有的瀏覽器是默認不指定端口號的,雖然我們的做法沒錯,但是卻被某些瀏覽器不識別,因此我們常常需要測試下面的地址:http://localhost/WebGoat/attack或者http://127.0.0.1/WebGoat/attack其實localhost只是一個主機名,最後也會被替換爲127.0.0.1,在Linux下我們可以通過查看/etc/host查看主機名與IP的對應關係,也可以對其進行修改。

(4)如果連接成功,這是會彈出一個用戶名和密碼的登錄框;那麼用戶名和密碼怎麼確定呢?這時我們就需要看一下tomact的配置文件了,首先我們必須清楚配置文件在哪裏,conf這個目錄下就是配置文件的信息,而xml就是配置文件,在這裏我們看到總共有4個配置文件。稍後我們會具體詳解這四個配置文件的作用。而我們需要找的用戶名和密碼就可以從tomcat_user.xml中得到,具體的請看詳細的配置說明。

(5)登錄成功之後我們就會看到如圖2所示的界面,這就是webgoat的主界面,這是我們點擊屏幕上的Start Webgoat按鈕就可以進入Webgoat的實驗環境了。

實驗環境的界面如圖3所示,在這裏我們可以看到左面是一個我們實驗的目錄結

構,右面則是我們的實驗內容。


 圖 2 WebGoat的主界面


圖 3 Webgoat的實驗環境界面

1.4 文件說明

(1)配置文件tomacat_user.xml的說明

我們可以看到其內容如圖4所示,其中<role>標籤指出的是用戶的身份,我們需要登錄webgoat,則通過其內容我們可以看出我們的身份有admin、basic、user三種,而<user>標籤,指出了每一個用戶登錄所需的用戶名、密碼和其登錄之後的身份角色,對應admin、basic、user我們的用戶名和密碼分別是(webgoat,wengoat)、(basic,basic)、(guest,guest)。記住,我們不能以tomcat的身份進行登錄,那個是tomcat服務器的用戶名和密碼,如果我們以其身份登錄webgoat會出錯。當然,在這裏我們也可以指定自己的用戶名和密碼或者修改用戶民和密碼,不用修改角色只需修改用戶名和密碼即可。

圖 4 tomcat_user.xml

(2)配置文件server.xml的說明

這個配置文件和第一個一樣都很簡單,server即服務的意思,在這裏只不過對服務器的服務和其端口號進行設定,另外還對http鏈接所傳輸的內容大小、時間等作出了規定;

(3)配置文件web.xml的說明

             這個配置文件恐怕是最複雜的了,在web.xml中元素定義的先後順序不能顛倒,否則Tomcat服務器可能會拋出SAXParseException。其中對filter過濾器、servlet、servlet映射、welcom清單、受保護文件、安全驗證角色、安全驗證登錄界面等作出了詳細的規定;

(4)配置文件context.xml的說明

context.xml是Tomcat公用的環境配置;tomcat服務器會定時去掃描這個文件,一旦發現文件被修改(時間戳改變了),就會自動重新加載這個文件,而不需要重啓服務器。context.xml的三個作用範圍:

① tomcat server級別:在/conf/context.xml裏配置

② Host級別:在/conf/Catalina/${hostName}裏添加context.xml,進行配置

③ web app 級別:在/conf/Catalina/${hostName}裏添加${webAppName}.xml,繼而進行配置

1.5 代理設置

不同瀏覽器的代理設置是不同的,下面我就對Chrome瀏覽器、Firefox瀏覽器、IE瀏覽器這三大瀏覽器的代理設置做一下講解。但是在這裏我們需要設置的代理地址爲:localhost,端口爲8008。

(1)Chrome瀏覽器代理設置

①打開Chrome瀏覽器,點擊菜單,點擊"設置":

②向下滾動鼠標,直到出現"顯示高級設置"的鏈接,然後點擊"顯示高級設置"

③然後在多出來的選項中找到"網絡"選項.然後點擊"更改代理服務器設置"按鈕,在彈出的Internet 屬性窗口中點擊"局域網設置"按鈕

④勾選"爲 LAN 使用代理服務器"選項,然後再勾選 "跳過本地地址的代理服務器",接着填寫代理服務器地址和端口號.點擊確定,確定即可

 

(2)Firefox瀏覽器代理設置

      ①打開菜單->選項

       ②選擇高級->設置


③選擇手動代理,填寫代理地址和端口號

 

(3)IE代理設置

①選擇菜單->Internet選項

       ②點擊連接

③點擊局域網設置

  到此爲止,Webgoat的安裝、配置以及所需實驗工具的安裝和環境的搭建我們就講解完了,接下來我們就可以進行實驗了。有些人可能還會存在像webgoat怎麼做、webscarab怎麼用、Firefox開發工具怎麼用等疑問,彆着急,接下來我們就開始步入webgoat大講堂。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章