X-Frame-Options报头缺失
缺失 Options Frame
2023-06-13 09:15:05 时间
点击挟持
点击劫持(用户界面纠正攻击、用户界面纠正攻击、用户界面纠正攻击)是一种恶意技术,它诱使Web用户点击与用户所点击内容不同的内容,从而可能在点击看似无害的网页时泄露机密信息或控制其计算机。 服务器没有返回x-frame-options头,这意味着该网站可能面临点击劫持攻击的风险。x-frame-options HTTP响应头可用于指示是否允许浏览器呈现框架或iframe中的页面。网站可以通过确保其内容不嵌入其他网站来避免点击劫持攻击
修复方案如下:
修改web服务器配置,添加X-frame-options响应头。赋值有如下三种:
(1)DENY:不能被嵌入到任何iframe或frame中。
(2)SAMEORIGIN:页面只能被本站页面嵌入到iframe或者frame中。
(3)ALLOW-FROM uri:只能被嵌入到指定域名的框架中。
一般我们选择使用 SAMEORIGIN : response.setHeader(“X-Frame-Options”, “SAMEORIGIN”);即可解决该安全问题。
下面是两个测试: 百度的响应头包含X-Frame-Options,如下:
测试代码:
<iframe style="width:200px;height:200px;" src="https://www.baidu.com">
</iframe>
效果:
可以看到百度无法被嵌入到我们网站中,控制台有报错如下:
再换到CSDN测一下,截止到我测试的时间,CSDN是没有设置这个头的,测试代码如下:
<iframe style="width:200px;height:200px;" src="https://www.csdn.net/">
</iframe>
结果是CSDN可以被成功潜入进来。效果如下:
Q.E.D.
相关文章
- 0886-7.1.7-Hive1与Hive3中Decimal数据计算结果精度缺失问题分析
- 超干!Gain 算法实现缺失值预测
- SQL复制(导出)数据到excel行数缺失解决方案
- 计算机教育中缺失的一课,劝学弟学妹们一句,一定要趁早补上,工作后会事半功倍!「建议收藏」
- 【说站】python如何查找缺失的参数
- 机器学习基础:缺失值的处理技巧(附Python代码)
- dropna()删除缺失值_pandas的dropna方法
- 剑指 Offer 53 - II. 0~n-1中缺失的数字
- 创建oracle数据库时,出现ORA-00922: 选项缺失或无效详解数据库
- maven-war-plugin 插件 web.xml 缺失时忽略详解编程语言
- mssql缺失,服务受阻!(服务中没有mssql)
- 器SQL Server缺失:服务器怎么办?(sqlserver缺服务)
- Oracle数据库中的元数据丢失问题(oracle 元数据缺失)
- Oracle中利用NVL函数实现数据缺失处理(oracle中函数nvl)
- Redis订阅发布的缺失发现隐患与风险(redis订阅发布的缺点)
- Facebook推开源软件平台ParlAI,能否解决机器人灵魂缺失问题?