web前端安全性——iframe安全问题

1、概念

iframe安全问题可称作界面劫持,像点击劫持、拖放劫持、触屏劫持。就是我们的点击,拖放,触屏操作被劫持了,而去操作了其它的透明隐藏的界面。
**原理是利用透明层iframe,使用了CSS中的opacity或z-index等属性,来到达透明和位于其它界面的上方,然后使用iframe来嵌入劫持页面。**到达了用户操作的不是它看到的界面,不是他以为的那个界面,而是那个透明的位于上层的界面。
代码:
黑客可能会尝试在一个隐藏的iframe中嵌入你的页面,并诱使用户在该iframe上进行操作。
html

	<body style="height: 100%; margin: 0;"><iframe width="100%" height="100%" frameborder="0" src="https://www.taobao.com/"></iframe><div id="box">黑客网站</div></body>

css

			#box {width: 100%;height: 100%;position: fixed;left: 0;top: 0;background: transparent;opacity: 0}

2、界面劫持的防范

(1)前端防护
将下面这段代码放到网站页面的body标签前

主要用于检查当前页面是否在一个iframe中。如果是,它会尝试将顶级窗口(top)的URL设置为当前窗口(self)的URL,从而尝试从iframe中“跳出”到主页面。这样别人在通过iframe框架引用你的网站网页时,浏览器会自动跳转到你的网站所引用的页面上。这通常也是为了防止点击劫持攻击。

		<script>if(top.location!=self.location){top.location=self.location;}</script>

(2)服务器防护
使用X-Frame-Options防止网页被iframe,X-FRAME-OPTIONS是微软提出的一个http头,专门用来防御利用iframe嵌套的点击劫持攻击

DENY   //拒绝任何域加载(不允许任何页面通过iframe嵌入当前页面)
SAMEORIGIN   // 允许同源域下加载(只有同源的页面才能通过iframe嵌入)
ALLOW-FROM   // 可以定义允许iframe加载的页面地址

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/697187.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

快速构建 Debezium MySQL Example 数据库

博主历时三年精心创作的《大数据平台架构与原型实现&#xff1a;数据中台建设实战》一书现已由知名IT图书品牌电子工业出版社博文视点出版发行&#xff0c;点击《重磅推荐&#xff1a;建大数据平台太难了&#xff01;给我发个工程原型吧&#xff01;》了解图书详情&#xff0c;…

突破编程_C++_面试(指针(1))

面试题 1 &#xff1a;什么是空指针&#xff1f; 在 C 中&#xff0c;空指针是一个特殊的指针值&#xff0c;它不指向任何有效的内存地址。空指针通常用于表示指针不指向任何对象或函数。在C11及以后的版本中&#xff0c; nullptr 是表示空指针的推荐方式。 nullptr 是一个指针…

AI绘画与修图:重塑数字艺术的新纪元

文章目录 一、AI绘画与修图的原理二、AI绘画的应用三、AI修图的优势四、面临的挑战五、未来发展趋势《AI绘画与修图实战&#xff1a;PhotoshopFirefly从入门到精通 轻松玩转AI绘画与修图实战》亮点内容简介作者简介 随着人工智能技术的飞速发展&#xff0c;AI绘画与修图已经成为…

如何理解和区分训练集、测试集和验证集

如何理解和区分训练集、测试集和验证集 &#x1f308; 个人主页&#xff1a;高斯小哥 &#x1f525; 高质量专栏&#xff1a;Matplotlib之旅&#xff1a;零基础精通数据可视化、Python基础【高质量合集】 &#x1f4a1; 创作高质量博文&#xff0c;分享更多关于深度学习、PyTor…

靡语IT:Vue精讲(一)

Vue简介 发端于2013年的个人项目&#xff0c;已然成为全世界三大前端框架之一&#xff0c;在中国大陆更是前端首选。 它的设计思想、编码技巧也被众多的框架借鉴、模仿。 纪略 2013年&#xff0c;在Google工作的尤雨溪&#xff0c;受到Angular的启发&#xff0c;从中提取自…

soc(十七) SOC市场分类

桌面服务器集中式服务器架构和基于ARM微服务器架构的存储差别在哪&#xff1f; http://www.dostor.com/p/54167.html 手机飞行器汽车家庭监控安防路由器

【前端素材】推荐优质后台管理系统Protable平台模板(附源码)

一、需求分析 后台管理系统是一种用于管理和监控网站、应用程序或系统的在线工具。它通常是通过网页界面进行访问和操作&#xff0c;用于管理网站内容、用户权限、数据分析等。当我们从多个层次来详细分析后台管理系统时&#xff0c;可以将其功能和定义进一步细分&#xff0c;…

华为配置CAPWAP双栈覆盖业务示例

配置CAPWAP双栈覆盖业务示例 组网图形 图1 配置CAPWAP双栈覆盖业务示例组网图 业务需求组网需求数据规划配置思路配置注意事项操作步骤配置文件 业务需求 企业用户接入WLAN网络&#xff0c;以满足移动办公的最基本需求。且在覆盖区域内移动发生漫游时&#xff0c;不影响用户的业…

