国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于Web系統(tǒng)的跨站腳本攻擊漏洞解析

2019-12-23 15:57巨騰飛田國敏
關(guān)鍵詞:腳本攻擊者漏洞

◆巨騰飛 田國敏 楊 京

(陜西省網(wǎng)絡(luò)與信息安全測(cè)評(píng)中心 陜西 710065)

最早的Web系統(tǒng)程序只是為了單純的應(yīng)用,只要運(yùn)行程序的這臺(tái)計(jì)算機(jī)安全,那么這個(gè)應(yīng)用程序也就是安全的。如今,時(shí)過境遷,Web應(yīng)用程序不同以往,都運(yùn)行于不同的服務(wù)器,如客戶端服務(wù)器、審計(jì)服務(wù)器、Web應(yīng)用服務(wù)器、數(shù)據(jù)庫服務(wù)器和日志服務(wù)器等。因?yàn)樗鼈円话憧梢宰屗械卿浕ヂ?lián)網(wǎng)的人訪問,所以這些Web應(yīng)用程序就成為眾多黑客攻擊的目標(biāo)。OWASP是世界上最知名的Web安全研究組織,OWASP每隔一段時(shí)間會(huì)發(fā)布Web安全漏洞TOP10,XSS漏洞便是TOP10其中的一種安全問題,且一直名列前茅,攻擊者利用網(wǎng)站漏洞,把惡意的腳本寫入到網(wǎng)頁中,當(dāng)用戶瀏覽這些網(wǎng)頁時(shí),就會(huì)執(zhí)行其中的惡意腳本,對(duì)受害用戶可能采用cookie資料竊取、會(huì)話劫持和釣魚欺騙等攻擊手段。

1 何為XSS漏洞

當(dāng)網(wǎng)民在瀏覽網(wǎng)站或在閱讀電子郵件時(shí),通常會(huì)點(diǎn)擊其中的鏈接。攻擊者主要針對(duì)動(dòng)態(tài)鏈接中插入一些惡意代碼,就能夠獲取瀏覽者的信息,當(dāng)接收到包含惡意代碼的請(qǐng)求之后,會(huì)跳轉(zhuǎn)到一個(gè)包含惡意程序的頁面,而這個(gè)頁面表面卻顯示得非常正常,不會(huì)使得網(wǎng)民懷疑。許多論壇、貼吧和電子商務(wù)等網(wǎng)站都允許用戶發(fā)表包含外鏈的帖子,如果存在XSS漏洞,一旦被惡意攻擊者利用,后果不堪設(shè)想。

2 XSS漏洞分類

常見XSS漏洞主要分為三種:反射型XSS漏洞(一種非持久性XSS漏洞)、存儲(chǔ)型XSS漏洞(一種持久性XSS漏洞)、DOM型XSS漏洞。

2.1 反射型

經(jīng)過后端,不經(jīng)過數(shù)據(jù)庫,首先這種類型的XSS漏洞需要攻擊者在有漏洞的正常Web頁面插入惡意代碼,構(gòu)造一個(gè)惡意鏈接,其次要保證惡意代碼能夠執(zhí)行,最后誘使訪客來點(diǎn)擊,一般容易出現(xiàn)在搜索頁面或者查詢頁面。

2.2 存儲(chǔ)型

經(jīng)過后端,也經(jīng)過數(shù)據(jù)庫,代碼是存儲(chǔ)在服務(wù)器中的,首先這種類型的XSS漏洞允許提前在正常頁面插入惡意代碼,攻擊者一般在有數(shù)據(jù)庫交互的地方進(jìn)行嘗試攻擊,在如留言、發(fā)表文章及填寫個(gè)人資料等地方,加入一些惡意代碼,如果未進(jìn)行過濾或過濾不嚴(yán),那么這些代碼將會(huì)儲(chǔ)存到系統(tǒng)數(shù)據(jù)庫服務(wù)器當(dāng)中,當(dāng)有用戶訪問此頁面的時(shí)候就會(huì)觸發(fā)代碼執(zhí)行,容易造成蠕蟲傳播、大量用戶cookie被盜竊。這種攻擊方式要想取得成功,一是需要管理員登錄查看執(zhí)行代碼所在頁面并且代碼成功執(zhí)行,二是需要本地搭建XSS漏洞接收平臺(tái)以便于接收數(shù)據(jù)。

2.3 DOM型

