XSS闖關(guān)小游戲通關(guān)指南

你問我是哪個(gè)闖關(guān)小游戲?官方指定認(rèn)證小游戲啦!

第一關(guān)

直接看url"name=test"

秒了,有什么好說的
第二關(guān)

閉合input標(biāo)簽就完事了
第三關(guān)

我看了眼源碼,(什么嘛,不就是跟上一關(guān)比把雙引號(hào)變成單引號(hào)了嘛,簡(jiǎn)單),但是這一關(guān)閉合不了input標(biāo)簽,只能試試onclick事件了

別忘記點(diǎn)一下搜索框
第四關(guān)

這一關(guān)看來是會(huì)替換掉全部的尖括號(hào),用不了尖括號(hào)那就用事件對(duì)象函數(shù)

好吧,就是把上一關(guān)的單引號(hào)變成雙引號(hào)
第五關(guān)

這一關(guān)檢測(cè)到on,script時(shí)會(huì)替換成o_n,scr_ipt,而且會(huì)全部轉(zhuǎn)換成小寫,那就用不了事件對(duì)象函數(shù),大小寫混淆和雙寫繞過了,但是這都沒有關(guān)系

用a標(biāo)簽的href屬性調(diào)用javascript:的偽協(xié)議,記得點(diǎn)一下超鏈接
第六關(guān)

這一關(guān)的script,src,onclick,href都會(huì)被檢測(cè),我的逃跑路線都被摸清楚了,查攻略!

居然被自己的思維限制住沒有試大小寫混淆,可惡的作者,這一關(guān)還有別的payload
"><a hREf=javascript:alert(/Yukito/)><"
我才沒有因?yàn)椴榱斯ヂ跃筒凰伎剂四兀l要當(dāng)?shù)偷壬锇?,想太多了你?/p>
第七關(guān)

查看源碼是不轉(zhuǎn)義也不替換尖括號(hào)了,但是匹配到script,href,src的時(shí)候會(huì)直接替換成空字符

雙寫就過關(guān)了
"><a hrhrefef=javascrscriptipt:alert(/yukito/)<"
第八關(guān)

友情鏈接?我看看嗷:轉(zhuǎn)義尖括號(hào)和雙引號(hào),替換href,on,script,src能替換的都替換完了,好的,查攻略

javascript:alert(/xss/)
javascript:alert(/yukito/)
https://www.qqxiuzi.cn/bianma/zifushiti.php
說是什么字符實(shí)體轉(zhuǎn)換,下面是我抄來的
字符實(shí)體是用一個(gè)編號(hào)寫入HTML代碼中來代替一個(gè)字符,在使用瀏覽器訪問網(wǎng)頁時(shí)會(huì)將這個(gè)編號(hào)解析還原為字符以供閱讀。
這么做的目的主要有兩個(gè):
1、解決HTML代碼編寫中的一些問題。例如需要在網(wǎng)頁上顯示小于號(hào)(<)和大于號(hào)(>),由于它們是HTML的預(yù)留標(biāo)簽,可能會(huì)被誤解析。這時(shí)就需要將小于號(hào)和大于號(hào)寫成字符實(shí)體:
小于號(hào)這樣寫:< 或 <
大于號(hào)這樣寫:> 或 >
前面的寫法稱為實(shí)體名稱,后面的寫法則是實(shí)體編號(hào)。ISO-8859-1字符集(西歐語言)中兩百多個(gè)字符設(shè)定了實(shí)體名稱,而對(duì)于其它所有字符都可以用實(shí)體編號(hào)來代替。
2、網(wǎng)頁編碼采用了特定語言的編碼,卻需要顯示來自其它語言的字符。例如,網(wǎng)頁編碼采用了西歐語言ISO-8859-1,卻要在網(wǎng)頁中顯示中文,這時(shí)必須將中文字符以實(shí)體形式寫入HTML代碼中。
嗯,反正nb就對(duì)了
第九關(guān)

又是友情鏈接,頭開始痛了,放張圖片各位自行體會(huì)一下

這一關(guān)后臺(tái)把該替換的都替換了也轉(zhuǎn)義了尖括號(hào)和雙引號(hào),好查攻略,看了php源碼才知道會(huì)匹配http:\\,沒有的一律叉出去!

javascript:alert(/yukito/)/*http://*/
javascript:alert(/yukito/)//http://
注意不要有空格?。。?!
第十關(guān)

一眼源碼,這一關(guān)多了3個(gè)隱藏參數(shù),我試了試只有t_sort有用,還過濾了所有的尖括號(hào)

第十一關(guān)

多了一個(gè)參數(shù),全部試一遍,又是只有t_sort有反應(yīng),不過后面多了個(gè)type參數(shù),沒思路,查攻略!要在referer請(qǐng)求頭里注入xss好,我沖!


不管我怎么點(diǎn)都沒有任何反應(yīng),
123456" οnmοuseοver=alert(1) type="text"
" type="text" οnclick="alert()
放這了,自求多福
第十二關(guān)

查了攻略,這回是User-Agent,希望這次不會(huì)翻車

成功了!
" type="text" οnclick="alert()
123456" οnmοuseοver=alert(1) type="text
第十三關(guān)
這一關(guān)是Cookie,第一個(gè)payload沒有成功第二個(gè)就成功了
user=" type="text" οnclick="alert(1)
user=123456" οnmοuseοver=alert(1) type="text

第十四關(guān)

好家伙,源碼什么都不給,不得不查攻略https://www.hackersb.cn/hacker/140.html
看完了,知道nb就完事了
后面的我不想演示了,就打到14關(guān)吧,后面的關(guān)卡簡(jiǎn)稱神仙打架,練習(xí)靶場(chǎng)的目的是為了增強(qiáng)對(duì)漏洞的理解和記憶,拜拜~
最后總結(jié)一下吧

F12->console->alert(1)你滴明白?!
我真的不是標(biāo)題黨,你自己試試不就知道了嘛QAQ