解决 PLC QModbusTcpClient 通信自动断开

项目场景&#xff1a; 提示&#xff1a;这里简述项目相关背景&#xff1a; 例如&#xff1a;项目场景&#xff1a;QModbusTcpClient 通信 问题描述 提示&#xff1a;这里描述项目中遇到的问题&#xff1a; QModbusTcpClient 连接后&#xff0c;稍微停一段时间&#xff0c;就…

LeetCode10. Regular Expression Matching——完全背包

文章目录 一、题目二、题解 一、题目 Given an input string s and a pattern p, implement regular expression matching with support for ‘.’ and ‘*’ where: ‘.’ Matches any single character.​​​​ ‘*’ Matches zero or more of the preceding element. The…

【selenium】三大切换 iframe 弹窗alert 句柄window 和 鼠标操作

目录 一、iframe 1、切换方式&#xff1a; 1、第一种情况&#xff1a; 2、第二种情况&#xff1a; 方式1: 先找到iframe&#xff0c;定位iframe元素&#xff08;可以通过元素定位的各种方式&#xff1a;xpath&#xff0c;css等等&#xff09;&#xff0c;用对象接收&…

MyBatis Plus中的动态表名实践

随着数据库应用的不断发展&#xff0c;面对复杂多变的业务需求&#xff0c;动态表名的处理变得愈发重要。在 MyBatis Plus&#xff08;以下简称 MP&#xff09;这一优秀的基于 MyBatis 的增强工具的支持下&#xff0c;我们可以更便捷地应对动态表名的挑战。本文将深入研究如何在…

美创新一代数据安全管理平台宣传片「龍」重登场

美创新一代数据安全管理平台&#xff08;DSM Cloud&#xff09;产品宣传片 国产化、混合多云环境催生愈加复杂的数据安全防护、管理及可持续运营挑战。 美创新一代数据安全管理平台&#xff08;DSM Cloud&#xff09;&#xff0c;围绕韧性数据安全体系&#xff0c;聚焦全域数据…

[HTML]Web前端开发技术27(HTML5、CSS3、JavaScript )JavaScript基础——喵喵画网页

希望你开心&#xff0c;希望你健康&#xff0c;希望你幸福&#xff0c;希望你点赞&#xff01; 最后的最后&#xff0c;关注喵&#xff0c;关注喵&#xff0c;关注喵&#xff0c;佬佬会看到更多有趣的博客哦&#xff01;&#xff01;&#xff01; 喵喵喵&#xff0c;你对我真的…

activeMq将mqtt发布订阅转成消息队列

1、activemq.xml置文件新增如下内容 2、mqttx测试发送&#xff1a; 主题&#xff08;配置的模糊匹配&#xff0c;为了并发&#xff09;&#xff1a;VirtualTopic/device/sendData/12312 3、mqtt接收的结果 4、程序处理 package comimport cn.hutool.core.date.DateUtil; imp…

ReactNative进阶(二十三)error: no type or protocol named ‘RCTBridgeModule’问题修复

文章目录 一、前言三、拓展阅读 一、前言 Jenkins组包RN技术栈实现的iOS应用时&#xff0c;遇到以下错误提示信息&#xff1a; error: no type or protocol named ‘RCTBridgeModule’ interface RCTEventDispatcher : NSObject <RCTBridgeModule>error: cannot find i…

【AIGC】基于深度学习的图像生成与增强技术

摘要&#xff1a; 本论文探讨基于深度学习的图像生成与增强技术在图像处理和计算机视觉领域的应用。我们综合分析了主流的深度学习模型&#xff0c;特别是生成对抗网络&#xff08;GAN&#xff09;和变分自编码器&#xff08;VAE&#xff09;等&#xff0c;并就它们在实际应用中…

嵌入式linux开发 (三十四) 内存管理2.0(6) 各种段(.code .rodata .data .bss .stack .heap)的含义

我们知道, 逻辑程序在连接的时候在elf 文件中会有 .code .rodata .data 然后在内存中才会有 .code .rodata .data那么为什么链接器在链接生成的elf文件中会有这些段呢?这涉及到链接器的历史问题

小程序性能优化

背景 在开发小程序的过程中我们发现&#xff0c;小程序的经常会遇到性能问题&#xff0c;尤其是在微信开发者工具的时候更是格外的卡&#xff0c;经过排查发现&#xff0c;卡顿的页面有这么多的js代码需要加载&#xff0c;而且都是在进入这个页面的时候加载&#xff0c;这就会…

Java架构师之路九、设计模式:常见的设计模式,如单例模式、工厂模式、策略模式、桥接模式等

目录 常见的设计模式&#xff1a; 单例模式&#xff1a; 工厂模式&#xff1a; 策略模式&#xff1a; 桥接模式&#xff1a; 责任链模式&#xff1a; Java架构师之路八、安全技术&#xff1a;Web安全、网络安全、系统安全、数据安全等-CSDN博客Java架构师之路十、框架和工…