0

所以我有一个特定于站点的书签,它创建一个带有工具栏的页面(使用 localstorage 来设置/获取变量),然后为目标站点创建一个 iframe,比如说www.example.com。[想法大量借鉴了精彩的 RWD 书签 ( http://responsive.victorcoulon.fr/ )]。它工作得很好,但我想提供一个指向该书签的可点击链接(因为在 Ipad 中添加书签很痛苦),但不幸的是,这会导致明显的 XSS 跨站点问题,因为链接不在www.example.com.

为了改善这种体验,我想知道是否有可能有一个弹出窗口(如 twitter 的)来利用loadScript当前存在于www.example.com. 我目前可以从 javascript 控制台www.example.com中调用 asupervar.loadScript("http://dl.dropboxusercontent.com/s/blah/thefile.js")并且它可以工作。这意味着我不需要将 js 附加或交叉加载到 iframe 中,但我需要 iframe 本身来调用supervar.loadScript调用。

可以在 window.onload/document.ready 类型场景中调用 supervar.loadScript,或者弹出代码的上下文是否指向 about:blank/notexample.com 在这种情况下supervar不存在。能window.postMessage有什么用吗?

更新:澄清

我正在尝试拥有一个包含 javascript 代码的按钮,该代码反过来会打开一个新窗口/选项卡到站点,但能够在 DOM 准备好时对将出现的变量调用命令。同样,我对 XSS 很陌生,所以我不确定这是否是网站上的安全问题。我不是试图从一个站点访问到下一个站点的变量,只是一种在站点上加载用户脚本而无需使用书签的方法。

对于真正的测试:

访问:firsttaste.kraftcanada.com。打开 javascript 控制台,然后输入: nitroWidget.loadScript("https://dl.dropboxusercontent.com/s/fcfbpfdmzrxywh9/mwolfe_alert.js") 这将执行 mwolfe_alert.js,其中仅包含一条警报消息。

有没有一种方法可以在 *.kraftcanada.com 之外的站点上创建一个可点击的链接,这将创建一个弹出/新选项卡,在 {document,window,$}.onload/read 上会调用 nitroWidget.loadScript?

4

0 回答 0