问题标签 [cross-site]

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 回答
2760 浏览

asp.net-mvc - MVC AntiForgeryToken 重用了之前生成的令牌

目前我正在开发 ASP .NET MVC 4 应用程序。我们正在使用提供[ValidateAntiForgeryToken]的和对应@Html.AntiForgeryToken()的在我们使用 POST 提交的表单中生成隐藏字段。

到目前为止,该机制似乎工作正常,因为如果我没有将令牌作为输入隐藏字段提供给目标,则按[ValidateAntiForgeryToken]预期会引发带有错误注释的动作。

但是我发现真的很奇怪,如果我使用 Firebug 或 Chrome 检查器捕获了几个生成的令牌,将它们复制到记事本中,然后转到另一个也使用 AntiForgeryToken 的页面,并且基本上用之前生成的任何令牌替换隐藏字段,一个错误没有提出。我期望始终具有 1:1 关系(页面隐藏字段 - ValidationAtServer],因为如果有人能够获得该值,将能够伪造对应用程序中需要 AntiForgeryToken 的任何形式的任何请求

我的印象是,一旦生成了令牌,就不可能重复使用相同的令牌,我认为这是框架本身的安全漏洞。

如果有人可以提供更多见解,将不胜感激。

0 投票
2 回答
3504 浏览

javascript - 嵌入式 iframe/javascript 小部件中的安全性

我正在构建一个功能类似于 Google Analytics 的网站。我不是在做分析,但我正在尝试提供单行 javascript 或单行 iframe,这将为其他网站添加功能。

具体来说,嵌入的内容将是一个按钮,它将弹出一个新窗口并允许用户执行一些操作。最终用户将完成并且窗口将关闭,此时按钮将更新为反映用户完成流程的新元素。

弹出窗口将从我的网站加载内容,但我的问题与嵌入的 javascript 行(或 iframe)有关。这样做的最佳实践方式是什么?谷歌分析并优化使用 javascript 来修改主机页面。显然 iFrame 也可以。

我担心的安全问题是有人会从一个站点复制嵌入代码并将其放在另一个站点上。实现我的脚本/iframe 的每个页面/站点组合都将具有一个唯一 ID,该站点的开发人员将从我站点上的经过身份验证的帐户生成该 ID。然后我为他们提供适当的嵌入代码。

我的第一个想法是只使用一个 iframe,它使用特定于页面/站点组合的 url 参数从我的站点加载页面。如果我走那条路,有没有办法确定页面仅从嵌入特定域或 url 前缀的 iframe 加载?可以用javascript完成类似的事情吗?

我读了这篇很有帮助的帖子,但我的用例有点不同,因为我实际上是要弹出内容供用户交互。令人担忧的是,托管我嵌入的网站的敌人会欺骗性地引诱他们自己的用户使用小部件。这些用户会认为他们是代表敌方站点与我的站点进行交互,但实际上是代表友好站点进行交互。

0 投票
1 回答
4561 浏览

javascript - 内容安全策略未从 localhost 加载文件

我正在尝试制作一个 chrome 应用程序并希望使用 livereload 以便在我进行更改时自动更新我的。但我收到以下消息-</p>

错误信息:

我在 manifest.json 文件中添加了以下部分,但随后 chrome 开始发出警告。

警告 -

尝试安装此扩展程序时出现以下警告:“content_security_policy”仅允许用于扩展程序和旧版打包应用程序,这是一个打包应用程序。

更新:

当我使用后台脚本创建窗口时会出现问题。即当我的清单文件中有这个时

如果我不使用后台脚本,请改用这个 -

然后一切正常。有人可以解释为什么会这样吗?

0 投票
1 回答
736 浏览

google-compute-engine - 如何修复服务器和网站的跨站点源策略

我正在使用我在谷歌云 (GCE) 上托管的 Dropwizard 以及网站。这意味着当前有 2 个位置处于活动状态:

Some.IP.Address - UI Some.IP.Address:8080 - Dropwizard 服务器

当 UI 尝试从我的 dropwizard 服务器调用任何内容时,我会收到跨站点源错误,这是可以理解的。但是,这对我来说是个问题。我该如何解决?如果我能以某种方式欺骗地址,这样我就不必在 UI 中完全限定资源,那就太好了。

我要做的是:

$.get('/provider/upload/display_information')

或者,如果我必须完全符合条件

$.get(' http://Some.IP.Address:8080/provider/upload/display_information ')

