我有一个客户在Win 2k3 R2上使用ColdFusion 10和IIS 7.5。 ColdFusion管理员使用框架。当我登录CF管理员时,我在Chrome和IE中看到一个空白的白色屏幕,我看到一条消息告诉我:
此内容无法在框架中显示
为帮助保护您在本网站上输入的信息的安全性,此内容的发布者不允许将其显示在框架中。
我在chrome dev控制台中看到了一条消息(每帧1个):
拒绝在相框中显示“http://localhost/CFIDE/Administrator/navserver.cfm”,因为它将“X-Frame-Options”设置为“DENY”。
查看Chrome中的响应标头,我可以看到它设置为DENY。
我无法弄清楚这是从哪里来的。此服务器上的所有站点现在都在输出此标头。我从未明确配置任何输出此标头的内容。我知道CF不会在补丁中这样做,因为它会破坏自己的管理界面。
IIS的根服务器范围的配置HTTP响应标头没有设置X-Frame-Options,也没有任何已配置的网站。
如果我明确添加X-Frame-Options标头并将其设置为sameorigin,我会看到两个标头(deny和sameorigin)。
客户端的安全团队是否可能安装了一些可以注入此标头的软件?
我正在访问localhost上的网站,所以我无法想象它是导致问题的网络设备。它必须在服务器上,对吗?
有什么想法吗?
答案 0 :(得分:2)
这可以在ColdFusion中设置,假设它已被锁定。顺便拜访 (instancename)/wwwroot/WEB-INF/web.xml用于clickjack周围的规则。可能看起来像这样:
{{1}}
测试这是否是由IIS引起的另一种方法是设置具有直接HTML页面的帧样本,如果它工作,则块处于ColdFusion级别。如果直接HTML不起作用,则会发生在IIS或其他服务器位置。
在IIS中,HTTP响应标头可以在服务器范围内设置(影响所有站点)和/或站点范围(仅影响当前站点)。
再次阅读你的问题,我发现我可能没有帮助过你。祝你好运。