亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于特征集合的XSS漏洞安全研究

        2018-11-24 02:28:38齊曉霞丁黃法王琦進(jìn)
        關(guān)鍵詞:特征

        齊曉霞,丁黃法,王琦進(jìn)

        (安徽新華學(xué)院信息工程學(xué)院, 安徽 合肥 230088)

        Web 2.0時(shí)代網(wǎng)站之間的交互越發(fā)頻繁,而多數(shù)Web程序并不安全,存在多種漏洞。2011年6月,新浪微博在1h內(nèi)有超過(guò)3萬(wàn)用戶遭受跨站腳本XSS(cross site scripting)漏洞攻擊,其原因?yàn)榇a過(guò)濾不嚴(yán)所致[1]。2013年,在OWASP統(tǒng)計(jì)的十大Web安全漏洞中,XSS位居第三[2]。作為Web應(yīng)用程序中最為普遍和流行的安全漏洞,XSS被越來(lái)越多的研究者所關(guān)注,XSS的研究也有著較高的意義與價(jià)值。

        近年來(lái),用于防范Web應(yīng)用程序漏洞的各種安全工具逐漸被開發(fā)。文獻(xiàn)[3]結(jié)合XSS網(wǎng)絡(luò)釣魚攻擊的特點(diǎn),提出了基于正則匹配的XSS網(wǎng)絡(luò)釣魚攻擊檢測(cè)方法,總結(jié)了攻擊所需的正則表達(dá)式集;文獻(xiàn)[4]從Node.js的運(yùn)行機(jī)制出發(fā),對(duì)開發(fā)及部署在Node.js上的Web性能進(jìn)行綜合考慮,設(shè)計(jì)實(shí)現(xiàn)了一個(gè)為Node.js Web應(yīng)用提供XSS和CSRF防御的系統(tǒng);文獻(xiàn)[5]提出采用HTML和Ajax技術(shù)搭建Web應(yīng)用,通過(guò)Web應(yīng)用總結(jié)出CSRF攻擊測(cè)試,并且給出了CSRF攻擊防御手段。本文分析了XSS的漏洞因素、漏洞類型以及漏洞方式,研究了網(wǎng)絡(luò)爬蟲爬取動(dòng)態(tài)網(wǎng)頁(yè)的具體過(guò)程,通過(guò)實(shí)驗(yàn)將網(wǎng)頁(yè)劃分子塊,利用特征集合對(duì)網(wǎng)頁(yè)是否存在XSS漏洞進(jìn)行判斷,以測(cè)試網(wǎng)頁(yè)的安全性。

        1 方法概述

        XSS是由于Web應(yīng)用程序?qū)τ脩糨斎脒^(guò)濾不足而產(chǎn)生的。其主要原因有:1)Web瀏覽器設(shè)計(jì)不安全,瀏覽器可以解析執(zhí)行JavaScript等腳本語(yǔ)言,但不能判斷其是否含有惡意代碼[6];2)Web應(yīng)用程序在執(zhí)行輸入輸出程序時(shí),程序可能會(huì)被植入惡意代碼;3)跨站腳本的觸發(fā)方式比較簡(jiǎn)單,只須向HTML代碼中注入腳本便可利用CSS、Flash等眾多方式執(zhí)行攻擊;4)Web程序開發(fā)過(guò)程中自身安全意識(shí)不足,程序開發(fā)過(guò)程中漏洞較多[7]。

        瀏覽器能夠執(zhí)行HTML/腳本語(yǔ)言,然而當(dāng)HTML/腳本語(yǔ)言被XSS攻擊后,就改變了原本的客戶端執(zhí)行方式,使得用戶信息被劫持和獲取。XSS攻擊方式主要有以下幾種。

        1)利用標(biāo)簽語(yǔ)言。用戶可隨意引入“<>”等標(biāo)記并在其中放入屬性值[8],如改變HTML語(yǔ)言標(biāo)簽的屬性值。

        2)對(duì)標(biāo)簽屬性值轉(zhuǎn)碼。HTML屬性值支持ASCII碼特性,ASCII碼將字符作為數(shù)字來(lái)表示[9]

        3)拆分組合代碼。將一個(gè)代碼拆分為幾個(gè)組合[10]。如將document.write(‘’)替換,為引入一個(gè)變量z。

        2 XSS漏洞檢測(cè)系統(tǒng)

        2.1 系統(tǒng)設(shè)計(jì)

        在分析XSS漏洞因素及攻擊方式的基礎(chǔ)上,本文設(shè)計(jì)了一個(gè)搜索引擎的網(wǎng)絡(luò)爬蟲,進(jìn)行網(wǎng)頁(yè)源碼的信息獲取,檢驗(yàn)XSS漏洞[11]。設(shè)定初始URL,網(wǎng)絡(luò)爬蟲在網(wǎng)頁(yè)中從初始URL開始不斷提取新的URL,提取到的新URL按照FIFO順序放入爬蟲隊(duì)列,新URL按照隊(duì)列順序依次取出,下載對(duì)應(yīng)的頁(yè)面。此后,該過(guò)程不斷重復(fù),直到爬蟲隊(duì)列匯總不含有URL或者達(dá)到頁(yè)面最大深度。傳統(tǒng)爬蟲爬取一個(gè)URL流程如圖1所示。

        圖1 傳統(tǒng)的URL爬取流程

        由于網(wǎng)絡(luò)資源過(guò)多,不能對(duì)每個(gè)網(wǎng)頁(yè)進(jìn)行爬取,另外還須考慮不同網(wǎng)頁(yè)資源的重要程度,因此設(shè)計(jì)了一種對(duì)網(wǎng)頁(yè)鏈接抓取的爬蟲架構(gòu)。在爬蟲過(guò)程中,針對(duì)每一個(gè)URL,都有一個(gè)指向該網(wǎng)頁(yè)的其他網(wǎng)頁(yè)的總數(shù),稱為HitNumber。爬蟲每訪問(wèn)一個(gè)新網(wǎng)頁(yè),都會(huì)逐一檢查該網(wǎng)頁(yè)中的所有超鏈接,如果鏈接里有指向已訪問(wèn)的網(wǎng)頁(yè),那么這個(gè)已訪問(wèn)過(guò)的網(wǎng)頁(yè)的HitNumber值加1,這樣HitNumber值越大,被引用的次數(shù)越多。同時(shí)爬取還須對(duì)主機(jī)做一定限制,如限定域名、限定爬取層數(shù)、限定爬取語(yǔ)言等。

        由于網(wǎng)頁(yè)之間的引用不能只看HitNumber值,而是將引用網(wǎng)頁(yè)的鏈接數(shù)作為權(quán)值。權(quán)值采用Google的“隨機(jī)沖浪”模型作為鏈接權(quán)值的計(jì)算方式,如式(1)。

        (1)

        式中:W代表網(wǎng)頁(yè)的權(quán)值;L代表此網(wǎng)頁(yè)是否存在鏈接;i,j為其中網(wǎng)頁(yè)的序列號(hào);d代表訪問(wèn)網(wǎng)頁(yè)的平均次數(shù)。選擇合適的數(shù)值,遞歸使用式(1),即可得到理想的網(wǎng)頁(yè)鏈接權(quán)值。

        考慮網(wǎng)頁(yè)內(nèi)容的重要性,系統(tǒng)設(shè)計(jì)的模型如下:

        1)隨機(jī)選取初始網(wǎng)頁(yè);

        2)瀏覽該網(wǎng)頁(yè),從該網(wǎng)頁(yè)的超鏈接中隨機(jī)選取一個(gè)頁(yè)面繼續(xù)瀏覽;

        3)沿著超鏈接前進(jìn)一定數(shù)目的網(wǎng)頁(yè)后,充分爬取該網(wǎng)頁(yè)主題,然后隨機(jī)選擇一個(gè)網(wǎng)頁(yè)爬取,重復(fù)第2)、3)步。

        網(wǎng)頁(yè)爬蟲處理流程如圖2所示。

        圖2 網(wǎng)頁(yè)爬蟲處理流程

        2.2 檢測(cè)處理

        爬蟲爬取網(wǎng)頁(yè)后需要對(duì)所爬取到的資源利用正則處理的方法將漏洞特征集合聚集在一起。系統(tǒng)檢測(cè)處理流程如圖3所示。

        圖3 檢測(cè)處理流程

        Step1,頁(yè)面解析模塊。將存取的頁(yè)面劃分小塊,檢測(cè)相應(yīng)模塊中的動(dòng)態(tài)內(nèi)容。由于過(guò)濾不能完全濾掉用戶的輸入內(nèi)容,因此對(duì)內(nèi)容也要進(jìn)行模塊劃分。用戶輸入的動(dòng)態(tài)內(nèi)容主要有HTTP頭、URL、POST數(shù)據(jù)、Cookie值、查詢關(guān)鍵字等。其中,HTML劃分為head、body、front等。一般body里存放動(dòng)態(tài)交互的內(nèi)容;JavaScript內(nèi)容中含有屬性值和動(dòng)態(tài)內(nèi)容,JavaScript事件處理函數(shù)onClick、onLoad等也存有動(dòng)態(tài)內(nèi)容。

        Step2,特征集合模塊。網(wǎng)頁(yè)中的4組特征:關(guān)鍵詞特征、腳本特征、URL特征和請(qǐng)求特征。

        1)關(guān)鍵詞特征:統(tǒng)計(jì)關(guān)鍵詞的使用頻率,若部分關(guān)鍵詞的使用頻率明顯高于其他關(guān)鍵詞,則定義其具有“威脅”等級(jí)。另外研究發(fā)現(xiàn),正常頁(yè)面和受XSS攻擊頁(yè)面中某些方法的頻率也完全不同,如eval()方法在惡意代碼中使用頻率要比正常頁(yè)面高很多。

        2)腳本特征:包含字符串的最大長(zhǎng)度、長(zhǎng)字符串的個(gè)數(shù)、編碼特征的最大比率以及字符串串聯(lián)的個(gè)數(shù)。相比正常代碼,攻擊者通過(guò)修改JavaScript腳本繞過(guò)檢測(cè),編寫的腳本惡意代碼可讀性差、辨識(shí)度低。當(dāng)一個(gè)單獨(dú)字符串長(zhǎng)度過(guò)長(zhǎng)時(shí),網(wǎng)頁(yè)有可能是惡意的。

        3)URL特征:包含URL最大長(zhǎng)度、長(zhǎng)鏈接個(gè)數(shù)以及鏈接中編碼字符的最大百分比等。在反射型XSS中,惡意鏈接會(huì)發(fā)布一個(gè)從定向到指定網(wǎng)頁(yè)的應(yīng)用鏈接,鏈接里含有一些JavaScript代碼,一旦鏈接被請(qǐng)求,攻擊和傳播會(huì)同時(shí)發(fā)生。

        4)請(qǐng)求特征:包含Cookie請(qǐng)求、HTTP請(qǐng)求。CSRF漏洞產(chǎn)生一方面是開發(fā)者編寫的Web應(yīng)用程序存在漏洞導(dǎo)致被惡意利用,另一方面Cookie和HTTP中含有大量有用的信息,Web驗(yàn)證這些信息時(shí)存在漏洞。在判斷是否在一定時(shí)間內(nèi)頻繁請(qǐng)求或者跨站請(qǐng)求時(shí),檢測(cè)Cookie和HTTP信息尤為重要。

        Step3,分析模塊。將特征集合加入黑名單,以此來(lái)檢測(cè)網(wǎng)頁(yè)是否為漏洞網(wǎng)頁(yè)。黑名單過(guò)濾即列出了特征集合中所具有的特征對(duì)象,將其與網(wǎng)頁(yè)進(jìn)行正則匹配。根據(jù)“一切輸入都是有害的”原則,對(duì)用戶輸入的內(nèi)容嚴(yán)格過(guò)濾。執(zhí)行匹配原則如下:

        1)動(dòng)態(tài)內(nèi)容處于頁(yè)面源代碼中,需要對(duì)出現(xiàn)在源碼中的未信任字符轉(zhuǎn)義;

        2)對(duì)出現(xiàn)的URL值設(shè)置預(yù)定檢測(cè)模板;

        3)判斷HTTP請(qǐng)求來(lái)源中是否存在不安全信息。

        3 實(shí)驗(yàn)結(jié)果與分析

        在Java 和Python上測(cè)試數(shù)據(jù),系統(tǒng)資源配置如表1所示。

        表1 測(cè)試系統(tǒng)資源配置表

        3.1 Java程序測(cè)試

        系統(tǒng)設(shè)計(jì)的Java測(cè)試程序如圖4所示。它包含了輸入U(xiǎn)RL框和下拉選擇框,可以選擇GET、POST、COOKIE等;下方是爬行狀態(tài),可以統(tǒng)計(jì)爬行數(shù)目和漏洞數(shù)目;最下方的是輸入框,輸入的是爬行過(guò)程中輸出有XSS漏洞的網(wǎng)頁(yè)。實(shí)驗(yàn)?zāi)M的XSS漏洞代碼如下:

        ' />

        模擬測(cè)試后的結(jié)果(GET方式)如圖5所示。

        圖4 測(cè)試圖界面

        圖5 測(cè)試輸出

        輸入框上的網(wǎng)頁(yè)搜索查詢是按照網(wǎng)頁(yè)爬蟲依次遞進(jìn)查重,先用爬蟲算法查出第1層爬蟲中的鏈接,然后依次向下。如下面所示的超鏈接“http://image.XXX.com/search/index?tn=baiduimage&ct=201326592&lm=-1&cl=2&nc=1&ie=utf-8&word=%E5%AE%A0%E7%89%A9word=%E5%AE%A0%E7%89%A9”其所爬取的下級(jí)網(wǎng)頁(yè)所產(chǎn)生的表格是對(duì)數(shù)據(jù)漏洞數(shù)和危險(xiǎn)程度進(jìn)行的評(píng)級(jí)顯示。通過(guò)掃描可直觀表現(xiàn)網(wǎng)頁(yè)安全,還可以對(duì)下級(jí)網(wǎng)頁(yè)生成報(bào)告,掌握網(wǎng)站的整體安全性。

        3.2 Python程序測(cè)試

        用Python程序測(cè)試對(duì)比操作。程序在控制臺(tái)下運(yùn)行,通過(guò)匹配字典來(lái)判斷是否存在XSS漏洞。測(cè)試采用HTTP請(qǐng)求的GET方式,測(cè)試結(jié)果如圖6所示。

        Python測(cè)試用于暴力注入一個(gè)參數(shù),然后從指定的詞庫(kù)加載多種有效載荷進(jìn)行注入,并且使用指定載荷和掃描檢查這些容易受到XSS漏洞影響的參數(shù)。其中wordlist.txt、wordlist-small.txt、wordlist-medium.txt和wordlist-huge.txt是它的4個(gè)攻擊載荷,包含了基本的XSS檢查和全面的XSS檢查。圖6中選定需要檢測(cè)的網(wǎng)址將參數(shù)XSS暴露給工具,工具開始檢測(cè)參數(shù)(默認(rèn)的wordlist.txt),攻擊載荷掃描并產(chǎn)生結(jié)果,分析存在XSS的漏洞風(fēng)險(xiǎn)。

        圖6 Python測(cè)試

        3.3 測(cè)試結(jié)果

        測(cè)試網(wǎng)頁(yè)采用開源網(wǎng)站源代碼,內(nèi)置10個(gè)XSS漏洞,其中:反射型XSS漏洞3個(gè);基于DOM的XSS漏洞5個(gè);與蠕蟲結(jié)合的XSS漏洞2個(gè)。使用Java程序和Python程序測(cè)試結(jié)果如表2所示。

        表2 XSS測(cè)試結(jié)果

        測(cè)試結(jié)果顯示,Java程序進(jìn)行網(wǎng)頁(yè)特征爬取雖然耗時(shí)較Python程序多,但能檢索出多數(shù)漏洞,Python程序只能檢測(cè)出反射型XSS漏洞。Java程序可對(duì)網(wǎng)站中各個(gè)細(xì)小方面進(jìn)行爬取,使用特征提取可有效地識(shí)別條件,對(duì)于條件匹配的可視作XSS漏洞匹配。由于網(wǎng)絡(luò)上的XSS漏洞不斷更新,以往的判斷方法可能會(huì)誤判一些新出現(xiàn)的XSS漏洞;但本文方法不同于以往的XSS匹配,使用特征集合能有效地判斷網(wǎng)頁(yè)是否異常。

        4 結(jié)束語(yǔ)

        Web2.0時(shí)代XSS漏洞已經(jīng)成為網(wǎng)絡(luò)中不可忽視的攻擊方式。本文主要研究了網(wǎng)頁(yè)爬蟲的爬取方式,提出了用特征集合來(lái)檢測(cè)分析爬取下來(lái)的動(dòng)態(tài)網(wǎng)頁(yè)內(nèi)容,通過(guò)對(duì)系統(tǒng)源代碼掃描檢測(cè)網(wǎng)頁(yè)是否存在漏洞。該方法可以在短時(shí)間內(nèi)檢測(cè)出系統(tǒng)中的XSS漏洞,但是基于特征的檢測(cè)方法可能會(huì)存在識(shí)別錯(cuò)誤,有些網(wǎng)頁(yè)疑似存在XSS漏洞但其實(shí)沒(méi)有。對(duì)于這些問(wèn)題,解決方法是更加具體化特征集合,加強(qiáng)匹配規(guī)則的嚴(yán)格程度。下一步將對(duì)蠕蟲XSS以及一些變種XSS進(jìn)行研究,提出更加具體的特征集合解決方案。

        猜你喜歡
        特征
        抓住特征巧觀察
        離散型隨機(jī)變量的分布列與數(shù)字特征
        具有兩個(gè)P’維非線性不可約特征標(biāo)的非可解群
        月震特征及與地震的對(duì)比
        如何表達(dá)“特征”
        被k(2≤k≤16)整除的正整數(shù)的特征
        不忠誠(chéng)的四個(gè)特征
        詈語(yǔ)的文化蘊(yùn)含與現(xiàn)代特征
        新聞傳播(2018年11期)2018-08-29 08:15:24
        抓住特征巧觀察
        基于特征篩選的模型選擇
        国产高清国内精品福利99久久| 婷婷综合另类小说色区| 亚洲精品久久久久avwww潮水| 国产精品亚洲二区在线观看 | 国产乱人伦AV在线麻豆A| 人妻色中文字幕免费视频| 久久精品亚州中文字幕| 麻豆AV无码久久精品蜜桃久久| 久久伊人久久伊人久久| 日本亚洲国产精品久久| 国内精品久久久久影院一蜜桃| 国产精品久久无码不卡黑寡妇 | 日本一区二区三区高清千人斩| 福利片免费 亚洲| 四季极品偷拍一区二区三区视频| 24小时日本在线视频资源| 久久久精品人妻一区亚美研究所| 亚洲在战AV极品无码| 羞羞色院99精品全部免| 无码va在线观看| 亚洲va在线va天堂va手机| 久久精品国产亚洲av热九九热| 国产天堂av在线一二三四| 国内露脸少妇精品视频| 国产 中文 制服丝袜 另类| 人妻少妇中文字幕av| 久久精品人人做人人爱爱| 台湾佬娱乐中文22vvvv| 校花高潮一区日韩| 在线播放国产自拍av| 激情内射日本一区二区三区| 四虎成人在线| 日本高清在线一区二区三区| 日韩av无码中文字幕| 在线播放无码高潮的视频| 成年视频网站在线观看777| 日本一区二区三区四区啪啪啪| 中文字幕日韩人妻不卡一区| 国产欧美一区二区成人影院| 国产一区二区三区在线影院| 一本色道久久88加勒比—综合|