成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

DOM-based XSS in jQuery

SKYZACK / 3235人閱讀

摘要:本文介紹了幾種可能被攻擊的使用方法。如果使用標(biāo)簽插入了內(nèi)聯(lián)會立即執(zhí)行。加的屬性返回的時(shí)編碼后的字符串,需要解碼才可能造成威脅??傮w來說,任何把字符串作為可執(zhí)行的代碼的操作,都是不安全的。

本文介紹了幾種可能被 XSS 攻擊的 jQuery 使用方法。

$

我們經(jīng)常使用向 $ 內(nèi)傳入一個(gè)字符串的方式來選擇或生成 DOM 元素,但如果這個(gè)字符串是來自用戶輸入的話,那么這種方式就是有風(fēng)險(xiǎn)的。

先看一個(gè) DEMO:http://jsbin.com/duwuzonife/1/edit?html,js,output

javascript$("");

當(dāng)用戶輸入的字符串是像這樣的時(shí),雖然這個(gè) 元素不會馬上被插入到網(wǎng)頁的 DOM 中,但這個(gè) DOM 元素已經(jīng)被創(chuàng)建了,并且暫存在內(nèi)存里。而對于 元素,只要設(shè)置了它的 src 屬性,瀏覽器就會馬上請求 src 屬性所指向的資源。我們也可以利用這個(gè)特性做圖片的預(yù)加載。在上面的示例代碼中,創(chuàng)建元素的同時(shí),也設(shè)置了它的屬性,包括 src 屬性和 onerror 事件監(jiān)聽器,所以瀏覽器會馬上請求圖片資源,顯然請求不到,隨機(jī)觸發(fā) onerror 的回調(diào)函數(shù),也就執(zhí)行了 JavaScript 代碼。

推薦閱讀 $ 的官方文檔:http://api.jquery.com/jQuery/

類似的其他方法
javascript.after()
.append()
.appendTo()
.before()
.html()
.insertAfter()
.insertBefore()
.prepend()
.prependTo()
.replaceAll()
.replaceWith()
.unwrap()
.wrap()
.wrapAll()
.wrapInner()
.prepend()

以上這些方法不僅創(chuàng)建 DOM 元素,并且會馬上插入到頁面的 DOM 樹中。如果使用

閱讀需要支付1元查看
<