禁用firefox同源策略

我正在开发一个本地研究工具,要求我closuresFirefox的同源策略(就脚本访问而言,我不太在乎跨域请求)。

更具体地说,我希望主机域中的脚本能够访问页面中embedded的任何iframe中的任意元素,而不pipe它们的域是什么。

我知道以前的问答提到了CORS FF扩展,但这不是我所需要的,因为它只允许CORS,而不是脚本访问。

如果不能轻易完成的话,我还要感谢任何见解,指向我可以修改以禁用SOP的FF src代码的特定部分,以便我可以重新编译FF。

有一个Firefox扩展,将CORS头添加到2015年3月5日发布的最新版Firefox( build 36.0.1 )上的任何HTTP响应中。 我testing了它,它可以在Windows 7和Mavericks上运行。 我会引导你完成工作的步骤。

1)获得扩展

你可以从这里 (作者构build)或从这里 (镜像,可能不会更新)下载xpi。

或从GitHub下载文件 。 现在它也在Firefox Marketplace上: 在这里下载 。 在这种情况下,单击“安装”后会安装插件,您可以跳到步骤4。

如果你下载了xpi,你可以跳到第3步。如果你从GitHub下载了zip,请转到第2步。

2)build立xpi

你需要提取zip文件,进入“cors-everywhere-firefox-addon-master”文件夹,select所有项目并压缩它们。 然后,将创build的zip重命名为* .xpi

注意:如果你使用的是OS X的gui,它可能会创build一些隐藏的文件,所以你最好使用命令行。

3)安装xpi

你可以将xpi拖放到firefox中,或者转到:“about:addons”,点击右上angular的cog,select“从文件中添加”,然后select你的.xpi文件。 现在,重新启动Firefox。

4)让它工作

现在,扩展将不会默认工作。 您需要将扩展​​名图标拖到扩展栏上,但不用担心。 有图片!

  • 点击Firefox菜单
  • 点击自定义

P1

  • 将CorsE拖到栏中
  • 现在,点击图标,当它是绿色时,CORS标题将被添加到任何HTTP响应中

P2

5)testing它是否工作

jQuery的

$.get( "http://example.com/", function( data ) { console.log (data); }); 

JavaScript的

 xmlhttp=new XMLHttpRequest(); xmlhttp.onreadystatechange = function() { if (xmlhttp.readyState == 4) { console.log(xmlhttp.responseText); } } xmlhttp.open("GET","http://example.com/"); xmlhttp.send(); 

6)最后的考虑

请注意, https到http是不允许的 。

可能有办法解决这个问题,但这是背后的问题。

 about:config -> security.fileuri.strict_origin_policy -> false 

我意识到我的旧答案是downvoted,因为我没有具体说明如何禁用FF的相同的来源政策。 在这里我会给出更详细的答案:

警告:这需要重新编译FF,而新编译的Firefox版本将不能再次启用 SOP。

查看Mozilla的Firefox源代码,在src目录中findnsScriptSecurityManager.cpp。 我将使用这里列出的例子: http : //mxr.mozilla.org/aviarybranch/source/caps/src/nsScriptSecurityManager.cpp

转到function实现nsScriptSecurityManager :: CheckSameOriginURI,这是线路568截至date03/02/2016。

使该函数总是返回NS_OK。

这将会禁用SOP。

@Giacomo的浏览器插件答案应该对大多数人有用,而且我已经接受了这个答案,但是,对于我个人的研究需求(TL;这里不解释),这是不够的,我认为其他研究人员可能需要做什么我在这里完全杀了SOP。

截至2016年9月这个插件是最好的禁用CORS : https : //github.com/fredericlb/Force-CORS/releases

在选项面板中,您可以configuration要注入哪个标题以及自动启用特定网站。

在这里输入图像描述

我写了一个附件来克服这个问题在Firefox(Chrome,Opera版本将很快)。 它与最新的Firefox版本,与美丽的用户界面和支持JS正则expression式: https : //addons.mozilla.org/en-US/firefox/addon/cross-domain-cors

在这里输入图像描述

Interesting Posts