亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Spring Security中防護(hù)CSRF功能詳解

 更新時(shí)間:2023年01月20日 14:11:48   作者:愛上口袋的天空  
這篇文章主要介紹了Spring Security中防護(hù)CSRF功能,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

CSRF是什么?

CSRF(Cross-site request forgery),中文名稱:跨站請(qǐng)求偽造,也被稱為:one click attack/session riding,縮寫為:CSRF/XSRF。

CSRF可以做什么?

你這可以這么理解CSRF攻擊:攻擊者盜用了你的身份,以你的名義發(fā)送惡意請(qǐng)求。

CSRF能夠做的事情包括:以你名義發(fā)送郵件,發(fā)消息,盜取你的賬號(hào),甚至于購(gòu)買商品,虛擬貨幣轉(zhuǎn)賬…

造成的問題包括:個(gè)人隱私泄露以及財(cái)產(chǎn)安全。

CSRF的原理

下圖簡(jiǎn)單闡述了CSRF攻擊的思想:

在這里插入圖片描述

從上圖可以看出,要完成一次CSRF攻擊,受害者必須依次完成兩個(gè)步驟:

  • 1.登錄受信任網(wǎng)站A,并在本地生成Cookie。
  • 2.在不登出A的情況下,訪問危險(xiǎn)網(wǎng)站B。 

看到這里,你也許會(huì)說:“如果我不滿足以上兩個(gè)條件中的一個(gè),我就不會(huì)受到CSRF的攻擊”。

是的,確實(shí)如此,但你不能保證以下情況不會(huì)發(fā)生:

  • 1.你不能保證你登錄了一個(gè)網(wǎng)站后,不再打開一個(gè)tab頁面并訪問另外的網(wǎng)站。
  • 2.你不能保證你關(guān)閉瀏覽器了后,你本地的Cookie立刻過期,你上次的會(huì)話已經(jīng)結(jié)束。(事實(shí)上,關(guān)閉瀏覽器不能結(jié)束一個(gè)會(huì)話,但大多數(shù)人都會(huì)錯(cuò)誤的認(rèn)為關(guān)閉瀏覽器就等于退出登錄/結(jié)束會(huì)話了…)
  • 3.上圖中所謂的攻擊網(wǎng)站,可能是一個(gè)存在其他漏洞的可信任的經(jīng)常被人訪問的網(wǎng)站。

Spring Security解決方案

將配置類中下面這段代碼注釋掉:

.and().csrf().disable(); //關(guān)閉csrf防護(hù)

然后,在登錄頁面添加一個(gè)隱藏域:

<input type="hidden" th:name="${_csrf.parameterName}" th:value="${_csrf.token}" />

Spring Security實(shí)現(xiàn)防護(hù)csrf的原理

spring security在認(rèn)證之后會(huì)生成一個(gè)csrfToken保存到HttpSession或者Cookie中。

之后每次請(qǐng)求到來時(shí),從請(qǐng)求中提取csrfToken,和保存的csrfToken作比較,進(jìn)而判斷當(dāng)前請(qǐng)求是否合法。主要通過CsrfFilter過濾器來完成。

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

最新評(píng)論