XSS内容分享

反射型XSS

反射型XSS 是非持久性、参数型的跨站脚本。反射型XSS 的JS 代码在Web 应用的参数(变量)中,如搜索框的反射型XSS。在搜索框中,提交PoC[scriptalert(/xss/)/script],点击搜索,即可触发反射型XSS。注意到,我们提交的poc 会出现在search.php 页面的keywords 参数中。

就我个人理解而言,简单来说反射型XSS就是对于用户的输入没有任何限制(过滤),所以用户可以输入恶意js代码被页面解析

下面是几个简单的反射型XSS的靶场

level1

img标签可以引入图片

超链接

level2(input表单)

引入了HTML实体,将<实体化了,将p标签显示到页面上,导致失效。(使用过滤函数进行js恶意代码的预防)

总共页面可以接受三种编码:urlcode,html实体编码,js unicode

解题思路,双引号闭合,逃逸出value。

1.用户参与

用户点击:a"onclick"alert(1) 最后用户得触发

鼠标滑过:a"onmouseover"alert(1) 鼠标滑过

2.用户不参与

"a"><script>alert(1)</script>>

双引号提前闭合了,后面的标签就能正常显示了

level3

从题目就可以看出

最外层是拿单引号在过滤,并且没有设置过滤单引号

可以就看到onclick函数已经标红了

level4

第四关和第三关类似,只是这次是双引号

level5

第五关过滤了关键词,比如on,还有script标签,关键在于没有过滤<尖括号

多设置一aaaaa的标签

level6

第六关多过滤了几个标签,但是 还是没有过滤标签。关键区分大小写,html中可以这么些,但是在js中不能这么写。

level7

这种过滤比较垃圾,他只过滤一次,你可以双写on来绕开过滤

level8

这一关关键在于改成其他编码。

相关推荐
子兮曰6 小时前
async/await高级模式:async迭代器、错误边界与并发控制
前端·javascript·github
恋猫de小郭6 小时前
2026 Flutter VS React Native ,同时在 AI 时代 VS Native 开发,你没见过的版本
android·前端·flutter
GIS之路8 小时前
ArcGIS Pro 中的 Notebooks 入门
前端
IT_陈寒9 小时前
React状态管理终极对决:Redux vs Context API谁更胜一筹?
前端·人工智能·后端
Kagol10 小时前
TinyVue 支持 Skills 啦!现在你可以让 AI 使用 TinyVue 组件搭建项目
前端·agent·ai编程
柳杉10 小时前
从零打造 AI 全球趋势监测大屏
前端·javascript·aigc
simple_lau10 小时前
Cursor配置MasterGo MCP:一键读取设计稿生成高还原度前端代码
前端·javascript·vue.js
睡不着先生11 小时前
如何设计一个真正可扩展的表单生成器?
前端·javascript·vue.js
天蓝色的鱼鱼11 小时前
模块化与组件化:90%的前端开发者都没搞懂的本质区别
前端·架构·代码规范
明君8799711 小时前
Flutter 如何给图片添加多行文字水印
前端·flutter