XSS DOM漏洞复现 与DOM 破坏

目录

DOM关卡部分复现

DOM破环


DOM关卡部分复现

第一关

此关过滤了字母数字,所以只能用编码去解决,去JSFUCK上面把alert(1337)编码,然后再编码成url编码格式 放入即可

第二关

这一关过滤了符号和关键字,关键字还过滤了confirm和prompt

第一种解法 用匿名函数

javascript 复制代码
?mafia=Function(/ALERT(1337)/.source.toLowerCase())()

第二种parseint 解析一个字符串并返回指定基数的十进制整数,radic是2-36之间的整数,表示被解析字符串的基数

parseint()先把alert转成用30进制为8680439,然后再用toString转化回来

javascript 复制代码
?mafia=eval(8680439..toString(30))(1337)

第三种 用location.hash.slice(1)#alert(1337) 前面表示取第一个字符

javascript 复制代码
?mafia=eval(location.hash.slice(1))#alert(1337)

DOM破环

箭头指的地方则是前端过滤框架,无法绕过,所以入手点应该在时间函数这里

因为我们可以直接用标签的id和name取出标签

我们现在需要构造一个id为ok的a标签,a 标签有tostring方法,弹窗 会把href里面的内容自动转码当成一个字符串打印出来

setTimeout时间函数是可以把我们想要操作的函数放进字符串去执行的

获取到ok,会自动用tostring方法,获取href属性

但是没有绕过过滤框架,这个javascript在黑名单里面,去白名单找另外的

然后换成cid 即可,成功执行

构造一个DOM破坏 环境

指针的原理,删完一个,指针会后移动,所以删除1,3,5的位置 ,2,4位置保留,那么把payload写到2,4,位置即可

javascript 复制代码
#<img abc=1 src=1 aaa=2 onerror=alert(1)>

但是可以修复这个

绕过:

CSS动画,下面的el删除的是后面的input的内容,已经通过它们占了。在执行动画前会执行alert

相关推荐
mooyuan天天1 天前
CTFHub XSS通关:XSS-过滤关键词
xss·关键字过滤·ctfhub·xss漏洞
一袋米扛几楼981 天前
【软件安全】什么是XSS(Cross-Site Scripting,跨站脚本)?
前端·安全·xss
红树林0712 天前
beef-xss网页无法访问
安全·web安全·xss
xixixi7777713 天前
怎么区分主动攻击和被动攻击啊,为什么跨站脚本是被动攻击?
xss·1024程序员节·跨站脚本·主动攻击·被动攻击
骥龙13 天前
2.6、Web漏洞挖掘实战(下):XSS、文件上传与逻辑漏洞深度解析
前端·xss
-曾牛14 天前
从零到一:XSS靶场 haozi.me 全关卡通关教程(含冷知识汇总)
前端·网络安全·渗透测试·靶场·xss·攻略·靶场教程
无盐海15 天前
XSS漏洞攻击 (跨站脚本攻击)
前端·xss
Forfun_tt15 天前
xss-labs pass-12
前端·xss
网络安全-海哥15 天前
Web安全深度实战:从漏洞原理到防护方案
sql·web安全·网络安全·xss·csrf·漏洞挖掘·安全防护
Forfun_tt16 天前
xss-labs pass-10
java·前端·xss