XSS****概念:通常指黑客通過HTML注入纂改了網(wǎng)頁,插入惡意腳本,從而在用戶瀏覽網(wǎng)頁時,控制用戶瀏覽器的一種攻擊。
XSS****有三種:
反射型xss:只是簡單地把用戶輸入的數(shù)據(jù)反射給瀏覽器,簡單來說,黑客往往需要用戶誘使用戶點擊一個惡意鏈接,才能攻擊成功。
存儲型XSS:將用戶輸入的數(shù)據(jù)存儲在服務(wù)器端。
DOM XSS:通過修改頁面的DOM節(jié)點形成的XSS。
反射型xss
LOW****等級:
先利用alert測試是否存在xss


出現(xiàn)彈窗,說明存在xss。
編寫PHP文檔獲取頁面的cookie:
<?php
$cookie=$_GET[‘cookie’];
file_put_contents(‘cookie.txt’,$cookie);
?>
編寫js代碼將頁面的cookie發(fā)送到cookie.php中

這里的js代碼要用url編碼

頁面跳轉(zhuǎn),說明js執(zhí)行成功

接下來查看phpstudy中www目錄下是否出現(xiàn)cookie.txt


成功拿到cookie
利用得到的cookie登陸DVWA的首頁:



成功登陸
Medium****等級:
同樣,先利用alert進(jìn)行彈窗測試

發(fā)現(xiàn)頁面沒有反應(yīng),有可能是<script>被過濾了,瀏覽器雖然會過濾<script>標(biāo)簽關(guān)鍵字,但是只過濾一次,所以可以想辦法繞過。
(1)通過構(gòu)造兩個<script>標(biāo)簽,即嵌套:


出現(xiàn)彈窗,說明存xss
(2)****也可以大小寫混寫進(jìn)行繞過


出現(xiàn)彈窗,說明存在xss
然后利用js代碼獲取cookie,成功拿到cookie

High****等級
還是先利用彈窗測試是否存在xss,像low和medium等級那樣操作發(fā)現(xiàn)頁面并沒有出現(xiàn)彈窗。
接下來我們換個標(biāo)簽,img標(biāo)簽和iframe標(biāo)簽(在一個HTML中嵌入另一個HTML):
Img****:<img src=x onerror=alert(1)>

Iframe:<iframe onload=alert(1)>

兩個都成功的出現(xiàn)彈窗
存儲型XSS:
和上面一樣的操作,只是要注意的是在這個里面文本框是有長度限制,但是可以借助火狐的插件Tamper Data,在Tamper Data加入寫的js代碼獲取cookie

