javascript - 防止来自带有查询表单的静态网站(即 Jekyll 网站)的 JSONP 请求的跨站请求伪造

标签 javascript php security jsonp csrf

我需要处理一个使用 Jekyll 构建的静态网站的查询表单。

查询表单向处理该请求的另一个域上的 PHP 应用程序提交 JSONP 请求 (GET)。

由于表单是静态的,是否可以防止 CSRF?

我注意到 PHP Slim 框架的 CSRF 中间件仅保护 POST、PUT 和 DELETE 方法,而不是 GET。

如果我在静态站点中有一个脚本,在每个页面上构建表单,加载从服务器请求的数据(cookie 值、csrf token 以及字段值等),这样可以吗?

感谢您的宝贵时间

最佳答案

无需防范 CSRF,因为在当前用户的上下文中提交表单不会获得任何好处 - 如果攻击者想要在您的网站上提交表单,则无需“跨站点” ...他们只需提交即可。

听起来您正在寻找 CAPTCHA防止机器人提交表单(如果这就是您真正想要的?)。

关于javascript - 防止来自带有查询表单的静态网站(即 Jekyll 网站)的 JSONP 请求的跨站请求伪造,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19490931/

相关文章:

javascript - WordPress 中的 Qtip2/同位素冲突 : "Uncaught TypeError: Cannot call method ' call' of undefined"

php - PHP 中的语言检测 ( UTF-8 )

php - 如何简化我的 php 代码(插入、更新和删除)

c - 线程何时获得关联的访问 token ?

java - jSecurity JDBCRealm SQL 设置

sql - 是否存在不安全的 LIKE 模式之类的东西?

javascript - 如何使用 js 更改 jquery slider 值

JavaScript cookie 不工作

javascript - 如何将 JSON 库格式的 JSON 日期转换为 Javascript 日期

Javascript/jQuery 破坏了页面的格式