CSRF漏洞攻击,举个栗子:用户登录的情况下,这时候,浏览器打开了黑客设计的页面,页面提供了一个带有删除操作的按钮,按钮的地址配的是我们系统的地址(抓包等手段),用户点击了该按钮,我们后台数据就真的删了。

 

简单的做法,可以通过 “数据加密 + token” 的方式,让表单的数据变得更加复杂,无法轻易复制。

(因为BS架构的特殊性,页面源码始终都是对外开放的,虽然说,想要攻击始终还是有办法,不过这已经不属于CSRF漏洞了。)

 

Security的做法:通过模版引擎,直接将token渲染到页面上,token可以藏在页面任意一个位置,每次提交表单,需要带上这个token。

提交表单的时候,token如果设置在request的header中,header字段名,需要通过${_csrf.headerName}渲染。
提交表单的时候,token如果设置在request的parameter中,parameter字段名,需要通过${_csrf.parameterName}渲染。

 

在开始试用Security的时候,为了方便通常会先禁用csrf,我们需要把这个功能启用起来,取消注释。

        //启用CSRF,放置CSRF攻击
        http.csrf().disable();

在登录页面的表单中加入token。

其它页面与登录页面类似,需要在表单中增加token字段,更简单地,直接调整全局的ajax代码切面。

Security——CSRF功能

 

相关文章:

  • 2021-08-18
  • 2021-12-13
  • 2021-05-09
  • 2021-06-23
  • 2022-12-23
  • 2022-01-27
  • 2021-10-25
猜你喜欢
  • 2023-01-20
  • 2022-12-23
  • 2022-12-23
  • 2021-12-25
  • 2022-12-23
  • 2022-12-23
  • 2022-02-05
相关资源
相似解决方案