999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

XSS攻擊機制及防御技術淺談

2016-11-30 15:28:09葛強李俊胡永權
計算機時代 2016年10期

葛強 李俊 胡永權

摘 要: 跨站腳本攻擊(XSS)是客戶端Web安全的主要威脅。因跨站腳本攻擊的多樣性以及Web安全漏洞的隱蔽性,使得該類型的攻擊很難徹底防御。介紹了跨站腳本攻擊的基本概念,針對不同環境發生的跨站腳本攻擊機制進行了分析,探討了不同環境下如何防御跨站腳本攻擊的具體技術。

關鍵詞: Web安全; XSS; 跨站腳本攻擊; Web漏洞; XSS防御

中圖分類號:TP393 文獻標志碼:A 文章編號:1006-8228(2016)10-11-03

Discussion on XSS attack mechanism and defense technology

Ge Qiang1,2, Li Jun3, Hu Yongquan1

(1. College of Computer and Information Engineering, Henan University, Kaifeng, Henan 475004, China;

2. College of Environment and Planning, Henan University; 3. Information Office)

Abstract: Cross site scripting (XSS) attack is a major threat to the security of Web client. Because of the diversity of XSS attacks and Web security vulnerabilities hidden, this type of attack is very difficult to completely defense. This paper introduces the basic concept of XSS attacks, analyzes the XSS attack mechanisms of different environment, and discusses the specific technology to defense the XSS attacks of different environment.

Key words: Web security; XSS; cross site scripting attack; Web vulnerability; XSS defense

0 引言

在當今的Web2.0時代,Web上的大多數站點實際上是應用程序,它們功能強大,提供各種各樣的服務。網站向用戶展示的內容是以動態形式生成的,并且能夠滿足用戶的個性化需求[1]。但這些個性化的應用也給站點帶來一定的安全隱患,例如,跨站腳本攻擊等,同時,AJAX技術的流行使得XSS攻擊威脅變得更加嚴重。XSS攻擊在OWASP組織公布的OWASP TOP 2013中位列第三[2-3],可見XSS攻擊所造成的威脅之大。

1 XSS原理

XSS攻擊是一種間接攻擊,攻擊者通過Web服務器來攻擊其他用戶。攻擊者向服務器提交一段惡意代碼,而在服務器端并沒有對用戶的輸入做足夠的安全處理,就將用戶輸入寫入數據庫。當其他用戶向服務器再次請求含有惡意代碼的網頁時,服務器就會把包含惡意代碼的網頁返回,瀏覽器收到返回信息后進行相應的渲染、解碼工作,此時惡意代碼被觸發執行,用戶的機密信息將被竊取,甚至可以控制用戶的系統[4]。XSS攻擊原理如圖1所示。

先舉一個簡單的例子來展示跨站腳本攻擊的效果,主要代碼如下:

請輸入你的姓名:

Result.jsp代碼如下:

你好:<%=request.getAttribute("name")%>

如果用戶輸入惡意內容,并且沒有對用戶的輸入做安全處理,因此在result頁面就可能會出現安全威脅。如用戶輸入“”,該字符串沒有經過安全檢查就寫入數據庫,當該name值被再次取出時,這個字符串會被瀏覽器解析執行,瀏覽器將彈出“Hello”。

2 瀏覽器的解碼

防御XSS攻擊的主要方式是對用戶的輸入進行安全檢查并進行適當的編碼。對用戶在不同地方的輸入應當進行不同的編碼。只有對用戶的輸入進行完整的安全檢查和正確的編碼才能有效防御XSS攻擊。

對于下面這段代碼,瀏覽器會進行三種解碼。HTML解碼、JS解碼、URL解碼。

This is a test

Link

首先,對于段落“This is a test”瀏覽器會進行HTML解碼。其次,對于“Hello”瀏覽器會首先進行HTML解碼,然后進行JS解碼。最后對于連接“www.a.com”瀏覽器會進行URL解碼[5]。因此,如果上述三個位置都是用戶可編輯的,則開發人員就需根據瀏覽器對以上幾處位置所進行的解碼順序來進行對應的編碼操作。

3 XSS解決方案

3.1 ESAPI解決方案

防御XSS攻擊的有效辦法就是對用戶輸入進行安全檢查,然后采取相應措施,主要的措施有替換、移除、編碼[6-7]。下面主要討論采用編碼方法防御XSS攻擊。

ESAPI是一個免費、開源的Web應用程序安全控制組件,可以幫助編程人員開發低風險應用程序。為了防御XSS攻擊,在實際情況中,應根據網頁顯示用戶輸入內容位置的不同,而采用不同的編碼方式。用戶的輸入可能在網頁的多個地方進行輸出,比如HTML標簽中、HTML屬性中,URL中,事件中等等。ESAPI提供了對以上輸出場景的編碼方案。

⑴ 對于在HTML標簽中輸出和在Html屬性中輸出時均可采用HtmlEncode編碼方案。例如:

String safeinput=ESAPI.encoder().encodeForHTML

(request.getParameter(“userinput”));

⑵ 在事件中輸出時可采用JavascriptEncode編碼方案。

String safeinput=ESAPI.encoder().encodeForJavaScript

(request.getParameter(“userinput”));

⑶ 在地址欄中輸出時可采用URLEncode編碼方案。例如:

