nginx-安全防护、跨域、XSS攻击、点击劫持攻击

通过nginx失效安全防护

防止跨域-请求头Content-Security-Policy

CSP配置

add_header Content-Security-Policy "default-src 'self' 'unsafe-inline' 'unsafe-eval' blob: data: ;";

CSP参数解释

  • default-src 'self':不允许跨源,所有内容均来自网站的自己的域
  • 'unsafe-inline':允许加载 inline 资源,例如style属性、onclick、inline js、inline css等
  • 'unsafe-eval':允许加载动态 js 代码,例如 eval()
  • blob: :允许浏览器中创建和处理二进制数据,Blob对象是一种二进制数据类型,通常,Blob对象用于在浏览器中处理大量的数据或文件
  • data: :允许加载 data: 协议,例如:base64编码的图片

CSP指令

指令值 说明
* 允许加载任何内容
'none' 不允许加载任何内容
'self' 允许加载相同源的内容
www.a.com 允许加载指定域名的资源
*.a.com 允许加载 a.com 任何子域名的资源
https://a.com 允许加载 a.com 的 https 资源
https: 允许加载 https 资源
data: 允许加载 data: 协议,例如:base64编码的图片
'unsafe-inline' 允许加载 inline 资源,例如style属性、onclick、inline js、inline css等
'unsafe-eval' 允许加载动态 js 代码,例如 eval()

防止跨站脚本攻击(XSS)-请求头X-Xss-Protection

配置

add_header X-Xss-Protection "1;mode=block";

解释

如果页面中检测到跨站脚本攻击(XSS),浏览器将关闭脚本执行,并显示一个安全提示消息,而不是执行恶意脚本。

跨站脚本攻击(XSS)-请求头X-Content-Type-Options

配置

add_header X-Content-Type-Options nosniff;

解释

当服务器发送一个不包含Content-Type头的响应时,一些浏览器会尝试猜测响应内容的类型。这被称为"sniffing"。

nosniff选项告诉浏览器不要尝试这种猜测,而是始终按照响应的Content-Type头来处理内容。这可以防止某些类型的跨站脚本攻击(XSS)。

防止点击劫持攻击-请求头X-Frame-Options

配置

add_header X-Frame-Options SAMEORIGIN;

解释

用于控制页面是否允许在iframe、embed或object中嵌入。

  • SAMEORIGIN:只允许在相同域名的页面中嵌入。
  • DENY:不允许在任何页面中嵌入。
  • ALLOW-FROM uri:这是一个被弃用的指令,不再适用于现代浏览器,请不要使用它。在支持旧版浏览器时,页面可以在指定来源的 frame 中展示。
相关推荐
志栋智能9 小时前
超自动化安全:构建智能安全运营的核心引擎
大数据·运维·服务器·数据库·安全·自动化·产品运营
星幻元宇VR9 小时前
VR航空航天科普设备【VR时空直升机】
科技·学习·安全·生活·vr
weixin_5142531810 小时前
428-uitars tmux
安全·web安全
a8a30213 小时前
Laravel9.x新特性全解析
运维·spring boot·nginx
KKKlucifer14 小时前
日志审计与行为分析在安全服务中的应用实践
网络·人工智能·安全
L16247616 小时前
Nginx 6 种发布方式(滚动发布、蓝绿发布(Blue/Green)、金丝雀发布(Canary 灰度)等) 实操全集(配置 + 分步操作 + 回滚)
运维·nginx
a8a30216 小时前
Laravel5.x进化史:核心特性全解析
nginx·php·laravel
ykjhr_3d16 小时前
vr电力安全培训系统有哪些
安全·vr·华锐视点
枷锁—sha17 小时前
【CTFshow-pwn系列】03_栈溢出【pwn 073】详解:静态编译下的自动化 ROP 链构建
网络·汇编·笔记·安全·网络安全·自动化
VBsemi-专注于MOSFET研发定制17 小时前
面向高可靠与能效需求的安全存储系统功率器件选型策略与适配手册
安全