XSS实验

本文详细描述了一次XSS挑战中的过关过程,涉及编码技巧、安全过滤、抓包工具(如Burpsuite)的应用,以及如何利用各种手段绕过过滤,最终通过修改User-Agent、Cookie和构造特定payload来完成攻击和数据传递。
摘要由CSDN通过智能技术生成

靶场网址: 欢迎来到XSS挑战

自己的记录备份。

Level 1

Level 2

直接注,发现:

使用”>闭合,通过。

Level 3

输入框内容会被转译。

可使用‘代替“闭合value输入,之后构造onclick

Level 4

测试。发现<>被过滤掉。

调整语句构建

Level 5

会在关键字中间加分隔。

换语句。发现onclick和onmouseover也被禁止

但是javascript依旧可正常写入。

使用语句"> <a href=javascript:alert(‘xss’) > xss</a>//,构建链接,成功。

Level 6

Script等无法注入。使用之前的构造链接语句,发现href被过滤。

使用大小写尝试绕过

闭合。

Level 7

会把关键词删除。例如onclick会变成click

但可以发现

可通过

Level 8

有过滤的构造链接,过滤包括javascript

可以对javascript进行unicode编码

Level 9

有关键字会提示不合法。

转换后依旧不合法。

使用正常地址链接,合法。

把正常地址链接插入尾部,成功插入。

换用javascript语句,在http前加上//注释后通过。

Level 10

发现了隐藏的输入区域

通过更改顶端url,可尝试修改隐藏参数,确定哪个值可被修改。

插入onclick

Level 11

发现t_sort可以修改,但是会处理特殊符号

查到的解决方法为使用burpsuite抓包处理。具体操作为:

--------------------------------------------

先将上一关的恶意代码给传上去

?keyword=hcj&t_sort=" type="`hcj`" οnclick= alert(`xss`)>//

可以看到在原始的请求数据包中的referer这个请求头数值是一个奇怪的奇怪得网址,包含我们想要上传得恶意代码而且t_ref的回显也是那串奇怪的网址 不由得感觉我们的突破口在这里 。

在我们尝试给referer替换成 hcj 点击 go,发现在t_ref的回显也是 hcj

所以如果我们在referer 处写

"type="text" οnclick="alert('xss')>//

那么就可以快乐的上传上我们的 恶意代码了

——原文链接:https://blog.csdn.net/m0_62879498/article/details/123592092——

但是因为edge改端口太麻烦还会造成一系列问题,懒得做,直接偷懒

Bp一般是和firefox一起使用,火狐是改端口代理很方便的浏览器,而且不需要动本机的设置。Edge要改只能通过修改本机系统设置,会导致同时无法访问其他网站。

Level 12

依旧是一堆隐藏框,可修改的是t_sort,且符号会被处理。需要使用BP

--------------------------------

(原文链接:XSS labs 闯关大合集_xss 欢迎用户teset-CSDN博客

仔细观察抓到的包

发现User-Agent头的的值和t_ua的value值很相似

我们尝试更改 User-Agent 头的值,查看我们的 t_ua 的value的值的变化情况

所在 User-Agent 处写

"type="text" οnclick="alert('xss')>//

----------------------------------

注:user-agent在抓到的包里可以找到。

Level 13

和前两个相同。通过抓包可以发现突破位置为cookie,和t_cook的值一样。修改cookie会导致t_cook变化。

在BP中修改cookie,插入,发包。

Level 14

链接已失效。查资料可知是exif xss漏洞。

参考网址:【巨人肩膀上的矮子】XSS挑战之旅---游戏通关攻略(更新至18关) - 先知社区

Level 15

修改URL

被写入

通过实验可发现特殊符号被过滤,无法简单闭合。

但可通过构造包含恶意代码的文件访问地址(此处访问第一关)解决。

----(参考资料XSS labs 闯关大合集_xss 欢迎用户teset-CSDN博客)------------

onerror 事件在视频/音频(audio/video)数据加载期间发生错误时触发,所以在构造payload 的时候创建一个第一关没有的文件名触发 onerror。

---------------------------------------------------------------------------------------

Level 16

可以直接插入,但空格和关键字script等被处理。

在HTML中%0a和%0D是可以当成空格使用的,用换行符%0a(回车)或%0D(回车)取代空格。

Level 17

发现会写入此位置

构造语句插入。

本题的原理(引自https://blog.csdn.net/ldzhhh/article/details/106324088)

Level 18

和17一模一样。直接通过。

//19和20搞了半天没搞出来

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值