我们有一个IIS7网站页面,可通过iframe通过第三方网站访问该页面。直到几天前,它一直工作正常,但Chrome出现以下错误:
拒绝在框架中显示“ https://xxxxxxxx”,因为它已设置 从“ X-Frame-Options”更改为“ deny”。
Edge报告的错误略有不同,但从本质上讲,它报告无法访问该目标网站上的字体。
现在,我已经检查了web.config
文件,并且没有在任何位置设置了“ x-frame-options”的自定义标头,但是我们确实将“ x-xss-protection”标头设置为'1;模式=阻止”。我试过删除该块
X-XSS-Protection 1;
但是我得到:
无法加载资源:服务器响应状态为400 (错误请求)
我还完全删除了整个x-xss标头,这使我回到了原始消息中。然后,我手动添加
X-Frame-Options Allow-From https://xxxxxx
拒绝在框架中显示“ https://xxxxxx”,因为它设置了多个 具有冲突值的“ X-Frame-Options”标头(“ DENY,allow-from https://xxxxxx')。退回到“拒绝”状态。
您知道“拒绝”的x帧选项来自何处吗?我已经将web.config加载到编辑器中,但它肯定在那里找不到该头文件。
由Lex Li提供,我打开了“失败的请求跟踪”,并在日志中找到了它:
但是它在哪里引用x-frame-options?我的web.config中也不存在Set-Cookie标头,因此它必须在其他位置。
谢谢
答案 0 :(得分:0)
此问题已通过卸载Windows更新KB4532931得到了解决,不确定确切的详细信息,因为来自MS的.net漏洞的描述是通用的(远程执行)。
答案 1 :(得分:0)
我们在IIS7网站页面上也遇到了同样的错误,该页面通过第三方网站通过iframe访问。我们将此问题追溯到应用于Web服务器的补丁KB4532931。回滚该补丁可以解决此问题。我们目前正在寻找更永久的解决方案。