資源描述:
《Web應用程序典型安全漏洞實驗》由會員上傳分享,免費在線閱讀,更多相關內(nèi)容在行業(yè)資料-天天文庫。
1、實驗指導書規(guī)范Web應用程序典型安全漏洞實驗1.實驗簡介?實驗所屬系列:實用信息安全技術?實驗對象:本科/??菩畔踩珜I(yè)?相關課程及專業(yè):計算機基礎,信息安全基礎?實驗時數(shù)(學分):2學時?實驗類別:實踐實驗類2.預備知識本實驗要求實驗者具備如下的相關知識。1、認證安全漏洞原理AuthenticationFlaws是存在于網(wǎng)絡設備所使用的互聯(lián)網(wǎng)操作系統(tǒng)中的一種漏洞。系統(tǒng)中存在認證繞過漏洞,可能允許遠程攻擊者繞過擴展認證,非授權訪問網(wǎng)絡資源。攻擊者可以通過向系統(tǒng)發(fā)送畸形報文的方式完成擴展認證,非授權訪問網(wǎng)絡資源。ForgotPassword測試項原理:Web應用程序
2、經(jīng)常提供一種讓他們的用戶能夠找回忘記的密碼的機制,但通常許多Web應用程序無法正確執(zhí)行這種機制,用來驗證用戶身份的信息往往是過于簡單的。這就在某種程度上提供了一種可攻擊的漏洞。2、測試工具WebGoat是一個用來演示W(wǎng)eb應用程序中的典型安全漏洞的應用程序,受用在應用程序安全審計的上下文中系統(tǒng)、條理地講解如何測試和利用這些安全漏洞。WebGoat是用Java語言寫成的,因此可以安裝到所有帶有Java虛擬機的平臺之上。此外,它還分別為Linux和Windows系統(tǒng)提供了安裝程序。部署該程序后,可以使用該程序來完成多個WEB安全漏洞的訓練。當前提供的訓練課程有30多個,
3、其中包括:跨站點腳本攻擊(XSS)、訪問控制、線程安全、操作隱藏字段、操縱參數(shù)、弱會話cookie、SQL盲注、數(shù)字型SQL注入、字符串型SQL注入、Web服務、OpenAuthentication失效危險的HTML注釋等等。3.實驗目的掌握基于應用層的弱點測試手段與方法。實驗指導書規(guī)范4.實驗環(huán)境軟件環(huán)境:Windowsxp實驗工具:WebGoat5.實驗內(nèi)容和步驟本實驗針對網(wǎng)站存在的各種漏洞,使用WebGoat-5.2對這些漏洞進行攻擊實驗,具體實驗內(nèi)容如下:1.實驗步驟一:ForgotPassword與LogSpoofin實驗(1)ForgotPassword
4、在存儲目錄中找到WebGoat-5.2文件夾,打開后雙擊打開其中的webgoat批處理文件。打開InternetExplorer瀏覽器,在地址欄中輸入:http://localhost/WebGoat/attack,用戶名:guest,口令:guest。實驗指導書規(guī)范在打開的頁面中點擊“StartWebGoat”。接下來進行ForgotPassword項的攻擊。在左側列表中找到ForgotPassword一項,點擊進入。通常情況下程序員都會采用有意義的名稱作為表明和字段名。一般管理員表為admin,新聞表news,留言簿guestbook或guest,文章系統(tǒng)表ar
5、ticle。因此利用一些經(jīng)驗和可能的猜測回答來破解系統(tǒng),獲取用戶密碼。此處我們嘗試admin,然后點擊“Submit”。實驗指導書規(guī)范彈出以下頁面,說明用戶名存在,現(xiàn)在要求回答認證問題,由頁面文字信息可以得知Webgoat用戶的答案為red,故猜測問答的答案可能僅僅為簡單的顏色。嘗試yellow,發(fā)現(xiàn)并沒有通過。再嘗試green,發(fā)現(xiàn)通過,得到了admin賬戶的密碼。獲取結果實驗指導書規(guī)范(2)LogSpoofing這一實驗方法是“日志欺騙”,然后通過提示可以發(fā)現(xiàn)要使用%0d%0a來換行,造成接下來的內(nèi)容被視為日志,即輸入,Smith%0d%0aLoginSucce
6、ededforusername:admin,結果如下所示:實驗任務一練習題:支持安全WEB服務的協(xié)議是:【單選題】A【A】HTTPS【B】WINS【C】SOAP【D】HTTP1.實驗任務二:SQL注入實驗(1)StringSQLInjection這里從給出的SQL代碼提示可以看出,這是一個select語句:SELECT*FROMuser_dataWHERElast_name='YourName',所以嘗試進行SQL注入,通過構造永真邏輯,來完成SQL注入,具體如下所示:實驗指導書規(guī)范對應的SQL代碼變?yōu)椋篠ELECT*FROMuser_dataWHERElast_n
7、ame='Smith'or'1'='1',便會成功列舉出所有信息。(2)NumericSQLInjection首先還是先分析代碼:SELECT*FROMweather_dataWHEREstation=101,從給出的代碼可以看出,這段代碼依舊存在SQL注入漏洞。但是由于是一個下拉菜單,所以無法直接進行SQL注入,這里利用代理工具burpsuite進行抓包修改:實驗指導書規(guī)范這里可以看出,station代表所需要查詢的值,嘗試修改為1or1=1進行注入嘗試:SQL注入結果示意這里嘗試在輸入框中輸入,發(fā)現(xiàn)會顯示在網(wǎng)頁表單下面,可以使用跨站腳本攻擊:具體需要注入的代