博客园的CSRF
CSRF全稱 Cross Site Request Forgery,跨站請求偽造。通俗理解:攻擊者盜用當前用戶身份,發請當前用戶的惡意請求:如郵件,銀行轉賬等。?
CSRF原理?
CSRF過程?
登錄網站A,生成本地Cookie信息;登錄危險網站B,B獲取網站A的內容,并向A發送請求操作,若成功,則CSRF過程成功。其中登錄B網站,行為可以是點擊網站A中的鏈接鏈接。?
CSRF攻擊實踐?
1.若網站A通過GET方式訪問銀行(假設)完成轉賬:http://www.bank.com/transfer.php?toBankId=3206&money=1000。如果是通過GET方式訪問,授權信息存儲在cookie中。?
2.B頁面中生成img標簽,src設置為A頁面中的轉賬鏈接:http://www.bank.com/transfer.php?toBankId=3206&money=1000,但toBankId改成黑客的的賬號,因為登錄信息在cookie中,在chrome,firefox等多頁簽瀏覽器中,同域名請求可以帶上同域名的cookie內容?
預防措施?
1.隨機參數?
攻擊者不能獲得第三方的Cookie(理論上),A頁面使用加密隨機參數,在同一個會話范圍內使用同一個加密隨機參數,如md5("defenseSCRF" + new Date().getTime() + 3600),在第個請求中加入隨機參數。?
后臺校驗:getSession().get("stoken_name") == $pToken?
2.驗證碼?
?
轉載一篇文章來湊夠200字數~~
原文鏈接:http://haiyupeter.iteye.com/blog/1842780
?
最后:
很簡單,看我粉絲數及這篇文章的推薦數就明白嘍!
嘟嘟你不禁用首頁JS就算了,總得加上token吧!
轉載于:https://www.cnblogs.com/zhaodyun/archive/2013/05/29/3105489.html
總結
- 上一篇: 求背包问题所有解(C++实现)
- 下一篇: 虚拟机下安装vmtool