XSS-libs

靶场下载地址:https://github.com/do0dl3/xss-labs

下载完成后解压到phpstudy的根目录下,访问就可以

第一关

参数name

存在alert函数,插入:<script>alert(1)</script>,会调用该函数,然后就会返回弹窗。

构造: ?name=<script>alert(1)</script>

就会有一个弹窗显示,确定后就来到第二关(取消也会)。

第二关

一个搜索框,参数是keyword

先和上一题插入看一下

但是没有找到相关内容,可能进行了过滤,看源代码

可以看到我插入的keyword值的左右符号不能够闭合。

正常的应该是: <input name=keyword value=""><script>alert(1)</script>">

使用">把前面的<和"进行闭合。

所以得到的payloud:?keyword="><script>alert</script>

第三题

尝试<script>alert(111)</script>

查看源代码

发现我传入的<>不见了,被转义了

可以采用鼠标单击事件,从而来调用alert函数

onclick在点击所定义的事件时就会被调用

所以οnclick=alert(111)

再用'闭合掉。

构造:?keyword='οnclick=alert(111)//

传参成功后点击搜索框就会触发单击事件

第四题

使用<script>alert(111)</script>进行尝试

输入的<>符合被过滤了

尝试双写绕过

还是不可以,尝试鼠标单击事件

构造:?keyword="οnclick=alert(111)//&submit=搜索

用鼠标点击搜索框

成功

第五题

同样是尝试<script>alert(111)</script>

可以看到前一个script标签被改写成scr_ipt

尝试onclick

同样被过滤了

使用其他标签<a></a>

标签<a></a>可以使用,使用JS伪协议( javascript:alert(1) )绕过,javascript: 后面的代码当成 javascript来执行,从而调用alert函数

再把前面的闭合掉

最终payloud:?keyword="><a href=javascript:alert(1)>11</a>//&submit=搜索

可以看到插入成功,点击插入的11就会成功

相关推荐
Up九五小庞27 分钟前
开源埋点分析平台 ClkLog 本地部署 + Web JS 埋点测试实战--九五小庞
前端·javascript·开源
qq_177767371 小时前
React Native鸿蒙跨平台数据使用监控应用技术,通过setInterval每5秒更新一次数据使用情况和套餐使用情况,模拟了真实应用中的数据监控场景
开发语言·前端·javascript·react native·react.js·ecmascript·harmonyos
烬头88211 小时前
React Native鸿蒙跨平台应用实现了onCategoryPress等核心函数,用于处理用户交互和状态更新,通过计算已支出和剩余预算
前端·javascript·react native·react.js·ecmascript·交互·harmonyos
天人合一peng4 小时前
Unity中button 和toggle监听事件函数有无参数
前端·unity·游戏引擎
方也_arkling4 小时前
别名路径联想提示。@/统一文件路径的配置
前端·javascript
毕设源码-朱学姐5 小时前
【开题答辩全过程】以 基于web教师继续教育系统的设计与实现为例,包含答辩的问题和答案
前端
web打印社区5 小时前
web-print-pdf:突破浏览器限制,实现专业级Web静默打印
前端·javascript·vue.js·electron·html
RFCEO5 小时前
前端编程 课程十三、:CSS核心基础1:CSS选择器
前端·css·css基础选择器详细教程·css类选择器使用方法·css类选择器命名规范·css后代选择器·精准选中嵌套元素
Amumu121385 小时前
Vuex介绍
前端·javascript·vue.js
We་ct5 小时前
LeetCode 54. 螺旋矩阵:两种解法吃透顺时针遍历逻辑
前端·算法·leetcode·矩阵·typescript