栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

关于在Nginx中配置HTTP安全响应头可能会导致的一些问题

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

关于在Nginx中配置HTTP安全响应头可能会导致的一些问题

关于在Nginx中配置HTTP安全响应头可能会导致的一些问题

上篇文章讲到了最近在实际开发过程中需要对项目的http响应头做一些配置,以防止各类XSS攻击、点击劫持等。在实际配置过程种,发现部分配置加上之后会导致页面部分资源比如图片image,表单样式css等无法正常加载,现记录如下。

1.Content-Security-Policy(CSP)

CSP 是一个计算机的安全标志,主要用来防止 XSS、点击劫持、SQL 注入等攻击;CSP 通过定义运行加载脚本的位置和内容防止恶意代码的加载。这个配置往往用于定义页面可以加载哪些资源,减少和上报 XSS 的攻击,防止数据包嗅探攻击。
实际配置过程中发现如果简单的将属性配置为default-src 'self‘',可能会导致部分css表单样式无法加载,使得页面布局乱掉。

推荐配置方法:

add_header Content-Security-Policy "default-src 'self' example.com(按实际需求修改) 'unsafe-inline' 'unsafe-eval' blob: data: ;";
5.X-Content-Type-Options

X-Content-Type-Options HTTP 消息头相当于一个提示标志,被服务器用来提示客户端一定要遵循在 Content-Type 首部中对 MIME 类型 的设定,而不能对其进行修改。这就禁用了客户端的 MIME 类型嗅探行为。

作用:禁用浏览器的 Content-Type 猜测行为。

使用方法:

# add_header X-Content-Type-Options  "nosniff";

这个配置在使用过程中碰到的问题是最多的,该配置可能会带来以下问题:
1.将X-Content-Type-Options设置为nosniff时,您还必须在NGINX中设置允许的MIME资源类型,需要在nginx.conf配置文件(或者在http配置模块,server配置模块)中加上如下两行配置

include /etc/nginx/mime.types;
default_type application/octet-stream;

2.后台返回的资源类型必须与页面中定义的资源类型严格保持一致,否则也会导致资源无法加载。
比如我在配置时发现,后台返回一张图片image格式为.jpeg格式,而页面中引用时如果图片标签为,那么这个配置会检测到响应的MIME类型与请求的类型不符。

3.一个特殊的例子
在X-Content-Type-Options配置为nosniff的情况下,css样式中引用了.gif格式的图片也会无法正常加载,改为.png格式后就可以正常加载出来。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/882037.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号