tornado xsrf

function getCookie(name) {
    var r = document.cookie.match("\\b" + name + "=([^;]*)\\b");
    return r ? r[1] : undefined;
}

jQuery.postJSON = function(url, args, callback) {
    args._xsrf = getCookie("_xsrf");
    $.ajax({url: url, data: $.param(args), dataType: "text", type: "POST",
        success: function(response) {
        callback(eval("(" + response + ")"));
    }});
};

以上是tornado官方文档防止跨站攻击的教程。
我有一点不理解的是这里如何可以防止 csrf? 攻击者如果也用同样的方式获取 cookie,然后发送到服务端,同样可以达到攻击的效果吧。请高手指点一下。

阅读 1.9k
1 个回答

重点是“跨站” 你先理解这个是什么意思

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进