日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

xss labs 挑战之旅

發(fā)布時間:2023/12/14 编程问答 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 xss labs 挑战之旅 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

沒事重新從xss的源碼分析一下形成和利用

  • xss挑戰(zhàn)之旅進入一關(guān),發(fā)現(xiàn)url中有一個參數(shù)name可控;測試測試一下,彈窗成功,在xss中擁有同樣彈窗效果的函數(shù)alert,還有prompt,以及confirm和prompt
    查看原碼發(fā)現(xiàn)對輸出沒有進行過濾,直接get參數(shù)輸出

  • 查看原碼發(fā)現(xiàn)對輸出沒有進行過濾,直接get參數(shù)輸出


    2. 第二關(guān)進入,看到輸入發(fā)現(xiàn)沒回應(yīng),查看原碼被轉(zhuǎn)義了嘗試構(gòu)造閉合payload: “>

    打開源碼發(fā)現(xiàn)一處被htmlspecialchars($str)轉(zhuǎn)義另一處沒有轉(zhuǎn)義

    3. 進入第三關(guān)構(gòu)造payload打開原碼發(fā)現(xiàn)尖括號被轉(zhuǎn)義,使用事件函數(shù)oninput onclick 或者onchange payload為’ οnchange=alert’123’ ‘觸發(fā)



    查看原碼發(fā)現(xiàn)尖括號被轉(zhuǎn)義

    4. 進入第四關(guān) 構(gòu)造payload發(fā)現(xiàn)為黑名單過濾了尖括號使用onclick觸發(fā),使用“閉合payload為
    " οnclick=alert ‘123’


    查看原碼果然為 黑名單過濾

    6. 進去后嘗試payload查看前臺原碼發(fā)現(xiàn)on和script變成了o_n ,s_cript ,嘗試使用a標(biāo)簽實現(xiàn)函數(shù)的調(diào)用,然后用javascript:alert(‘123’)去調(diào)用javascript函數(shù)觸發(fā)構(gòu)造的pyload
    "> dian


    查看原碼發(fā)現(xiàn)對特定函數(shù)進行了添加_

    7. 嘗試構(gòu)造payload發(fā)現(xiàn)上次的href增加了_,嘗試增加大小寫繞過 payload ">dian



    查看原碼發(fā)現(xiàn)黑名單果然增加了

    8. 構(gòu)造上次的payload發(fā)現(xiàn)href和 script被過濾,嘗試復(fù)寫嵌套”>alert(1)
    查看原碼果然是過濾了這些函數(shù)

    9. 構(gòu)造payload嘗試發(fā)現(xiàn)給關(guān)鍵字都加上了_ 大小寫也不行,嘗試html編碼繞過成功payload
    javascript:alert(1)


    查看源碼

    9.使用上次的pyload發(fā)現(xiàn)沒有識別,查看前臺原碼發(fā)現(xiàn)提示要驗證http合法性后面添加javascript:alert(1)//http://


    查看后端原碼,發(fā)現(xiàn)在以前的基礎(chǔ)上添加了http判斷

    10.進入第10關(guān),查看前臺原碼嘗試函數(shù)發(fā)現(xiàn)多了hidden這個參數(shù),發(fā)現(xiàn)t_sort是可以注入的,于是用t_sort來彈窗構(gòu)造payload使用onclick彈出使用text顯示出來payload為 t_sort=" οnclick=“alert(123)” type=“text” “”



    11.構(gòu)造payload查看前臺源碼發(fā)現(xiàn)ref字段是http referer的值,參數(shù)嘗試抓包改包,構(gòu)造參數(shù)



    9. 構(gòu)造payload查看前臺源碼發(fā)現(xiàn)t_ua字段是http User-Agent的值,參數(shù)嘗試抓包改包,構(gòu)造參數(shù)

  • 構(gòu)造payload查看前臺源碼發(fā)現(xiàn)t_cook字段是http cookie的值,參數(shù)嘗試抓包改包,構(gòu)造參數(shù)


    14.沒有環(huán)境
    15.直接看源碼吧沒試出來

    看到這個函數(shù)百度一下是文件包含的一個類,選擇包含還要沒尖括號選擇包l2的

    16.查看原碼,發(fā)現(xiàn)輸入的東西經(jīng)過了大小寫的轉(zhuǎn)換并且通過四次的替換檢查,分別對script,空格,/,進行了替換,但尖括號沒有被替換。

    可以使用img標(biāo)簽,,可以選擇%0d %0a 進行繞過,構(gòu)造出最后的payload,
    <img%0dsrc=1%0dοnerrοr=“alert(123)”>

    17.打開源碼發(fā)現(xiàn)了兩個注入點構(gòu)造payload

    倆個輸出的值都被做了實體化轉(zhuǎn)義,無法閉合標(biāo)簽,而 embed標(biāo)簽可以加入事件,可以在arg01,或者arg02中加入事件去觸發(fā)

    18.嘗試上次的payload直接彈窗

    看輸出跟上一關(guān)一樣

    19.后邊涉及到反編譯看了大哥的沒看懂,下去再研究一下payload :arg01=version&arg02=%3Ca%20href=%22javascript:alert(%27xss%27)%22%3E111%3C/a%3E

    20.payload為arg01=id&arg02=%22))}catch(e){}if(!self.a)self.a=!alert(/xss/)//%26width%26height
  • 總結(jié)

    以上是生活随笔為你收集整理的xss labs 挑战之旅的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。