网站地图    收藏   

主页 > 系统 > linux系统 >

tornado开启xsrf模式的方法详解 - linux教程

来源:自学PHP网    时间:2014-11-28 23:06 作者: 阅读:

[导读] CSRF(Cross-site request forgery跨站请求伪造,也被称为one click attack或者session riding,通常缩写为CSRF或者XSRF,是一种对网站的恶意利用,尽管听起来像跨站脚本(XSS),但它与XSS非常不......

tornado开启xsrf模式的方法详解

CSRF(Cross-site request forgery跨站请求伪造,也被称为“one click attack”或者session riding,通常缩写为CSRF或者XSRF,是一种对网站的恶意利用,尽管听起来像跨站脚本(XSS),但它与XSS非常不同,并且攻击方式几乎相左,XSS利用站点内的信任用户,而CSRF则通过伪装来自受信任用户的请求来利用受信任的网站。与XSS攻击相比,CSRF攻击往往不大流行,因此对其进行防范的资源也相当稀少,和难以防范,所以被认为比XSS更具危险性.

当前防范 XSRF 的一种通用的方法,是对每一个用户都记录一个无法预知的 cookie 数据,然后要求所有提交的请求中都必须带有这个 cookie 数据,如果此数据不匹配,那么这个请求就可能是被伪造的.

Tornado 有内建的 XSRF 的防范机制,要使用此机制,你需要在应用配置中加上 xsrf_cookies 设定:

xsrf_cookies=True,

cookie_secret="__TODO:_GENERATE_YOUR_OWN_RANDOM_VALUE_HERE__",

配置完成后就可以使用xsrf_form_html(),代码如下:

  1. <form action="/new_message" method="post"
  2.   {% module xsrf_form_html() %} 
  3.   <input type="text" name="message"/> 
  4.   <input type="submit" value="Post"/> 
  5. </form> //phpfensi.com

之前我一直以为直接用{% xsrf_form_html() %}结果一直报错“ParseError: unknown operator:‘xsrf_form_html()’”,加上module就行了.

自学PHP网专注网站建设学习,PHP程序学习,平面设计学习,以及操作系统学习

京ICP备14009008号-1@版权所有www.zixuephp.com

网站声明:本站所有视频,教程都由网友上传,站长收集和分享给大家学习使用,如由牵扯版权问题请联系站长邮箱904561283@qq.com

添加评论