這種類型的XSS是一種特殊類型的XSS,它是一種基于DOM文檔對(duì)象模型的漏洞接口。該漏洞允許程序、腳本通過互聯(lián)網(wǎng)動(dòng)態(tài)地訪問和修改文檔內(nèi)容、結(jié)構(gòu)和樣式等,經(jīng)過處理后能夠顯示為頁面的一部分。在Web系統(tǒng)頁面中有許多頁面的元素,當(dāng)頁面執(zhí)行到達(dá)瀏覽器時(shí),瀏覽器會(huì)為頁面創(chuàng)建一個(gè)頂級(jí)的Document object文檔對(duì)象,接著生成各個(gè)子文檔對(duì)象,每個(gè)頁面元素對(duì)應(yīng)一個(gè)文檔對(duì)象,每個(gè)文檔對(duì)象包含屬性、方法和事件。攻擊者可以通過傳入?yún)?shù)去控制觸發(fā),經(jīng)過JS腳本對(duì)文檔對(duì)象進(jìn)行篡改從而達(dá)到修改頁面元素的目的。也就是說,客戶端的腳本程序可以通過DOM來動(dòng)態(tài)修改頁面內(nèi)容,從客戶端獲取DOM中的數(shù)據(jù)并在本地執(zhí)行。由于這個(gè)特性,就可以利用腳本來實(shí)現(xiàn)DOM型XSS漏洞的攻擊。

3 XSS漏洞防范

XSS漏洞防范主要就是:過濾與轉(zhuǎn)義輸出。

過濾:對(duì)任何用戶的輸入、輸出、二次調(diào)用時(shí)均進(jìn)行校驗(yàn),防止非法字符的執(zhí)行,如引號(hào)、尖括號(hào)、加號(hào)等,從源頭上防止腳本注入。

轉(zhuǎn)義:轉(zhuǎn)義屬于最好的過濾方式,在任何輸出和二次調(diào)用的時(shí)候進(jìn)行加HTML實(shí)體一類的轉(zhuǎn)碼。

在平常Web程序中可以利用以下函數(shù)對(duì)出現(xiàn)xss漏洞的參數(shù)進(jìn)行過濾:

(1)htmlspecialchars()函數(shù),用于轉(zhuǎn)義處理在頁面上顯示的文本。

(2)htmlentities()函數(shù),用于轉(zhuǎn)義處理在頁面上顯示的文本。

(3)strip_tags()函數(shù),過濾掉輸入、輸出里面的惡意標(biāo)簽。

(4)header()函數(shù),使用header("Content-type:application/json")用于控制json數(shù)據(jù)的頭部,不用于瀏覽。

(5)urlencode()函數(shù),用于輸出處理字符型參數(shù)帶入頁面鏈接中。

(6)intval()函數(shù),用于處理數(shù)值型參數(shù)輸出頁面中。

(7)自定義函數(shù),在大多情況下,要使用一些常用的html標(biāo)簽,以美化頁面顯示,如留言、發(fā)表文章、個(gè)人資料中心等情況下,要采用白名單的方法使用合法的標(biāo)簽顯示,過濾掉非法字符。

4 結(jié)束語

本文Web系統(tǒng)的XSS漏洞主要是基于信息安全從業(yè)者日常工作中的總結(jié),全面介紹了何為XSS漏洞、XSS漏洞分類及XSS漏洞防范。XSS漏洞利用簡單、影響巨大。強(qiáng)調(diào)如何進(jìn)行整改,對(duì)網(wǎng)站開發(fā)者可以起到一定的啟示作用,使其對(duì)XSS漏洞有更加清晰的認(rèn)知,了解到XSS漏洞一旦被黑客攻擊帶來危害的嚴(yán)重性,更有助于提高網(wǎng)站安全管理人員的安全意識(shí)。

猜你喜歡
腳本攻擊者漏洞
漏洞
基于貝葉斯博弈的防御資源調(diào)配模型研究
基于selenium的SQL注入漏洞檢測(cè)方法
正面迎接批判
正面迎接批判
自動(dòng)推送與網(wǎng)站匹配的腳本
漏洞在哪兒
舉一反三新編
愚公移山
宁城县| 永清县| 潼南县| 会泽县| 枣阳市| 永吉县| 山阳县| 东方市| 阳山县| 即墨市| 青海省| 邻水| 安图县| 荣昌县| 兴海县| 太湖县| 弥渡县| 哈巴河县| 三门峡市| 富民县| 桃园县| 怀柔区| 南投县| 赤水市| 长顺县| 当阳市| 济南市| 南汇区| 南投县| 卫辉市| 正镶白旗| 苗栗市| 光泽县| 伊金霍洛旗| 南和县| 德化县| 天全县| 孝义市| 阜城县| 财经| 临潭县|