xss挑战赛小记 0x01(xsstest)
0x00
今天在先知社區看到了一個xss挑戰賽
結果發現比賽已經結束 服務器也關了
百度找了個xss挑戰賽來玩一下
正好印證下xss的學習---
地址 http://test.xss.tv/
ps:寫的時候 有些關過不去 發現了一個心路歷程和我很相似的wp
默默點了關注
留一個他的鏈接 http://www.cnblogs.com/r00tuser/p/7407459.html
0x01
參數是name 直接試了一下<script>alert(1)</script>
發現過了
0x02
隨便輸111發現有兩個xss的點
第一個點做了防護第二個點沒有
就加個"> 閉合前面的標簽就好了
0x03
同樣有兩個點 但是兩個點都做了防護 被轉化為實體標簽了
雖然<>不能用 但是是在標簽里面 用事件應該能過
就用onmouseover這個事件 然后閉合前面的屬性
' onmouseover='alert(1)
當然用其他的事件oninput onselect等等也行
0x04
這一關只是把需要閉合的從單引號變成了雙引號
用上面同樣的姿勢..換成雙引號就可以過。。
0x05
用剛剛的姿勢試了一下
發現他把on轉化為o_n
這樣就用不了事件了。。。但是script沒有被轉
插入標簽試試
"> <a href="javascript:alert(1)">1</a>
點擊1 彈框
0x06
這一關就發現href被轉化為hr_ef了...
script data action src confirm都被轉化了
但是name code poster background還是幸存
弄了很久都沒找到可以用的東西
想想試一下大小寫和編碼。。。發現大寫可以繞過..混寫也行
"><SCRIPT>alert(1)</SCRIPT> (alert大寫就彈不了)
0x07
發現script和on這樣的被直接替換為空了
猜測是replace這樣的一次替換
雙寫發現過了
0x08
同樣有兩個點 過濾略有不同
主要看鏈接這個點
仍然過濾了on script src href " 等 而且大寫也會被轉化為小寫
但是<> ' img 幾個都沒被過濾
因為第二個點輸入的參數在href標簽里面
很容易想到偽協議javascript:alert(1)
script的繞過是個問題。。%00 	 試過了還是不行
最后去找了下別人的wp 發現可以用%09過 (url里為%09 就是tab)
javas%09cript:alert(1)
0x09
這一關就完全get不到點了。。一直顯示不合法的鏈接
試了一些方法都不行,只有去看下wp
發現wp上說這道題的意思是會自動檢測url
不帶http://的內容就會顯示不合法。。覺得自己的思路真是太僵了
用http://輸入試了一下發現果然不會顯示不合法
但是仍然過濾了一些東西 可以利用上一關的payload
javas%09cript:alert('http://') 這樣就可以過了
wp里的payload是利用注釋
javas%09cript:alert(1)//http://
0x10
一看沒有顯示的東西
源碼里發現三個隱藏的input
測試了一下發現前兩個都沒用 但是第三個sort有顯示
把屬性變成text就可以顯示了
t_sort=" onmouseover="alert(1)" type="text" 這樣就可以了
0x11
相比10多了一個ref
但是還是只有sort有顯示 但是做了過濾
想到referer...抓個包看一下
在包里面添加一個referer發現參數能被顯示出來
Referer:11111" onmouseover="alert(1)" type="text 這樣就過了
0x12
在源碼里又發現了User-Agent的輸出
同樣修改一下
User-Agent:11111" onmouseover="alert(1)" type="text
同樣的payload過了
0x13
同樣看到了cook聯想到cookie
應該跟前面兩題一樣的尿性
Cookie參數同樣也可以輸出 修改一下就行
Cookie: user=11111" onmouseover="alert(1)" type="text
0x14
這一關需要訪問的網站無法連接了
就做不了這道題目了
看了wp是一個圖片exif xss
在圖片詳細信息中插入xss代碼可以彈
0x15
通過14的鏈接直接看第15關
發現有個參數src=
查看源碼可見src參數傳遞到ng-include 查了一下發現是一個外部包含指令
具體了解可參考這篇文章
http://blog.csdn.net/u011127019/article/details/53666528
想到了包含前面的彈框
ng-include中包含的script標簽中的命令不會執行
src='http://test.xss.tv/level1.php?name=111<img src=123 onerror=alert(1)>'
這樣就可以彈了
0x16
keyword這個點下 script 空格 被轉為空格占位符
在之前看到的文章里想到了用換行符和tab
但是tab同樣會被轉化為空格占位符
只能用換行符 %0d %0a
<img%0Dsrc="1"%0Donerror="alert(1)">
0x17
這道題有個flash..一開始覺得很難
試探性的改了下參數再看源碼發現會輸出
就直接試試
前面沒有" 就不用閉合前面的
發現"會被轉 就換成單引號
onmouseover='alert(1)'
前面有個空格為了和前面的隔開
0x18
還是一樣的參數
一樣的payload可以過
0x19
這一關的src參數用雙引號包裹起來了
但是如果輸出雙引號去閉合會被轉成實體符號
所以參數一定在src之中
去看wp他說是flash xss
沒有接觸過這個也不懂。。
0x20
同19
0xX0
入門的基礎學習。。
xss還是挺有意思的
總結
以上是生活随笔為你收集整理的xss挑战赛小记 0x01(xsstest)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 机器学习在客户管理场景中的应用
- 下一篇: 关于 SAP Spartacus fea