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