• Web安全 之 XFrameOptions响应头配置


    项目检测时,安全报告中存在 “X-Frame-Options” 响应头缺失问题,显示可能会造成跨帧脚本编制攻击,如下:
     
    经过查询发现:

    X-Frame-Options:值有三个:
      (1)DENY:表示该页面不允许在 frame 中展示,即便是在相同域名的页面中嵌套也不允许。
      (2)SAMEORIGIN:表示该页面可以在相同域名页面的 frame 中展示。(常用)
      (3)ALLOW-FROM https://example.com/:表示该页面可以在指定来源的 frame 中展示。

    目前用到的解决办法:

    1、配置Apache:
      (如果是在本地的话,就是在httpd.conf里面配置;如果是linux(ubuntu的话)就是在apache2.conf里面),找个空的位置加入这行代码,具体看你是选择哪种

      Header always append X-Frame-Options SAMEORIGIN 
    

    有可能会遇到一种情况,就是我在服务端配置完apache之后,尝试 Restart Apache 但是报了一个错误:

    Invalid command ‘Header’, perhaps misspelled or defined by a module not included in the server configuration

      header的方法模块没有安装,我们需要先自行安装一下:

      先输入 a2enmod heade ,然后需要重启一下Apache,输入service apache2 restart

    2、配置Nginx:

      配置 nginx 发送 X-Frame-Options 响应头,把下面这行添加到 'http', 'server' 或者 'location' 的配置中:

      add_header X-Frame-Options SAMEORIGIN
    

    3、配置IIS:

      配置 IIS 发送 X-Frame-Options 响应头,添加下面的配置到 Web.config 文件中:

    <system.webServer>

        <httpProtocol>
          <customHeaders>
            <add name="X-Frame-Options" value="SAMEORIGIN" />
          </customHeaders>
        </httpProtocol>
    

    </system.webServer>

    4、在服务端设置的方式如下:
    Java代码:
    response.addHeader("x-frame-options","SAMEORIGIN");

  • 相关阅读:
    [剑指Offer] 从尾到头打印链表
    [剑指Offer] 替换空格
    [剑指Offer] 二维数组中的查找
    [LeetCode] 53. Maximum Subarray
    [LeetCode] 283. Move Zeroes
    haproxy + rabbitmq + keepalived的高可用环境搭建
    iis7下站点日志默认位置
    在vs2012中配置使用iisexpress
    tomcat配置域名,单项目指定多域名
    httpget和post
  • 原文地址:https://www.cnblogs.com/liu01321/p/13446992.html
Copyright © 2020-2023  润新知