问题标签 [csrf]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
1135 浏览

asp.net-mvc - 为什么 AntiForgeryToken 默认不包含在每个表单中?

我很感兴趣,为什么默认情况下每个 ASP.NET MVC 表单中都没有包含AntiForgeryToken ?似乎总是包含它的好处超过了可能的缺点。如果需要 Web 表单HttpRequestValidationException,可以禁用此行为。

0 投票
2 回答
3094 浏览

perl - 如何使用 Perl 和 Apache 防止跨站点请求伪造?

是否有任何我可以使用的透明库或一些简单的库,以便我可以使用Perl 和 Apache防止跨站点请求伪造 (CSRF) ?如何为表单生成令牌并在服务器端验证它们?

0 投票
3 回答
1505 浏览

ajax - AJAX 风格应用程序中的 XSRF 保护

我们目前正在开发一个完全基于 AJAX 的应用程序,它将通过 RESTful API 与服务器交互。我已经考虑了防止针对 API 的 XSRF 攻击的潜在方案。

  1. 用户进行身份验证并接收一个会话 cookie,该 cookie 也会随每个请求一起双重提交。

  2. 我们在 Javascript 中实现 OAuth 消费者,在用户登录时检索令牌,并使用该令牌签署所有请求。

我倾向于 OAuth 方法,主要是因为我想提供对我们 API 的第 3 方访问,并且我宁愿不必实现两个身份验证方案。

在这种情况下 OAuth 消费者是否有任何理由无法工作?

0 投票
1 回答
1357 浏览

php - Zend Framework 是否有特定的方法来防止 CSRF/XSRF?

跨站点请求伪造(CSRF 或 XSRF)攻击会引发您认为可信的用户在您的 Web 应用程序中进行未经授权的操作。

这肯定是我们想要阻止的事情,我特别使用 Zend Framework。是否有 Zend Framework 方法来防止 CSRF/XSRF?

0 投票
5 回答
742 浏览

javascript - javascript securty:记录用户屏幕分辨率的AJAX调用,是否可以防止假号码?

这是一个 javascript 安全问题:假设一个页面找到了计算机的屏幕分辨率,例如 1024 x 768,并希望使用 AJAX 调用将此数据记录到数据库中。

有没有办法真正防止虚假数据输入数据库?我认为无论 HTML 或 Javascript 做什么,用户都可以对代码进行逆向工程,以便将一些假数字输入数据库,或者有没有办法完全防止它发生?(100% 安全)。

更新:或在类似的情况下...如果我编写一个简单的 javascript 游戏...有没有办法让用户通过 AJAX 发回分数并谎报他们的分数?

0 投票
3 回答
604 浏览

security - 这个防止跨站点请求伪造的想法中有任何逻辑漏洞吗?

我已经阅读了几个依赖于向响应添加更多令牌的 XSRF 解决方案,这些解决方案确实有助于保护仅在 POST 上运行的代码。

即,这将是依赖于响应 HTTP GET 的页面的一步攻击

但是使用更好的库(如 jquery),编写恶意 javascript XmlHttpRequest 脚本变得更加容易,可以进行两步攻击(GET,解析 Anti-XSRF 视图状态/查询字符串/额外 cookie 等),然后提交 POST。(或者是吗?我不担心 AES 很快就会被破解,我是否应该担心针对 HTTP POST 操作的 2 步 XSRF 攻击变得像上面显示的 img 标签攻击一样容易?)

我想一步攻击主要可以通过不对 GET 做任何敏感的事情来阻止,这两种攻击都可以通过要求网站用户解决 CAPTCHA 来阻止,然后它会产生一个查询字符串令牌,所有 URL 都需要这个令牌会议的其余部分?

到目前为止,它似乎只有在 CAPTCHA 失败时才会失败,例如 OCR 软件是否可以读取文本或是否有机械土耳其人组件。

编辑:考虑到的特定攻击是带有 xhr javascript 或图像标签的电子邮件。因此代码将在电子邮件客户端的浏览器或从本地文件系统加载的 HTML 页面中执行。为简单起见,我认为该站点没有 XSS 漏洞(即恶意用户没有机会将其 HTML 注入站点作为响应发送的 HTML 中)

0 投票
5 回答
2973 浏览

zend-framework - 如何对包含 CSRF 表单元素的 Zend_Form 进行单元测试?

我正在使用带有 Zend_Form 的 CSRF 隐藏哈希元素并尝试对登录进行单元测试,但不知道如何编写单元测试来包含该元素。查看文档并阅读尽可能多的教程。我什至都把它们都吃了,但没有人提到这一点。

0 投票
3 回答
3395 浏览

http - 验证 FORM POST 的来源以确保它来自同一服务器/应用程序

我想找到一个与平台/语言无关的解决方案,以确保 FORM POST 的来源来自预期的来源。即 Page1.aspx 发布到同一网站内的 Page2.php。

具体来说,我在这里尝试做的是防止请求伪造。

0 投票
1 回答
2831 浏览

security - 如何使用 URL 重写防止跨站点请求伪造 (XSRF/CSRF) 攻击?

可以使用多种技术来防止 CSRF/XSRF。

其中一种技术是使用客户端会话唯一的令牌,客户端向服务器发送每个请求;正在服务器端进行验证。如果请求令牌和服务器端的令牌匹配,则允许请求进入应用程序,否则不允许进入。因此将检测到 CSRF 攻击。

尽管该技术背后的想法对我来说非常清楚,但我不确定 URL 重写如何有助于防止 CSRF 攻击?安全专家可以对此有所了解吗?

0 投票
1 回答
328 浏览

security - 您可以通过在所有 POST 请求的参数中包含会话密钥来防止 XSRF 吗?

这个想法会奏效吗?这似乎很愚蠢,因为我的应用程序只是检查浏览器是否发送了相同信息的两个副本(即会话密钥)。

另外,记住做这个检查听起来很乏味。诸如 Rails 和 CakePHP 之类的 Web 框架是否具有使编写 XSRF 验证 Web 应用程序更容易的功能?