当前位置: 移动技术网 > IT编程>脚本编程>Python > Flask-状态保持-CSRF

Flask-状态保持-CSRF

2019年01月17日  | 移动技术网IT编程  | 我要评论

夏乐蒂,女子拒绝在公司哺乳遭解雇,t60次列车

问题:cookies基于浏览器的同源策略,不同域名的cookie不能相互访问,为什么可以进行跨站请求伪造呢?

原因:cookie基于浏览器的同源策略,确实是在实现状态保持的时候,不能跨域访问。

跨站请求的伪造过程:是其他网站伪造访问原网站的请求,导致的一系列信息泄露。

具体伪造过程:

 如何防止csrf的过程呢,还是需要通过一系列双向验证来保证:

在用户请求服务器的时候,服务器向cookie中写入csrf_token,浏览器的form表单中也会写入csrf_token,在浏览器进行下一次请求的时候,服务端会取到这两个token进行比对,一致就能验证是用户自己访问,不一致,就会存在伪造风险。

  1. 在客户端向后端请求界面数据的时候,后端会往响应中的 cookie 中设置 csrf_token 的值
  2. 在 form 表单中添加一个隐藏的的字段,值也是 csrf_token
  3. 在用户点击提交的时候,会带上这两个值向后台发起请求
  4. 后端接受到请求,以会以下几件事件:
    • 从 cookie中取出 csrf_token
    • 从 表单数据中取出来隐藏的 csrf_token 的值
    • 进行对比
  5. 如果比较之后两值一样,那么代表是正常的请求,如果没取到或者比较不一样,代表不是正常的请求,不执行下一步操作

 

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
移动技术网