溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

jQuery中xss漏洞淺析和復(fù)現(xiàn)及修復(fù)是怎么樣的

發(fā)布時(shí)間:2021-11-15 21:25:14 來(lái)源:億速云 閱讀:3012 作者:柒染 欄目:安全技術(shù)

這期內(nèi)容當(dāng)中小編將會(huì)給大家?guī)?lái)有關(guān)jQuery中xss漏洞淺析和復(fù)現(xiàn)及修復(fù)是怎么樣的,文章內(nèi)容豐富且以專業(yè)的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。

1、xss漏洞的形成和危害

形成:xss漏洞也叫跨站點(diǎn)腳本編制,形成的原因簡(jiǎn)單說(shuō)就是應(yīng)用程序未對(duì)用戶可控制的輸入正確進(jìn)行無(wú)害化處理,就將其放置到充當(dāng) Web 頁(yè)面的輸出中。這可被跨站點(diǎn)腳本編制攻擊利用。

危害:一旦注入惡意腳本后,攻擊者就能夠執(zhí)行各種惡意活動(dòng)。攻擊者可能將私有信息(例如可能包含會(huì)話信息的 cookie)從受害者的機(jī)器傳輸給攻擊者。攻擊者可能以受害者的身份將惡意請(qǐng)求發(fā)送到Web 站點(diǎn),如果受害者具有管理該站點(diǎn)的管理員特權(quán),這可能對(duì)站點(diǎn)尤其危險(xiǎn)。網(wǎng)絡(luò)釣魚攻擊可用于模仿可信站點(diǎn),并誘導(dǎo)受害者輸入密碼,從而使攻擊者能夠危及受害者在該 Web 站點(diǎn)上的帳戶。


主要有三種類型的 XSS:

類型 1:反射的 XSS(也稱為“非持久性”)

服務(wù)器直接從 HTTP 請(qǐng)求中讀取數(shù)據(jù),并將其反射回 HTTP 響應(yīng)。在發(fā)生反射的 XSS 利用情況時(shí),攻擊者會(huì)導(dǎo)致受害者向易受攻擊的 Web 應(yīng)用程序提供危險(xiǎn)內(nèi)容,然后該內(nèi)容會(huì)反射回受害者并由 Web 瀏覽器執(zhí)行。

類型 2:存儲(chǔ)的 XSS(也稱為“持久性”)

應(yīng)用程序在數(shù)據(jù)庫(kù)、消息論壇、訪問(wèn)者日志或其他可信數(shù)據(jù)存儲(chǔ)器中存儲(chǔ)危險(xiǎn)數(shù)據(jù)。在以后某個(gè)時(shí)間,危險(xiǎn)數(shù)據(jù)會(huì)讀回到應(yīng)用程序并包含在動(dòng)態(tài)內(nèi)容中。如果其中某個(gè)用戶執(zhí)行惡意內(nèi)容,那么攻擊者就有可能能夠以該用戶的身份執(zhí)行特權(quán)操作,或者獲取對(duì)屬于該用戶的敏感數(shù)據(jù)的訪問(wèn)權(quán)。

類型 3:基于 DOM 的 XSS

在基于 DOM 的 XSS 中,客戶機(jī)執(zhí)行將 XSS 注入頁(yè)面的操作;在其他類型中,注入操作由服務(wù)器執(zhí)行?;?DOM 的 XSS 中通常涉及發(fā)送到客戶機(jī)的由服務(wù)器控制的可信腳本,例如,在用戶提交表單之前對(duì)表單執(zhí)行健全性檢查的 Javascript。

2、jQuery最新xss漏洞淺析、復(fù)現(xiàn)

2.1環(huán)境搭建

對(duì)于此漏洞原作者搭建了在線環(huán)境,內(nèi)置了三個(gè)xss poc,點(diǎn)擊Append via .html()按鈕即可觸發(fā)xss

環(huán)境鏈接

jQuery中xss漏洞淺析和復(fù)現(xiàn)及修復(fù)是怎么樣的

jQuery中xss漏洞淺析和復(fù)現(xiàn)及修復(fù)是怎么樣的

2.2 源碼分析

先用第一個(gè)紅框模擬個(gè)開發(fā)環(huán)境,雖然三個(gè)poc都使用了包含onerror事件的img標(biāo)簽,但其實(shí)它們是放在屬性或style元素內(nèi)部,因此會(huì)繞過(guò)HTML清理器。

jQuery中xss漏洞淺析和復(fù)現(xiàn)及修復(fù)是怎么樣的審查元素發(fā)現(xiàn),點(diǎn)擊之后會(huì)多出現(xiàn)一個(gè)閉合標(biāo)簽</style>,就成功執(zhí)行了后面的彈窗腳本。

jQuery中xss漏洞淺析和復(fù)現(xiàn)及修復(fù)是怎么樣的

2.3 漏洞解析

形成此漏洞的關(guān)鍵是,在html()方法中,作為參數(shù)傳遞的HTML字符串將傳遞到$.htmlPrefilter()方法,這個(gè)方法用于替換自閉合標(biāo)簽,如將<tagname /> 替換為 <tagname></tagname>,3.x版本之前使用的正則會(huì)將x"識(shí)別為標(biāo)簽并新增</x”>閉合標(biāo)簽,從而達(dá)到xss的效果。

2.4漏洞修復(fù)

1、更新jQuery到3.5.0或更高版本

2、使用XSS清理工具清理用戶輸入的HTML

    清理工具地址

    原文鏈接

上述就是小編為大家分享的jQuery中xss漏洞淺析和復(fù)現(xiàn)及修復(fù)是怎么樣的了,如果剛好有類似的疑惑,不妨參照上述分析進(jìn)行理解。如果想知道更多相關(guān)知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道。

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI