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

        ?

        基于網(wǎng)絡爬蟲與頁面代碼行為的XSS漏洞動態(tài)檢測方法

        2016-11-08 06:45:48柳毅洪俊斌
        電信科學 2016年3期
        關(guān)鍵詞:檢測工具爬蟲攻擊者

        柳毅,洪俊斌

        (廣東工業(yè)大學計算機學院,廣東 廣州 510006)

        基于網(wǎng)絡爬蟲與頁面代碼行為的XSS漏洞動態(tài)檢測方法

        柳毅,洪俊斌

        (廣東工業(yè)大學計算機學院,廣東 廣州 510006)

        XSS漏洞是攻擊Web應用程序、獲取用戶隱私數(shù)據(jù)的常見漏洞。傳統(tǒng)的XSS漏洞檢測工具并沒有對AJAX Web應用程序進行針對性的檢測,在檢測精度方面與實際情況存在巨大差距。針對這種情況,對AJAX技術(shù)下XSS漏洞的特點進行了分析,提出了一種基于網(wǎng)絡爬蟲與頁面代碼行為的動態(tài)檢測方法。實驗結(jié)果表明,提出的方法在節(jié)省人力、時間成本與漏洞檢測方面有較好的表現(xiàn)。

        XSS漏洞;網(wǎng)絡爬蟲;漏洞檢測;AJAX Web應用

        1 引言

        隨著Web 2.0時代的到來,Web程序告別了沉重的請求—返回的模式,采用了更輕便的局部刷新模式,提高了用戶體驗。其中,AJAX(asynchronous JavaScript and XML,異步 JavaScript和 XML)[1]技術(shù)在 Web 2.0 中占據(jù)了主導地位。然而AJAX技術(shù)將一部分邏輯處理從服務器端轉(zhuǎn)移到客戶端,暴露了更多的接口[2],增加了許多針對Web應用程序的安全威脅,其中嚴重程度最高的是跨站腳本(cross-site script,又稱 XSS)攻擊[3]。從國際開源安全組織[4](Open Web Application Security Project,OWASP)公布的 10 種最嚴重的Web應用程序安全漏洞排行榜可知,跨站腳本攻擊一直處于前三的位置。Web 2.0時代后,跨站腳本攻擊與AJAX技術(shù)相結(jié)合,出現(xiàn)了新的特點,可在用戶毫不知情的情況下進行攻擊[5],威脅性更大。就目前而言,采取較多的行為都是被動的防范措施,比如防火墻[6]等。這樣做明顯忽略了應用程序級別的安全問題,使之在高層面缺乏有效的防范方式。對于Web應用程序級別的安全,雖然有很多學者進行了研究,但大多數(shù)還停留在Web 1.0時代,并沒有對異步傳輸進行安全性檢測。參考文獻[7,8]雖然對AJAX有所提及,但并沒有進行針對性的研究。所以針對大量使用AJAX技術(shù)的Web應用程序,設(shè)計相關(guān)的XSS漏洞檢測工具是十分必要的。

        本文提出了一種基于網(wǎng)絡爬蟲與頁面代碼行為的動態(tài)檢測方法對AJAX Web應用程序進行XSS漏洞檢測。針對用戶提交的URL(uniform resource locator,統(tǒng)一資源定位符)[9]進行爬蟲,提取數(shù)據(jù)輸入點,完成錯誤數(shù)據(jù)注入,再通過模擬攻擊對服務器進行請求,對返回的頁面代碼行為進行跟蹤與分析,得出XSS漏洞威脅。實驗證明該方法效率較高,漏報率較低。

        2 XSS漏洞特征及檢測工具分析

        2.1 XSS漏洞特征分析

        現(xiàn)有的XSS漏洞類型可分為3種基本類型:反射型XSS 攻擊(reflected/non-persistent XSS)[10]、存儲型 XSS 攻擊(stored/persistent XSS)[11]和 基 于 DOM (document object model)的 XSS 攻擊(DOM-based XSS)[12]。反射型 XSS 攻擊方式是通過服務器的錯誤信息或檢索結(jié)果等手段將注入代碼“反射”回來。攻擊者構(gòu)造包含注入代碼的惡意鏈接,并通過某種方式將此惡意鏈接發(fā)送給受害者,受害者點擊訪問后,注入腳本便會將服務器返回的數(shù)據(jù)傳輸?shù)焦粽叩姆掌魃希?3];存儲型XSS與反射型XSS最大的不同在于,惡意腳本將被永久性地存放在目標服務器的數(shù)據(jù)庫中,瀏覽者在訪問時惡意腳本便會執(zhí)行,使瀏覽者受到攻擊[14];在基于DOM的XSS這類攻擊方式中,攻擊者是通過以下過程執(zhí)行JavaScript的:攻擊者設(shè)計有注入JavaScript代碼的惡意 URL[15],并發(fā)送給用戶,用戶進行點擊訪問,瀏覽器會將返回的HTML(hypertext markup language,超文本標記語言)代碼解析成DOM樹結(jié)構(gòu)[16],在這過程中,注入代碼便會被解析出來,從而導致基于DOM的XSS攻擊出現(xiàn),攻擊者就有可能獲取受害者電腦的重要權(quán)限[17]。

        2.2 XSS漏洞的檢測方法及工具

        高效率的爬蟲算法能夠在短時間內(nèi)找到數(shù)據(jù)輸入點,并且根據(jù)數(shù)據(jù)輸入點的類型,從數(shù)據(jù)庫中獲取錯誤注入數(shù)據(jù),組 成 有 攻 擊 性的 get/post[18]請 求 注 入 系 統(tǒng) 中 ,如 果 產(chǎn) 生與從數(shù)據(jù)庫中獲取的注入數(shù)據(jù)相對應的預期攻擊行為,就可以斷定Web應用程序中存在XSS漏洞。在錯誤數(shù)據(jù)進行注入的同時,要注意對程序中的合法過濾器進行規(guī)避[19]。目前 有 很 多 XSS 漏 洞 掃 描 的 工 具 ,比 如 Paros[20]和X5S[21],它們并沒有對 AJAX技術(shù)下產(chǎn)生的 XSS漏洞進行深入分析。針對這種情況,提出了一種基于網(wǎng)絡爬蟲與頁面代碼行為的動態(tài)檢測方法來實現(xiàn)對AJAX Web應用程序的XSS漏洞進行檢測。

        3 XSS漏洞定位檢測方法

        3.1 抓取數(shù)據(jù)輸入點

        抓取數(shù)據(jù)輸入點的步驟如下:

        (1)爬蟲對Web頁面的HTML代碼進行掃描得到靜態(tài)URL;

        (2)對頁面代碼中的 JavaScript腳本和JavaScript所添加的事件進行提??;

        (3)將提取到的 JavaScript代碼傳遞給JavaScript引擎編譯執(zhí)行,獲取動態(tài)URL;

        (4)存儲獲取到的 URL,采用散列表存儲方式高效率地將重復URL去除。

        散列表中使用了雙重散列算法來解決沖突,其探測地址的方法如下:

        其中,散列函數(shù)h1和h2的計算式如下:

        二度散列的 h(URL,i)的值有可能會大于hashcapacity,所以對 h(URL,i)進行模運算,最終計算的散列地址為 h(URL,i)%hashcapacity。

        爬蟲系統(tǒng)分為下載與分析兩個模塊,使用多線程同時運行兩個模塊以提高爬蟲效率,如果硬件條件高,可分別在各個模塊中再次使用多線程進行下載與分析。圖1是爬蟲系統(tǒng)運行的流程。

        圖1 爬蟲系統(tǒng)運行流程

        3.2 錯誤數(shù)據(jù)注入

        錯誤數(shù)據(jù)注入的步驟如下:

        (1)從爬蟲系統(tǒng)的散列表中,依次取出鏈接地址進行請求,并分析得到頁面代碼;

        (2)提取代碼中所有的表單元素;

        (3)根據(jù)表單屬性(get/post)、頁面代碼和輸入?yún)^(qū)域的結(jié)構(gòu)對象計算出散列值;

        (4)根據(jù)散列值關(guān)聯(lián)數(shù)據(jù)庫中自定義注入代碼進行拼接,對服務器發(fā)出請求。

        圖2是錯誤數(shù)據(jù)注入的流程。

        圖2 錯誤數(shù)據(jù)注入流程

        攻擊字符串是檢測漏洞的關(guān)鍵部分,用數(shù)據(jù)庫中的注入代碼來構(gòu)造有威脅的URL、表單或AJAX XMLHttpRequest對象,向服務器發(fā)送請求。結(jié)合JavaScript的執(zhí)行效果和語法,針對表單、URL和XMLHttpRequest對象類型的攻擊漏洞,表1列舉了部分攻擊字符串。

        表1 攻擊字符串示例(部分)

        3.3 結(jié)果分析

        3.3.1基于AJAX頁面代碼行為的XSS漏洞檢測算法

        (1)增量地構(gòu)建AJAX返回的DOM樹狀態(tài);

        (2)記錄返回數(shù)據(jù)后的頁面代碼行為;

        (3)檢測返回的代碼行為是否出現(xiàn)相對應的惡意行為,判斷是否存在XSS漏洞。

        偽代碼設(shè)計如下:

        3.3.2 基于JavaScript的XMLHttpRequest檢測

        在JavaScript代碼中,最關(guān)鍵的是XHR(XMLHttpRequest,可擴展超文本傳輸請求)對象。該對象可以異步地向服務器發(fā)出請求,獲取新數(shù)據(jù),然后通過DOM將數(shù)據(jù)插入頁面中進行局部刷新。這給攻擊者留下了一個很大的漏洞,攻擊者可使用XHR對象,注入錯誤代碼,因此必須對AJAX XHR的漏洞檢測進行特殊處理。

        (1)收集JavaScript的文件信息,比如大小、文件名等,構(gòu)建JavaScript文件特征庫。

        (2)檢測時將頁面獲取的JavaScript文件與文件特征庫中的文件進行匹配判斷是否存在漏洞。

        偽代碼設(shè)計如下:

        4 實驗結(jié)果及分析

        為驗證本文提出方法的可行性,采用Visual Studio 2015對本文提出的方法進行C#編程實現(xiàn)XSS Finder工具,硬件方面主要采用主流的IBM-PC兼容機,數(shù)據(jù)庫為SQLServer 2008 R2。下面從時間復雜度和檢測精度方面來評估XSS Finder工具。

        4.1 時間復雜度

        為對比XSS Finder在時間復雜度上的優(yōu)勢,選用了常用的XSS漏洞檢測工具Paros和X5S進行對比。采取方法是對每個Web應用程序獨立掃描20次,算出平均掃描時間。圖3是3個軟件進行掃描的時間對比。

        圖3 爬蟲時間對比

        由圖3可知,XSS Finder工具所消耗的時間是較低的。

        4.2 檢測精度

        對比XSS Finder與兩個軟件的檢測精度,采取的方法是選擇兩個網(wǎng)站,一個是某學校的官方網(wǎng)站,另一個是開源系統(tǒng),名字是PetStore,此系統(tǒng)是Java編寫的基于AJAX的Web應用程序,3個軟件分別對網(wǎng)站進行掃描與檢測,并對比最后的結(jié)果,具體見表2。

        表2 工具查詢結(jié)果對比

        從實驗結(jié)果來看,XSS Finder檢測到的漏洞數(shù)和系統(tǒng)存在的漏洞數(shù)量是一致的,檢測到的數(shù)據(jù)入口點也符合實際情況,表明XSS Finder檢測漏洞的準確性更好。

        5 結(jié)束語

        通過對AJAX技術(shù)下XSS漏洞的出現(xiàn)原因及檢測技術(shù)的研究,本文提出一種基于網(wǎng)絡爬蟲與頁面代碼行為的XSS漏洞檢測方法,與兩種常用的XSS漏洞檢測工具比較,在時間復雜度方面,對Web應用程序獨立掃描20次的情況下,掃描時間更短,高效地解決了URL重復性的問題;在檢測精度方面,提出了對頁面代碼行為和XHR對象進行檢測的方法,具有更高的漏洞檢測準確性。

        [1]DAHSE J.A vulnerabilityscannerfordifferentkindsof vulnerabilities [DB/OL]. [2015-04-09].http://rips-scanner.sourceforge.net,accessed.

        [2]AN H Y,SONG Y,YU T,et al.A new architecture of AJAX Web application security crawler with finite-state machine [J].IEEE Computer Society,2014(27):112-117.

        [3]OWASP.Cross site scripting prevention cheat sheet[EB/OL].(2013-12-26)[2014-03-26]. https://www.owasp.org/index.php/XSS_(Cross_Site_Scripting)_Prevention_Cheat_Sheet.

        [4]OWASP.Top ten project [EB/OL]. (2013-12-03)[2013-12-10].https://www.Cwasp.org/in dex.php/Category:OWASP-Top-Ten-Project.

        [5]LI Z,XU X,LIAO L J,et al.Using templates combination to generate testing vectors dynamically indetecting Web applications vulnerabilities[J].Application Research of Computers,2015,32(10):3004-3009.

        [6]CHEN J F,WANG Y D,ZHANG Y Q,et al.Automatic generation of attack vectors for stored-XSS [J].Journal of Graduate University of Chinese Academy of Sciences,2012,29(6):815-820.

        [7]WANG X L,ZHANG Y Q.A behavior-based client defense scheme against XSS [J].Journal of Graduate University of Chinese Academy of Sciences,2011,25(5):668-675.

        [8]CHEN J Q,ZHANG Y Q.Design and realization of Web cross-site scripting vulnerability detection tool [J].Computer Engineering,2010,36(6):152-158.

        [9]JIANG H,XU Z Y,WANG X.XSS attack defense method based on behavior [J].Computer Engineering and Design,2014,35(6):1911-1925.

        [10]GUO X B,JIN S Y,ZHANG Y X.XSS vulnerability detection using optimized attack vector repertory [J].IEEE Computer Society,2015(50):29-36.

        [11]CUI B J,LONG B L,HOU T T.Reverse analysis method of static XSS defect detection technique based on database query language [C]//The Nineth International Conference on P2P,Parallel, Grid, Cloud and InternetComputing (3PGCIC),November 8-10,2014,Guangzhou,Guangdong,China.New Jersey:IEEE Press,2014:487-491.

        [12]LIU W X,YU S Z.Research for ACK attacks in network coding[J].Journal of Chinese Computer Systems,2012,32(7):1354-1359.

        [13]Rsnake. XSS(cross site scripting) cheat sheet [EB/OL].[2013-11-15].http://ha.Ckers.org /xss.html.

        [14]WU H Q.White hatter talks about web security [M].Beijing:Publishing House of Electronics Industry,2013:152-178.

        [15]GUPTA M K,GOVIL M C,SINGH G.Predicting cross-site scripting(XSS)security vulnerabilities in Web applications[C]//2015 12th International Joint Conference on Computer Science and Software Engineering (JCSSE),July 22-24,2015,Songkhla,Thailand.New Jersey:IEEE Press,2015:162-167.

        [16]LI Y W,LIU Z X,DING S J.Technique for discovering stored XSS vulnerability based on tracing risky data [J].Computer Science,2014,41(11A):241-244.

        [17]QIU Y H.The analysis and defense of XSS attack [M].Beijing:Posts&Telecom Press,2013.

        [18]LIZ J,ZHANG JX,LIAO X K.Surveyofsoftware vulnerability detection techniques [J].Chinese Journalof Computers,2015,38(4):717-732.

        [19]HALFOND W G J,ORSO A,MANOLIOS P.WASP:protecting web applications using positive tainting and syntax-aware evaluation[J].IEEE Transactions on Software Engineering,2008,34(1):65-81.

        [20]SAYED B,TRAORE I.Protection against Web 2.0 client-side web attacksusinginformation flow control [J].The 28th International Conference on Advanced Information Networking and Applications Workshops (WAINA),May13-16,2014,Victoria,BC,USA.New Jersey:IEEE Press,2014:261-268.

        [21]HELEN K,SARANDIS M,CHRISTOS D.An advanced web attack detection and prevention tool[J].Information Management&Computer Security,2011,19(5):280-299.

        A dynamic detection method based on Web crawler and page code behavior for XSS vulnerability

        LIU Yi,HONG Junbin
        Faculty of Computer,Guangdong University of Technology,Guangzhou 510006,China

        XSS vulnerability is a common vulnerability of attacking the Web application and getting the user’s privacy data.Traditional XSS vulnerability detection’s softwares aren’t specially detecting for AJAX Web application.There is a huge disparity in the inspection accuracy.According to this situation,the XSS vulnerability characteristics of AJAX Web applications were described in detail,and a dynamic detection method based on Web crawler and page code behavior was proposed.Experimental results show that the proposed method has good performance in labor-saving,time saving and vulnerability detection effect.

        XSS vulnerabilitiy,Web crawler,vulnerabilitiy detecting,AJAX Web application

        s:The National Natural Science Foundation of China(No.61572144),The Natural Science Foundation of Guangdong(No.2014A030313517), The Science and Technology Planning Project of Guangdong Province (No.2014A010103029, No.2013B040500009),The Science and Technology Planning Project of Guangzhou(No.201508010026,No.2014J4100201)

        TP393.08

        A

        10.11959/j.issn.1000-0801.2016068

        2015-11-09;

        2016-01-26

        國家自然科學基金資助項目(No.61572144);廣東省自然科學基金資助項目(No.2014A030313517);廣東省科技計劃基金資助項目(No.2014A010103029,No.2013B040500009);廣州市科技計劃基金資助項目(No.201508010026,No.2014J4100201)

        柳毅(1976-),男,博士,廣東工業(yè)大學計算機學院副教授,主要研究方向為網(wǎng)絡與信息安全。

        洪俊斌(1990-),男,廣東工業(yè)大學計算機學院碩士生,主要研究方向為網(wǎng)絡與信息安全。

        猜你喜歡
        檢測工具爬蟲攻擊者
        利用網(wǎng)絡爬蟲技術(shù)驗證房地產(chǎn)灰犀牛之說
        基于微分博弈的追逃問題最優(yōu)策略設(shè)計
        自動化學報(2021年8期)2021-09-28 07:20:18
        基于Python的網(wǎng)絡爬蟲和反爬蟲技術(shù)研究
        正面迎接批判
        愛你(2018年16期)2018-06-21 03:28:44
        利用爬蟲技術(shù)的Geo-Gnutel la VANET流量采集
        電子測試(2018年1期)2018-04-18 11:53:04
        高溫封隔器膠筒試驗檢測工具的研究
        化工管理(2017年16期)2017-06-23 13:49:36
        大數(shù)據(jù)環(huán)境下基于python的網(wǎng)絡爬蟲技術(shù)
        電子制作(2017年9期)2017-04-17 03:00:46
        德國Rosen公司發(fā)布新型漏磁檢測工具
        有限次重復博弈下的網(wǎng)絡攻擊行為研究
        中國移動設(shè)計院自主研發(fā)安全檢測工具
        国产精品无码一本二本三本色| 少妇又紧又色又爽又刺| 永久免费观看的黄网站在线| 无码a级毛片免费视频内谢5j| 亚洲av综合日韩| 午夜无码一区二区三区在线| 亚洲综合精品一区二区三区| 青青草骚视频在线观看| 少妇人妻大乳在线视频不卡| 香蕉视频一级| 按摩女内射少妇一二三区| 亚洲国产av一区二区四季 | 好吊妞人成免费视频观看| 国产毛片一区二区日韩| 亚洲va视频一区二区三区| 一本无码av中文出轨人妻| 国产午夜福利精品| 三级黄片一区二区三区| 99久久99久久精品国产片| 亚洲精品久久久久久久久av无码| 国产成人av在线影院无毒| 青青草视频视频在线观看| 精品人妻大屁股白浆无码| 又色又污又爽又黄的网站| 无码熟妇人妻AV不卡| 亚洲第一页视频在线观看| 国产精品女人呻吟在线观看| 国产成人综合久久精品推| 久久精品国产亚洲av高清蜜臀 | 欧美丰满熟妇aaaaa片| 亚洲国产综合专区在线电影| 青青草免费手机直播视频| 巨大巨粗巨长 黑人长吊| 国产精品一区二区在线观看99| 久久婷婷夜色精品国产| 日日碰狠狠添天天爽超碰97久久| 日本又黄又爽gif动态图| 久久久久久无码AV成人影院| 国产免费观看久久黄av麻豆| 亚洲av片一区二区三区| 福利视频一二区|