当前位置: 首页 > article >正文

Nginx防止点击劫持:X-Frame-Options

就是你的页面,被别人网站在iframe标签中引用了。我看到很多的所谓AI绘画的网站,其实它就是通过iframe引用了别人的AI绘画的页面。

网站被别人的iframe标签中引用,还不是最坏的,更可恶的是,它通过iframe标签向我们的网站注入外部的JS脚本。为什么可以这样子,因为iframe引用网站,相当于浏览器另外打开了个窗口,对浏览器来说,是同源的。那么它就可以通过js操作DOM,往这个iframe引用的网站页面写入<script>标签,从而注入外部的JS脚本。哪怕你在Nginx的内容安全策略CSP写明了script-src 'self',也就是执行的js脚本只能是本页面的js脚本,都于事无补,这种漏洞就叫做点击劫持,就相当于你的页面被别人劫持了。

所以nginx的响应头应该添加:

http {
	add_header X-Frame-Options DENY;
}

就是禁止页面被iframe引用,X-Frame-Options还有常用的另一个值:SAMEORIGIN,就是页面可以被iframe引用,但只能是同域名的iframe引用,其他域名的ifame标签不能引用这个页面。

http {
	add_header X-Frame-Options sameorigin always;
}

为什么要加always,因为Nginx的add_header只对状态码为2xx,3xx才有效,对4xx,5xx的不起作用,Nginx文档是对于add_header建议加上always
在这里插入图片描述

还有就是前端页面的标签不再支持添加 X-Frame-Options 头,必须在服务器设置,如果配置了HAProxy,同样是要配置在响应头添加X-Frame-Options


http://www.kler.cn/a/501903.html

相关文章:

  • 通过外部化 `config.properties` 文件更换数据库配置
  • 【机器学习案列】学生抑郁可视化及预测分析
  • SpringCloud系列教程:微服务的未来(十一)服务注册、服务发现、OpenFeign快速入门
  • Linux--CPU系统资源命令查看--详解
  • 计算机网络 笔记 数据链路层3(局域网,广域网,网桥,交换机)
  • Kutools for Excel 简体中文版 - 官方正版授权
  • 【IDEA版本升级JDK21报错方法引用无效 找不到符号】
  • 【Ubuntu与Linux操作系统:三、用户与组管理】
  • 【Linux】深刻理解软硬链接
  • KylinV10安装CDH6.3.1
  • SpringBoot 基础学习
  • 蓝桥杯_B组_省赛_2022(用作博主自己学习)
  • 人工智能:人形机器人的开发需求会创造哪些热门的就业岗位?
  • 基于深度学习的视觉检测小项目(十二) 使用线条边框和渐变颜色美化界面
  • JSON转EXCEL
  • 《零基础Go语言算法实战》【题目 2-27】goroutine 的使用问题
  • MPLS原理及配置
  • 【SpringBoot】用一个常见错误说一下@RequestParam属性
  • 解锁“搭子小程序”开发新机遇,助力企业数字化转型
  • 【SH】Xiaomi9刷Windows10系统研发记录 、手机刷Windows系统教程、小米9重装win10系统
  • HTML实战课堂之简单的拜年程序
  • 4G、5G移远模块SIM卡热插拔问题解决
  • 10.Linux 时间
  • 一文讲解常见API开发工具
  • 【机器学习:十、神经网络概述】
  • 1. 初识Scala