劉 杰,葛曉玢
(銅陵職業(yè)技術(shù)學院,安徽 銅陵 244061)
網(wǎng)絡(luò)環(huán)境中XSS漏洞攻擊與防御研究
劉 杰,葛曉玢
(銅陵職業(yè)技術(shù)學院,安徽 銅陵 244061)
本文針對Web應(yīng)用程序下的XSS漏洞攻擊進行分析,以XSS攻擊概念為切入點,對其漏洞分類、攻擊形式進行分析,通過詳細的理論論述譚濤濤出有效防御措施。
XSS漏洞;攻擊形式;防御措施
XSS漏洞攻擊,英文名稱為 Cross Site Scripting,即跨站腳本攻擊,是一種站點應(yīng)用程序的安全漏洞攻擊。XSS漏洞攻擊具有明顯自身特點,它能夠通過用戶惡意腳本代碼的上傳,上傳到Web服務(wù)器后進一步攻擊用戶;或它直接將含有惡意腳本的Web站點的URL鏈接發(fā)給用戶,造成用戶訪問該網(wǎng)站時對惡意代碼完成加載,受到XSS漏洞攻擊。XSS漏洞攻擊主要是對用戶賬號、密碼的竊取,或?qū)ζ溆脩羯虡I(yè)信息的竊取等。
結(jié)合 XSS注入位置以及觸發(fā)流程之間存在的差異性,XSS漏洞基本可以劃分為三種類型,分別為:存儲式、反射式以及DOM漏洞[1]。
(1)存儲式類型漏洞。現(xiàn)階段這種類型的漏洞應(yīng)用最廣泛,直接會造成對web服務(wù)器等的安全受到影響,為此,危害性相對更強,這種漏洞產(chǎn)生主要原因包括幾個方面:web程序會允許用戶對惡意攻擊腳本進行上傳,并造成所有訪問用戶受到安全威脅。
(2)反射式類型漏洞。Web程序當中超過75%的漏洞產(chǎn)生在XSS當中,造成這種情況的主要原因包括web程序并不會對用戶提交數(shù)據(jù)內(nèi)容進行過濾,促使web客戶端應(yīng)用的服務(wù)器腳本生成界面能夠?qū)τ脩籼峁?shù)據(jù)時,未經(jīng)驗證以及HTML實體編碼用戶輸入數(shù)據(jù)被包含在界面當中,促使客戶端代碼注入進動態(tài)界面當中。
(3)基于DOM類型漏洞。存儲式類型以及反射式類型的漏洞形成具有一個共同點,也就是攻擊者構(gòu)造的惡意腳本代碼應(yīng)當發(fā)送到web服務(wù)器當中,在被攻擊者請求被攻擊界面的同時,通過web服務(wù)器就對惡意代碼嵌入到相應(yīng)的HTML代碼當中,并在瀏覽器當中執(zhí)行?;贒OM漏洞不具備的主要特征,這個漏洞多集中在界面客戶端腳本當中,攻擊者在用戶請求URL當中會制造惡意代碼,病造成用戶收到DOM的跨站腳本攻擊。
3.1 CSRF攻擊類型分析
CSRF攻擊類型會利用偽裝的方式獲得用戶的新人,并請求利用受信任的網(wǎng)站發(fā)起攻擊,這種攻擊類型主要在BLOG以及SNS等大型社區(qū)類型網(wǎng)站腳本蠕蟲頻繁使用。借助跨站腳本蠕蟲的方式反復(fù)觸發(fā)并快速傳播,最終可能造成web程序崩潰。例如在2011你啊你新浪微博發(fā)生的一次CSRF攻擊當中,就有超過了33000個用戶收到波及[2]。
3.2 竊取Cookie會話類型分析
通過大部分類型的web應(yīng)用程序運用Cookie標示用戶登陸及身份狀態(tài),為此,借助竊取Cookie可以獲得用戶的個人隱私信息內(nèi)容。如當攻擊者尋找到某個留言信息網(wǎng)站當中存在存儲類型的漏洞,攻擊者就可以注冊這個網(wǎng)站當中的用戶,登陸到網(wǎng)站當中,提交惡意跨站腳本,通過這種方式獲取其他用戶的Cookie,此時,在另一端實施操作的用戶就會接收到這種腳本文件,攻擊者就能夠通過接受腳本的行為獲得用戶隱私信息,并利用被獲取信息的用戶身份完成相關(guān)網(wǎng)站操作。
3.3 客戶端代理攻擊類型分析
客戶端代理攻擊類型攻擊行為的基本過程就是攻擊者借助 XSS促使被攻擊對象進入到特定的界面當中,進而促使訪問響應(yīng),這個過程中就會類似代理服務(wù)器機制,也就是客戶端代理攻擊。這種類型的攻擊方式比較類似CSRF攻擊,但是因為主要應(yīng)用的是用戶合法身份,為此,攻擊行為的隱蔽性也相對更強。
4.1 服務(wù)器端方面分析
(1)對用戶輸入信息加以過濾。開發(fā)人員需要能夠始終保持對全部信息內(nèi)容的不信任態(tài)度,針對用戶輸入全部信息內(nèi)容進行過濾,在執(zhí)行操作的過程中需要考慮例如“javascript”,等特殊字符內(nèi)容,同事也需要對字符大小寫與空格等進行轉(zhuǎn)義保存,病對輸出等信息內(nèi)容等進行還原。
(2)限制用戶輸入本文類型等內(nèi)容。相關(guān)技術(shù)開發(fā)人員能夠?qū)?shù)據(jù)庫端或者是表單中文本長度等加以限制,并通過這種方式達到安全防范。
(3)檢測傳輸圖片文本。相關(guān)技術(shù)開發(fā)人員也應(yīng)當對用戶傳輸?shù)膱D片文本等進行檢測,驗證圖片等的格式是否存在偽格式,圖片服務(wù)器盡量不開啟程序。
(4)防御CSRF分析。在通過web程序CSRF進行防御階段,能夠借助HTTPReferer等對URL的來源加以分析,或者也可以采用驗證碼的方式完成對用戶的身份檢測。
(5)應(yīng)用入侵檢測系統(tǒng)。借助服務(wù)器端安裝的檢測系統(tǒng)可以完成對跨站腳本攻擊的防護,在使用跨站腳本檢測系統(tǒng)的過程中可以應(yīng)用三個策略完成對攻擊行為的檢測,同事也可以使用四個策略實現(xiàn)。
4.2 客戶端防御主要應(yīng)用措施
(1)采用更新版本瀏覽器。采用更新版本瀏覽器可以有效防御攻擊,例如可以采用IE8瀏覽器,這樣可以引入跨站腳本過濾器,并能夠更好的實現(xiàn)對反射式攻擊的防護。
(2)謹慎選擇外部鏈接。謹慎選擇外部鏈接,對可疑鏈接或者是外來電子郵件,通常不應(yīng)當鏈接,或者是直接通過這個網(wǎng)站進入,通過這種方式也能夠較好防護[3]。
(3)使用殺毒軟件。用戶需要通過安裝可靠的殺毒軟件或者其他類型的安全工具進行防護,同時,也應(yīng)當對病毒庫進行革新。通過借助安全工具可以更好的實現(xiàn)對網(wǎng)頁木馬等內(nèi)容的攻擊防護,此外,多網(wǎng)站需要設(shè)置不同的密碼,對密碼進行定期的更換,避免跨站腳本對密碼進行竊取。
綜上所述,在計算機技術(shù)以及Web應(yīng)用程序不斷普及發(fā)展與應(yīng)用的過程中,XSS漏洞類型以及攻擊形式不斷呈現(xiàn)多樣化特征,給計算機用戶安全帶來嚴重威脅。針對XSS漏洞攻擊的有效防御要加強程序開發(fā)整體質(zhì)量,這就要求程序開發(fā)人員技術(shù)不斷創(chuàng)新,質(zhì)量不斷提升,通過多角度防御措施的應(yīng)用提高程序安全行,獨具跨站腳本攻擊發(fā)生。另外,為有效降低跨站腳本攻擊安全事件發(fā)生率,計算機用戶應(yīng)不斷提升安全防范意識,在網(wǎng)站登陸及瀏覽過程中注重防范策略的應(yīng)用,杜絕受到XSS漏洞攻擊,保障自身數(shù)據(jù)信息安全[4]。
[1]吳子敬,張憲忠,管磊,胡光俊.基于反過濾規(guī)則集和自動爬蟲的 XSS漏洞深度挖掘技術(shù)[J].北京理工大學學報,2012,04:395-401.
[2]張大衛(wèi),解永剛,楊亞彪,何紅玲.XSS攻擊分析與防御機制研究[J].數(shù)字技術(shù)與應(yīng)用,2012,12:40+42.
[3]劉鑫,孫名松,唐亮.基于代理的XSS漏洞檢測與收集系統(tǒng)的實現(xiàn)[J].哈爾濱理工大學學報,2010,02:43-46.
[4]劉為.基于模糊測試的XSS漏洞檢測系統(tǒng)研究與實現(xiàn)[D].湖南大學,2010.
Research on XSS vulnerability attack and defense in Network
LIU Jie
(Tongling Vocational and Technical College,Tongling Anhui 244061)
This paper for web applications of XSS exploits of analysis,to XSS attack concept as the starting point,on the vulnerability classification and the form of attack are analyzed.
XSS vulnerability; Attack form; Defense measures
:A
10.3969/j.issn.1672-7304.2016.01.062
1672–7304(2016)01–0133–02
安徽省質(zhì)量工程項目(項目編號:2013tszy061)。
(責任編輯:張時瑋)
劉杰(1983-),男,安徽銅陵人,講師,研究方向:網(wǎng)絡(luò)和系統(tǒng)安全。