php - 防止 jQuery $.post 的 CSRF 和 XSRF 攻击

标签 php jquery http-post csrf

我最近遭受了一次简单的 CSRF 攻击,并意识到我的很多 ajax 脚本都是打开的。这些可以在我的网站上通过 $.post() 访问。

有没有办法自动将 PHP token 添加到所有这些内容中,还是我需要逐一完成所有操作?

最佳答案

使用 bwoebi 的答案,我找到了一个稍微好一点的解决方案。 jQuery 有一个内置的 ajax 设置函数。

<script>var token ="<?= $_SESSION['token'] ?>";</script>
<script>
jQuery.ajaxSetup({
    data: {
        token: token
    }
});
</script>

这会将您的 token 添加到每个 jQuery 请求中!

关于php - 防止 jQuery $.post 的 CSRF 和 XSRF 攻击,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16378600/

相关文章:

php - PHP hash() 默认支持 WHIRLPOOL 吗?

javascript - HTML 链接,其中包含页面构建信息

http - CURLOPT_HTTPPOST 和 CURLOPT_POSTFIELDS 之间的区别

javascript - 使用 Node.js 的 JSON 数据

php - 如何在 netbeans 的 ubuntu 16.04 中安装 xdebug?

javascript - 将 PHP 的 http 响应代码返回到 AJAX

jquery - 带有 jQ​​uery 的托盘 |再次单击时关闭托盘

javascript - 添加 auto_increment id 列后无法使用 php 和 javascript 将数据添加到 mysql 数据库

javascript - 检查包含数组的数组

java - Java 中的 HttpPost 参数 BasicNameValuePair