问题标签 [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.
asp.net-mvc - 为什么 AntiForgeryToken 默认不包含在每个表单中?
我很感兴趣,为什么默认情况下每个 ASP.NET MVC 表单中都没有包含AntiForgeryToken ?似乎总是包含它的好处超过了可能的缺点。如果需要 Web 表单HttpRequestValidationException,可以禁用此行为。
perl - 如何使用 Perl 和 Apache 防止跨站点请求伪造?
是否有任何我可以使用的透明库或一些简单的库,以便我可以使用Perl 和 Apache防止跨站点请求伪造 (CSRF) ?如何为表单生成令牌并在服务器端验证它们?
ajax - AJAX 风格应用程序中的 XSRF 保护
我们目前正在开发一个完全基于 AJAX 的应用程序,它将通过 RESTful API 与服务器交互。我已经考虑了防止针对 API 的 XSRF 攻击的潜在方案。
用户进行身份验证并接收一个会话 cookie,该 cookie 也会随每个请求一起双重提交。
我们在 Javascript 中实现 OAuth 消费者,在用户登录时检索令牌,并使用该令牌签署所有请求。
我倾向于 OAuth 方法,主要是因为我想提供对我们 API 的第 3 方访问,并且我宁愿不必实现两个身份验证方案。
在这种情况下 OAuth 消费者是否有任何理由无法工作?
php - Zend Framework 是否有特定的方法来防止 CSRF/XSRF?
跨站点请求伪造(CSRF 或 XSRF)攻击会引发您认为可信的用户在您的 Web 应用程序中进行未经授权的操作。
这肯定是我们想要阻止的事情,我特别使用 Zend Framework。是否有 Zend Framework 方法来防止 CSRF/XSRF?
javascript - javascript securty:记录用户屏幕分辨率的AJAX调用,是否可以防止假号码?
这是一个 javascript 安全问题:假设一个页面找到了计算机的屏幕分辨率,例如 1024 x 768,并希望使用 AJAX 调用将此数据记录到数据库中。
有没有办法真正防止虚假数据输入数据库?我认为无论 HTML 或 Javascript 做什么,用户都可以对代码进行逆向工程,以便将一些假数字输入数据库,或者有没有办法完全防止它发生?(100% 安全)。
更新:或在类似的情况下...如果我编写一个简单的 javascript 游戏...有没有办法让用户通过 AJAX 发回分数并谎报他们的分数?
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 中)
zend-framework - 如何对包含 CSRF 表单元素的 Zend_Form 进行单元测试?
我正在使用带有 Zend_Form 的 CSRF 隐藏哈希元素并尝试对登录进行单元测试,但不知道如何编写单元测试来包含该元素。查看文档并阅读尽可能多的教程。我什至都把它们都吃了,但没有人提到这一点。
http - 验证 FORM POST 的来源以确保它来自同一服务器/应用程序
我想找到一个与平台/语言无关的解决方案,以确保 FORM POST 的来源来自预期的来源。即 Page1.aspx 发布到同一网站内的 Page2.php。
具体来说,我在这里尝试做的是防止请求伪造。
security - 如何使用 URL 重写防止跨站点请求伪造 (XSRF/CSRF) 攻击?
可以使用多种技术来防止 CSRF/XSRF。
其中一种技术是使用客户端会话唯一的令牌,客户端向服务器发送每个请求;正在服务器端进行验证。如果请求令牌和服务器端的令牌匹配,则允许请求进入应用程序,否则不允许进入。因此将检测到 CSRF 攻击。
尽管该技术背后的想法对我来说非常清楚,但我不确定 URL 重写如何有助于防止 CSRF 攻击?安全专家可以对此有所了解吗?
security - 您可以通过在所有 POST 请求的参数中包含会话密钥来防止 XSRF 吗?
这个想法会奏效吗?这似乎很愚蠢,因为我的应用程序只是检查浏览器是否发送了相同信息的两个副本(即会话密钥)。
另外,记住做这个检查听起来很乏味。诸如 Rails 和 CakePHP 之类的 Web 框架是否具有使编写 XSRF 验证 Web 应用程序更容易的功能?