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

XSS漏洞----基于Dom的xss

XSS漏洞----基于Dom的xss

本质(针对用户层面的攻击):在web页面插入恶意Script代码,用户浏览时,代码执行达到攻击的目的。

分类

反射型-----恶意脚本在参数中,是用户请求的一部分
基于Dom-----存在于客户端的js代码中,前端js读取包含恶意脚本的用户输入,通过不安全的Dom操作动态写入当前页面的DOM结构中。
不安全的DOM操作:js通过API动态的读取修改添加或删除DOM节点和内容。
存储型-----通过用户输入的渠道提交到服务器。

基于Dom的xss

dom clobbering—无法直接xss时,可以将html代码注入页面以操纵DOM并更改页面上js行为
单层覆盖
多层覆盖

请添加图片描述

以上是双层覆盖,通过form表中的属性标签,多层覆盖了document.body.appendChild

请添加图片描述

通过debug可以看出被更改

toString方法–将标签换成可控的字符类型以便解析

请添加图片描述

HTML Relationships构建层级关系-----使用两层的层级关系进行fuzz,只是用id

请添加图片描述

使用网页debug可见可以筛选出这些可以使用两层的层级关系进行fuzz的标签

请添加图片描述

DOMxss挑战题:

请添加图片描述

这里可以用两种解法:

解法1:

请添加图片描述

利用css样式中的style这个标签:

1、首先创建两个id的元素,覆盖window.attributes的属性,原本的Element.attributes被覆盖为HTMLInputElement

2、XSS触发机制,利用onmanimationstart动画事件处理函数配合无效动画@keytrames,当浏览器尝试解析动画时会触发第一个函数,执行alert(1)弹窗。

这道题首先要用dom clobbering中覆盖的这一性质,其次要对前端知识点熟悉,想到css样式这个点。

解法2:

请添加图片描述

用两个svg标签绕过:

1、用svgsvg这样两个标签时是没有正确闭合的,第一个svg是开启svg的命名空间,第二个svg是在命名空间内嵌套svg元素,浏览器会将嵌套的svg视为合法结构,并执行onload事件。

是开启svg的命名空间,第二个 svg 是在命名空间内嵌套svg元素,浏览器会将嵌套的svg视为合法结构,并执行onload事件。

2、大多数WAF检测是检测单个svg标签包含onload属性,所以在检测第一个svg时没有任何元素,视为安全属性,第二个svg视为新的标签,不视作和第一个相关联的标签。

http://www.lryc.cn/news/593326.html

相关文章:

  • 动态规划算法的欢乐密码(三):简单多状态DP问题(上)
  • GA-BP遗传算法优化BP神经网络数据生成,采用SVM分类模型评估
  • RabbitMQ面试精讲 Day 3:Exchange类型与路由策略详解
  • PostgreSQL常用命令与工具指南
  • 发明专利怎么写,与学术文章异同点与注意事项
  • 从0开始学习R语言--Day51--PH检验
  • HAMR硬盘高温写入的可靠性问题
  • 数字图像处理(三:图像如果当作矩阵,那加减乘除处理了矩阵,那图像咋变):从LED冬奥会、奥运会及春晚等等大屏,到手机小屏,快来挖一挖里面都有什么
  • 我用Cursor,1周上线了一个虚拟资料流量主小程序技术选型
  • 图解系统-小林coding笔记
  • view和pure的区别
  • 电脑windows系统深度维护指南
  • Validation - Spring Boot项目中参数检验的利器
  • 前端开发技巧:浏览器模拟弱网络环境
  • 中间件安全攻防全解:从Tomcat到Weblogic反序列化漏洞介绍
  • 暑假--作业3
  • Redis的持久化-RDB
  • 关于个人博客系统的测试报告
  • 【2025最新】使用neo4j实现GraphRAG所需的向量检索
  • BeanFactory 和 FactoryBean 的区别
  • Netty网络聊天室及扩展序列化算法
  • (后者可以节约内存/GPU显存)Pytorch中求逆torch.inverse和解线性方程组torch.linalg.solve有什么关系
  • 单调队列深度解析(下)
  • 7.19 换根dp | vpp |滑窗
  • 物联网-规则引擎的定义
  • LeetCode中等题--167.两数之和II-输入有序数组
  • RT-Thread的概念和移植
  • Spring AI 项目实战(十八):Spring Boot + AI + Vue3 + OSS + DashScope 实现高效语音识别系统(附完整源码)
  • OpenCV 官翻7 - 对象检测
  • Edge浏览器设置网页自动翻译