【问题标题】:Elevating a browsers javascript permission?提升浏览器的javascript权限?
【发布时间】:2009-01-22 19:44:31
【问题描述】:

我正在开发一个内部工具,我记得有一些方法可以让您的脚本提示提升权限,如果被接受,允许跨站点请求等...由于这是一个内部工具,这可能会完成我需要的东西。

有人知道怎么做吗?

为了详细说明,我实际上是在尝试读取(在 javascript 中)注入我们页面的第 3 方跟踪 iframe 的内容,以提供一些性能分析信息。这些 iframe 显然来自不同的域。如果我要代理他们,他们将不再提供准确的信息,因此该选项已失效。

【问题讨论】:

    标签: javascript xss


    【解决方案1】:

    我认为您实际上不能让您的脚本请求提升权限,但您可以检查它并要求用户在需要时更改其浏览器安全级别。

    Mozilla.org 有一篇关于可配置安全策略的有趣文章:http://www.mozilla.org/projects/security/components/ConfigPolicy.html

    如果您只需要绕过同源策略,您可以使用其他技巧,例如服务器端代理。

    【讨论】:

    • 接受这是最好的建议。
    • flyswat - 这里有更好的建议 -> 尝试了解 javascript 如何以及为什么使用它的权限运行。如果 javascript 不在沙箱中,您的沙箱可能会因访问网站而被黑客入侵。
    【解决方案2】:

    对于 Firefox/Mozilla,我认为您的意思是 netscape.security.PrivilegeManager.enablePrivilege() 就像在这个 other question 中一样。

    您需要 UniversalBrowserRead 权限才能允许跨站点 AJAX。 (我用它为一个简单的股票行情页面构建了一组本地文件,该页面从雅虎的财务服务中获取数据。当您第一次在该页面上运行浏览器时,浏览器会询问您(用户)是否要授予权限。您不必再次授予权限,直到您重新启动浏览器并再次阅读同一页面。)

    【讨论】:

    • 是的,只有在脚本签名后才能在托管环境中工作,但由于其他几个原因,我不能这样做。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-08-27
    • 1970-01-01
    • 2023-04-09
    • 1970-01-01
    • 1970-01-01
    • 2016-01-04
    • 1970-01-01
    相关资源
    最近更新 更多