问题标签 [csrf-protection]
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.
jquery - jquery ui 对话框和 csrf 保护
我jquery ui dialog
用来显示表格。csrf token
不幸的是,这个函数清除了我表单中的隐藏输入。我可以以某种方式强制对话框不清除此字段,还是我必须将此令牌存储在某处并自己设置正确的字段?
csrf - CSRF 保护技术
有人可以向我指出有关如何保护应用程序免受 CSRF 影响的信息吗?
任何与此相关的代码。
我在 UI 上使用 extjs,在后端和 tomcat 服务器上使用 Java。
提前致谢。
javascript - Tomcat 中的 CSRF 保护
如何防止 Tomcat 中的 CSRF 漏洞?
我正在为我的应用程序使用 Tomcat 服务器,我需要保护我的应用程序免受 CSRF 攻击。有什么技术可以做到这一点吗?
php - 保护表单劫持黑客
是的,你好今天我发现了我的网站的一个黑客。
当您在用户墙上(在我的社区站点中)写一条消息时,它会运行一个 ajax 调用,将消息插入数据库,然后在成功时向下滑动并显示它。
工作正常没有问题。
所以我重新思考了一下,我为此使用 POST 方法,如果它是 GET 方法,您可以轻松地执行 ?msg=haxmsg&usr=12345679。但是你能做些什么来绕过 POST 方法呢?
我制作了一个新的 html 文档,制作了一个表单,并在操作时设置了“site.com/insertwall.php”(通常在 ajax 中使用的文件),我制作了一些名称与我正在使用的完全相同的输入字段ajaxcall (msg, uID (userid), BuID (by userid) ) 并做了一个提交按钮。
我知道我有一个 page_protect() 函数,需要你登录,如果你不是,你将成为 index.php 的标题。所以我登录了(在我的 site.com 上开始了会话),然后我按下了这个提交按钮。然后我在我的网站上看到它发出了一条新消息。
我就像哇,劫持 POST 方法这么容易吗?我想它可能更安全一些。
我想知道我能做些什么来防止这种劫持?因为我什至不想知道真正的黑客可以用这个“洞”做什么。page_protect 确保会话来自同一个 http 用户代理等,这可以正常工作(尝试在不登录的情况下运行表单,它只是将我引导到起始页)但是不需要很长时间才能弄清楚登录首先然后运行它。
任何建议都非常感谢。我想让我的 ajax 调用尽可能安全,并且它们都在 POST 方法上运行。我可以对 insertwall.php 做什么,以检查它是否来自服务器或其他东西..
谢谢
django - Django 1.2.4 CSRF 验证失败
当我执行 POST 表单时,Django 1.2 一直给我这个 CSRF 验证错误。我“认为”我已经完成了 Django 1.2 文档中要求的所有事情,即,
确保 MIDDLEWARE_CLASSES 包含在“django.middleware.csrf.CsrfViewMiddleware”中
确保 {% csrf_token %}
/li>在我的回复中使用 RequestContext
/li>
请注意,GET 操作在此函数中起作用。所以我认为我正在使用 render_to_response 正确。
我什至尝试加入 @csrf_protect 装饰器,但似乎也没有用。我没有想法,我即将用我的笔记本电脑窒息自己。
大家有什么能想到的吗?
谢谢!
php - 防止在 PHP 中从不受信任的来源发生注销操作
我在我的网站上有一个动作:
这将使当前用户退出他/她的会话。由于这是一个简单的 GET 请求,恶意用户可以创建指向此页面的链接,甚至可以将此链接放入图像的src
属性中,从而强制用户退出。我仍然希望保持注销链接的简单性而不必走得太远,但同时我希望能够防止上述情况发生。
有任何想法吗?
codeigniter - CodeIgniter 的 CSRF 令牌问题
我在 CodeIgniter 中遇到了一个非常奇怪的 CSRF 保护问题。我已经确保我使用 form_open 来启动我的表单,csrf_protection 在配置文件中设置为 true,并且我还确保隐藏的 csrf 名称和值字段与 csrf cookie 匹配,如下所示:http://d .pr/3cfB。
发生的情况是,当我提交表单时,我收到“遇到错误。不允许您请求的操作。” 错误,不知道为什么。当我关闭 csrf_protection 时,表单工作正常。
更奇怪的是,我使用 tank_auth 库进行身份验证,它还使用 form_open 作为登录表单。当 csrf_protection 开启时,我确实检查以确保登录表单中有一个隐藏的 csrf 字段,并且我能够提交表单并毫无问题地登录。
关于我可以做些什么来调试这个问题的想法?
asp.net-mvc - 保护受保护的 JSON Web 服务免受数据收集?
我们有一个 JSON Web 服务,我们的一个网页使用它来显示“实时”数据。要访问该页面,用户必须登录。我们担心恶意网站(竞争对手)获取这些数据的能力。但是,我不确定我们预期的问题是否合理。
一旦用户登录,我们会在他们的机器上存储一个“记住我”cookie。如果有人要建立一个向我们的 Web 服务发出 AJAX 请求并说服登录用户访问该站点的站点,他们是否能够从我们的服务中检索和存储信息?如果是这样,我们如何保护自己免受此类事情的侵害?
例如:
恶意网站是否可以构建这样的脚本来获取我们的数据:
由于他们正在访问我们的 JSON 提要,它不会将 cookie 发送到我们的站点并且用户将通过身份验证。既然他们会被认证,它不会发回敏感数据吗?
jquery - Rails 会话被重置
我有一个奇怪的问题。我最近检测到通过 AJAX 发布的文本字段出错。经过调查,我发现会话被重置为这个 POST AJAX 请求。我认为一定是csrf问题。我检查了令牌,它像在布局文件中一样被正确传递:
我的 AJAX 请求如下所示:
但是在调试器中,我注意到 csrf 令牌与哈希中已经存在的令牌不同。我无法理解这一切。任何线索可能是这一切的原因?
asp.net - ViewStateUserKey 没有阻止 CSRF?
我怀疑这是由于我的测试配置,但我想问问你们的想法。我正在玩一个快速测试项目。我有一个简单的表单认证页面和一个订单页面(两个字段和一个显示“订单”的列表)。订单页面设置为在检索参数时使用 Request.Form[] 以防止输入作为 GET 操作进入。
我在 Page_Init 中设置了 ViewStateUserKey 并明确地将 EnableViewStateMac 设置为 true(即使它默认为 true)。
然后我制作了一个 .HTM,将表单发布到我的订单页面,为两个字段(产品和数量)设置值。我应该注意,我没有费心将视图状态作为表单提交的一部分。我在浏览器的真实页面上查看了源代码,删除了除表单字段之外的所有内容,添加了一些 javascript 来设置字段值并执行 form.submit()
我登录到测试项目,并打开了 .HTM。.HTM 成功提交了表单,当我刷新订单页面时,我可以看到虚假订单。
为什么 ViewStateUserKey 没有对此进行保护?它不应该阻止那种类型的攻击吗?在此示例中,我没有篡改视图状态,我只是创建了一个执行正常表单发布的页面,因此 ViewStateUserKey仅用于防止 ViewState 篡改(这让我觉得完全没有价值,或者这是否有效,因为两个页面都是活的在同一台物理机器上?