Pikachu-Cross-Site Scripting-DOM型xss

DOM型xss

DOM型XSS漏洞是一种特殊类型的XSS,是基于文档对象模型 Document Object Model (DOM)的一种漏洞。是一个与平台、编程语言无关的接口,它允许程序或脚本动态地访问和更新文档内容、结构和样式,处理后的结果能够成为显示页面的一部分。

dom就是一个树状的模型,你可以编写Javascript代码根据dom一层一层的节点,去遍历/获取/修改对应的节点,对象,值。通过Js去对网页进行修改,变化执行。

例如以下代码:

当点击try it ,调用 没有Function方法, 获得 id为demo的元素,然后修改 它的内容,让他为alert弹窗。

查看dom 型xss 的源代码

这里是把输入的xss标签,拼接到 <a 标签里;所以,关键是对这段代码构造闭合;

复制代码
<a href='"+str+"'>what do you see?</a>

而 str 就是我们可以控制的输入;单独把str抽出来看;

复制代码
<a href='X' onclick="alert()">'>what do you see?</a>

这样就可以构造一个完整的闭合, what 前面的 '> 可以不用管,当作时文本的一部分;

所以输入就是 X' οnclick="alert()">

这样就得到一个xss攻击 ;

w3school: HTML DOM 100实例_w3cschool

相关推荐
anOnion1 分钟前
构建无障碍组件之Tooltip Pattern
前端·html·交互设计
陈随易9 分钟前
为什么今天还会有新语言?MoonBit 想解决什么问题?
前端·后端·程序员
西洼工作室10 分钟前
unipp+vue3+python h5+app极验验证码集成全流程解析
前端·uni-app·全栈·极验
ZC跨境爬虫10 分钟前
跟着 MDN 学 HTML day_15:(媒体缓冲、拖动与时间范围控制)
前端·笔记·ui·html·edge浏览器·媒体
李白的天不白26 分钟前
webpack 与 webpack-cli 版本匹配问题
前端·webpack·node.js
tool28 分钟前
Hermes Agent 从安装到生产:我的完整踩坑记录
前端
kyriewen1135 分钟前
奥特曼借GPT-5.5干杯,而你的Copilot正按Token收钱
前端·gpt·ai·copilot
空中海36 分钟前
01 React Native 基础、核心组件与布局体系
javascript·react native·react.js
空中海1 小时前
05 React架构设计、项目实践与专家清单
前端·react.js·前端框架
人生鹿呀1 小时前
AI 情绪陪伴助手:从 0 到 1 的 PWA + 跨端应用实战
前端