我尝试根据这个 google 组线程( https://groups.google.com/forum/#!topic/dropwizard-user/ybDOTOxjlLI )在 Dropwizard 中设置 Origin Filters ,但它似乎不起作用。

0 投票
1 回答
837 浏览

javascript - XSS 攻击漏洞 - 使用 JavaScript 或 jQuery 调整查询

我遇到需要利用 xss 漏洞的情况(出于学术目的 - 用于作业)

所以我所要做的就是在 URL 旁边添加 javascript 或 jquery 并将其重定向到同一服务器中的某个超页。

我很震惊。我不知道为什么我很难重定向:

以下是具体细节:

实际 URL:
example.com/xss/index.php ?username=Administrator

这有一个文本输入框,用户在其中输入他的密码,并且有一个按钮。(成功输入密码后,它需要到 example.com/xss/login.php

我需要将其重定向到example.com/xss/fake.php

参考:
http ://leakybox.cs.hut.fi/xss/index.php?username=Administrator

0 投票
2 回答
547 浏览

java - 如何从基于 Java 的 Web 应用程序向 asp.net mvc 应用程序提交键值对象

这个问题与跨基于 JSP/Servelet 的 Web 应用程序和基于 ASP.NET MVC 的 Web 应用程序的跨站点提交有关。我可以将 ASP.NET Web 项目中的 NameValueCollection 对象提交到另一个 ASP.NET MVC 项目,如下所示。

ASP.NET MVC 项目有一个 WebAPI 正在捕获这个提交,如下所示。

我的 ViewModel 定义如下

所以现在我需要用基于 Java 的 Web 应用程序替换我的第一个 ASP.NET MVC 应用程序正在调用的 WebProject。如何使用备用 JAVA 类代替 WebClient 完成相同的提交,并将 NameValueCollection 类型提交到同一个 ASP.NET MVC 应用程序?这个提交应该被上面的 ASP.NET MVC 应用程序通过 ViewModel 接受

0 投票
0 回答
213 浏览

javascript - 在父窗口和 iFrame 之间转发 javascript 调用的简单方法

我们最初有一个带有 HTML 下拉菜单和 Applet 的网页。这些下拉菜单中的每一个都会触发一个调用applet 函数的javascript 函数。小程序还调用 javascript 函数来启用/禁用下拉菜单。

问题是 HTML 下拉菜单被 applet 截断,因为大多数浏览器忽略了 applet 的 z-index。我发现的唯一解决方案是将 Applet 放入 iFrame。

现在所有被 HTML 下拉触发的小程序的 javascript 调用都被破坏了。Applet 调用的 Javascript 现在已损坏。

所有 javascript 函数都存储在父窗口中加载的一个大 javascript 文件中。

我一直在做这样的事情,但这将是很多工作并且会使维护变得困难:

这工作正常,但我相信我还需要在父窗口和 IFRAME 网页上创建包装 javascript 函数。此外,我们的 javascript 函数正在使用 jQuery 通过 ID 访问 HTML 下拉元素,这也需要重构。这将是太多的工作。

那么有没有更简单的方法在父窗口和 IFRAME 之间调用 javascript?我想避免在父窗口和 iframe 对象之间进行所有这些函数映射。所有 javascript 函数都存储在一个加载在父窗口中的 javascript 文件中。

只想补充一点,HTML 下拉菜单位于父窗口中,而 Applet 位于 iFrame 中。这是下拉菜单不会被 Applet 截断的唯一方法。

提前致谢。

0 投票
2 回答
4310 浏览

django - Django 有效 XSS 攻击示例

我发现 Django 在处理 XSS 攻击方面非常强大,我只是在模板 xss_form.html 处编写了一个简单的文本字段表单:

在 view.py 中:

那么大家知道在文本框输入一些脚本,可以让浏览器弹出一个警告框吗?

谢谢!

0 投票
1 回答
152 浏览

javascript - Storing data client-side from one page to fill out a form on the other site

I'd like to help the visitors to my site to fill out a form on the other site (beyond control) using the data, generated on my site.

It would be possible to use a bookmarklet to post the data to the form while the user is on my site, but the form is some clicks behind the authentication. Considering that a bookmarklet may read only what's been stored (cookie, session, storage) while on the current site, it is not possible to use the bookmarklet on the other site to fill out the form with data, stored while on my site.

Please, suggest any javascript, client-side solutions of this. Like a bookmarklet or something similar.

Thank you.

0 投票
1 回答
358 浏览

php - 如何通过阅读它们的 Div-Contents 来获取网站数据

我知道 API,但我正在寻找更通用的解决方案。

有了这个代码,我得到了一个外国网站的 DIV 结构。

但 Javascript 不会填充内容。它也不能与包含一起使用。是否有可能读取有关浏览器的数据?像眼睛一样吗?