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

相关推荐
德迅云安全—珍珍3 小时前
2025 年 Chrome 浏览器 0Day 漏洞全面分析:八大高危漏洞遭利用
前端·chrome
wanderful_3 小时前
Javascript笔记分享-流程控制(超级超级详细!!!)
javascript·笔记·流程控制·实战案例·新手友好
子洋3 小时前
AI Agent 设计模式 - ReAct 模式
前端·人工智能·后端
木童6623 小时前
Docker 容器化 Web 服务全流程实践(含网络深度场景)
前端·网络·docker
长安牧笛3 小时前
制作本地美食测评评分工具,输入美食名称,口味,价格,自动生成评分,帮助消费者选择美食。
javascript
Aftery的博客3 小时前
Uniapp-vue实现语言功能切换(多语言)
javascript·vue.js·uni-app
一字白首3 小时前
Vuex 进阶,模块化开发(Modules):解决单状态树臃肿问题
前端·javascript·vue.js
喵了几个咪3 小时前
开箱即用的 GoWind Admin|风行,企业级前后端一体中后台框架:用 JavaScript/Lua 解锁动态业务扩展能力
javascript·后端·微服务·golang·lua·admin
旧梦吟3 小时前
脚本网页 linux内核源码讲解
linux·前端·stm32·算法·html5
李少兄4 小时前
深入理解 CSS :not() 否定伪类选择器
前端·css