我有一个表单,它在提交时检查CSRF令牌并验证它。当我用ajax提交表单时,我试图获得相同的安全性。但是,ajax请求不会提交表单本身,它只是通过发送请求将数据发送到url。如果ajax请求提交了此CSRF令牌和请求,会发生什么情况。在服务器上,我将检查CSRF令牌。这是否会以任何方式危害我的表单安全?这是否会导致ajax提交方式被其他人以某种方式利用?发送ajax请求的CRSF令牌是否削弱了它的CRSF保护
1
A
回答
0
发布到服务器并包含令牌应该与通过表单一样安全;这是做同样事情的另一种方式。以下是我正在处理的应用程序的一个示例:
var getCookie = function(name) {
var r = document.cookie.match("\\b" + name + "=([^;]*)\\b");
return r ? r[1] : undefined;
};
var args = {
_xsrf : getCookie("_xsrf"),
// other args added
};
$.ajax({
url : "/ajaxhandler",
data : args,
type : "post",
dataType : "json",
// .. the rest as usual
});
0
是的,应该是安全的。只要运行在另一个域上的JavaScript无法读取令牌。这可能发生,例如这个JSON abuse used against gmail。
相关问题
- 1. 登录与CRSF保护
- 2. 如何结合令牌认证和CRSF?
- 3. Symfony2 CRSF保护如何工作?
- 4. 在提交Ajax时重新生成CRSF令牌codeigniter
- 5. 无法在angularjs中创建包含crsf的发布请求
- 6. 另一个CRSF令牌错误,而在django文件uploding
- 7. 保护AJAX请求
- 8. 保护ajax请求
- 9. 通过AJAX在CakePHP的3.4发送形式CRSF和安全组件启用
- 10. Laravel x-editable CRSF问题
- 11. Github上基本OAuth令牌不被使用Ajax请求发送
- 12. 如何通过ajax请求发送Twitter OAuth访问令牌?
- 13. 如何使用axios发送ajax请求时添加令牌?
- 14. 发送ajax请求
- 15. ajax请求上的CSRF令牌
- 16. Laravel护照:发送令牌请求时的其他模型条件
- 17. SSL是否保护通过它发送的文档?
- 18. CRSF标记缺失或不正确
- 19. 是否AJAX 2.0 +仍然发送完整的回复请求
- 20. Laravel-令牌missmatch例外AJAX请求
- 21. 未发送jQuery AJAX请求
- 22. Ajax请求不被发送
- 23. Typehead.js不发送ajax请求
- 24. AJAX发送请求两次
- 25. JQuery .ajax不发送请求
- 26. 获取上发送的令牌,并请求SAS URI
- 27. Stripe Payment API一次又一次地发送令牌的请求
- 28. 使用用户令牌向Rails中的Twitter API发送请求
- 29. 使用Java发送带有令牌的GET请求HttpUrlConnection
- 30. 发送HTTP POST请求,用指定的CSRF令牌