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

前端漏洞(下)- ClickJacking漏洞

漏洞复现目的:熟悉 ClickJacking 漏洞 原理

漏洞介绍:

Clickjacking(点击劫持)是一种跨浏览器攻击技术,由安全专家Robert Hansen与Jeremiah Grossman于2008年在OWASP NYC AppSec大会上首次公开披露。其原理是通过恶意网页将透明界面元素覆盖在诱饵内容上,诱导用户点击隐藏的按钮或链接,从而劫持用户操作。该漏洞影响IE、Firefox、Safari等主流浏览器及Adobe Flash,攻击者可利用DHTML技术绕过防框架代码防护,实现如恶意软件安装、敏感操作触发等行为 [1]。

搭建环境:docker 环境

命令:yml 文件目录下 执行 docker-compose up -d 直接拉取镜像

环境说明:

该题目以HTML文件的形式展示,可以将ClickJacking.html文件保存至本地来复现

实战指导

打开ClickJacking.html文件, 通过修改opacity的值即可观察到页面的变化,从而完成漏洞复现。

1、 ClickJacking 漏洞原理图

2、在浏览器打开ClickJacking.html文件,观察到页面存在其他内容

3、修改opacity的值再次观察

4、发现按钮变淡,其他内容清晰

5、当opacity的值为0时,浮层将会不可见,此时用户的操作都在 <iframe src="http://www.example.com" scrolling="no"></iframe> 页面上触发的

6、漏洞防御

(1)X-Frame-Options 头:在HTTP响应头中添加X-Frame-Options,可以阻止页面被嵌入到<frame><iframe>或者<object>等标签中。

(2)Content Security Policy (CSP):通过设置CSP的frame-ancestors指令,可以限制哪些域可以嵌入你的页面。例如,Content-Security-Policy: frame-ancestors 'self'; 表示只有同源页面可以嵌入此页面。

(3)JavaScript防御:在客户端使用JavaScript检测是否被嵌入在一个<iframe>中,如果是,则可以采取一些措施,如重定向到另一个页面或显示警告信息

http://www.dtcms.com/a/353667.html

相关文章:

  • 指针 (六):sizeof和strlen细节强化之“做题篇”
  • stl--std::map
  • Java 使用Jna 调用 C# dll文件踩到的坑
  • SpringBoot整合Redis:从入门到实战的完整指南
  • 【Linux 小实战】自定义 Shell 的编写
  • LCD 上显示字符
  • zookeeper-集群扩缩容
  • 稳敏双态融合架构--架构师的练就
  • banner这个文件是怎么请求到后端数据的
  • Rust:引用
  • Vue-24-利用Vue3的element-plus库实现树形结构数据展示
  • Autodesk Maya 2026.2 全新功能详解:MotionMaker AI 动画、LookdevX 材质增强、USD 工作流优化
  • 在MiniOB源码中学习使用Flex与Bison解析SQL语句-第二节
  • 【Linux】正则表达式学习记录
  • FFMPEG api使用
  • 从disable_cost到disabled_nodes,最小代价预估质的飞跃
  • nestjs日志(nest-winston)
  • pyecharts可视化图表-tree:从入门到精通
  • Linux 系统调优与CPU-IO-网络内核参数调优
  • Task04: CAMEL框架中的多智能体系统(课程第三章剩余章节)
  • 大模型安全概述、LlamaFirewall
  • ESP8266:Arduino学习
  • 前端性能优化:从指标监控到全链路落地(2024最新实战指南)
  • 短视频矩阵管理软件推荐——小麦矩阵系统深度解析
  • 关于两视图相机几何关系
  • DevExpress WPF中文教程:如何将WPF数据网格绑定到本地集合?
  • 软件定义汽车(SDV)调试——如何做到 适配软件定义汽车(SDV)?(下)
  • vue新能源汽车销售平台的设计与实现(代码+数据库+LW)
  • 【Vue2✨】 Vue2 入门之旅(二):模板语法
  • Python异步编程:从理论到实战的完整指南