web 安全之 xss 、 csrf

1、首先定義xss (cross-site script )跨域腳本攻擊。

場景:表單中的輸入框、文本框或者任何可提交給服務器的查詢參數(String類型),若不對用戶輸入的內容不進行任何過濾,就有可能引起腳本攻擊。

具體的例子:比如一個帖子,下面有可輸入的評論框,我在其中輸入<script>while(true){alert('fuck you!');}</script>,如果不對我輸入的內容過濾,那麼凡是查看我評論的內容的用戶都會遭此難! 這個例子比較簡單,算是拋磚引玉了。 如果在評論框中,寫個frame 裏面指定src ="www.evil.com"(黑客網站) 然後用通過var x = document.cookie;盜走用戶的cookie, 可能會帶來不可估量的損失。

解決方案: 前後臺過濾敏感字符。

2、csrf (cross-site request forgery) 跨域請求僞造。

場景: 比如有個積分網站,www.jifen.com/transfer?number=10000&toUser=11 這個get請求可以將當前用戶 A 的10000積分 轉給userid 爲11的用戶,如果在當前用戶session失效之前,他訪問了一個圖片式鏈接 <a href="www.jifen.com/transfer?number=10000&toUser=111"><img src="/xxx.jpg"/></a> 這是一個壞人的圖片的鏈接, toUser 爲這個壞人在積分網的用戶id(用戶B), 用戶A 點擊用戶B 的圖片鏈接後,很輕鬆的將10000的積分轉到自己的賬戶下!!


解決方案: 

1、加referer 頭校驗;

2、動態token;

3、客戶端請求加token;

4、http 頭中   用戶自定義屬性。

詳細解釋,參考鏈接:http://www.ibm.com/developerworks/cn/web/1102_niugang_csrf/


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章