Link

經過URLEncode編碼后將變為:

28123%29%22”>

⑷ 處理富文本

論壇中的帖子是最常見的“富文本”。它允許用戶插入圖片、視頻、音頻等。在處理富文本時的思路還是進行“輸入檢查”。在處理富文本時,“事件”應該被嚴格禁止,而且一些危險的標簽也應該被過濾掉,例如

屬性“name”的值是用戶的輸入內容,對此,瀏覽器會對該值進行兩種解碼,首先是進行HTML解碼,然后進行JS解碼。因此對于此位置上的用戶輸入應當在服務器端先進行HTML編碼,其次進行JS編碼[8]。

String safeinput=ESAPI.encoder().encoderForJavaScript

(request.getParameter("name"));

safeinput=ESAPI.encoder().encoderForHTML(safeinput);

如果對“name”的值只進行HTML編碼而不進行JS編碼結果會怎樣?首先測試最簡單的字符串,將“name”的值賦值為“”,瀏覽器彈出“”。對于期待的效果彈出字符串“XSS”似乎并沒有實現,這樣看來只使用HTML編碼似乎起到了作用,但適當改變“name”的值就會是另一種結果。如果改變“name”的值為“正常彈出);alert(‘XSS攻擊”,則會出現“正常彈出”,然后出現“XSS攻擊”。不難看出,當改變“name”的值后,alert的閉合情況發生了改變。“name”值中的“);”首先閉合了第一個alert,即“alert(‘正常彈出)”,然后是“alert(‘XSS攻擊)”。由此看來,在此只進行HTML編碼是不行的。如果在此同時進行了HTML編碼與JS編碼,效果如圖2所示。

3.2 其他防御XSS攻擊的辦法

除了第2小節的方法外,還需要以下幾種手段進行輔助。

⑴ 防止Cookie劫持

針對此攻擊有一個比較不錯的防御辦法是使用HttpOnly屬性。通過為Cookie增加HttpOnly屬性,即可大大降低Cookie被劫持的風險。如果Cookie帶有HttpOnly屬性,則瀏覽器會禁止JavaScript訪問該Cookie。添加方法是在web.xml中配置為true。

⑵ 輸入檢查

對于用戶的輸入都必須進行輸入檢查。主要檢查在用戶的輸入中,是否包含了一些危險字符如<、、”和一些危險標簽如

公司地址: 北京市西城區德外大街83號德勝國際中心B-11

客服熱線:400-656-5456??客服專線:010-56265043??電子郵箱:longyuankf@126.com

電信與信息服務業務經營許可證:京icp證060024號

Dragonsource.com Inc. All Rights Reserved

icp

主站蜘蛛池模板: 波多野结衣亚洲一区| 国产精品污视频| 一级片一区| 欧美成人午夜影院| 四虎永久在线精品影院| 日韩欧美在线观看| 国产精品久久久久久久久| 一本一道波多野结衣一区二区 | 日本福利视频网站| 成人小视频网| 一级做a爰片久久免费| 欧美性久久久久| 天堂成人在线| 老司国产精品视频| 国产欧美日韩专区发布| 99久久国产综合精品2023| 国产尤物视频在线| 精品色综合| 久久频这里精品99香蕉久网址| 黄色三级毛片网站| 久久国产av麻豆| 亚洲天堂成人在线观看| 国产精品不卡永久免费| 九月婷婷亚洲综合在线| 精品日韩亚洲欧美高清a| 亚洲精品波多野结衣| 国产sm重味一区二区三区| 最新日韩AV网址在线观看| 日韩无码黄色网站| 在线视频精品一区| 国产精品.com| 亚洲欧美极品| 免费一级毛片在线观看| 国产精品第5页| 久久人人97超碰人人澡爱香蕉| 91成人在线免费观看| 国产综合色在线视频播放线视 | 日韩精品无码免费一区二区三区| 69免费在线视频| 免费av一区二区三区在线| 国产麻豆福利av在线播放 | 无码福利日韩神码福利片| 91在线高清视频| 天堂成人在线| 亚洲国内精品自在自线官| 91在线播放国产| 国产成人1024精品下载| 精品国产美女福到在线直播| 国内精品自在自线视频香蕉| 中文字幕乱码二三区免费| 伊人AV天堂| 精品国产自| 国产免费a级片| 国产精品2| 毛片在线播放a| 任我操在线视频| 日本手机在线视频| 97视频精品全国免费观看| 国产在线精品香蕉麻豆| 国产麻豆aⅴ精品无码| 国产成人高清亚洲一区久久| 67194亚洲无码| 999福利激情视频| 国产精品永久不卡免费视频| 国禁国产you女视频网站| 国产丝袜第一页| 九九视频在线免费观看| 国产午夜无码片在线观看网站| 无码国内精品人妻少妇蜜桃视频| 久久综合九九亚洲一区| 99在线视频精品| 亚洲午夜久久久精品电影院| 日韩美毛片| 性喷潮久久久久久久久| 国产成人精品一区二区三区| 婷婷综合缴情亚洲五月伊| 久久国产拍爱| 欧美中文一区| 女人一级毛片| 国产精品太粉嫩高中在线观看| 国产亚洲精品自在久久不卡| 99热这里只有免费国产精品|