XSS靶场自学笔记-【随便玩玩】

杜星翰   ·   发表于 2023-05-28 08:05:33   ·   CTF&WP专版

一、靶场地址
https://xss.haozi.me/#/0x01
二、靶场实战
1、第一关:标准的XSS语句即可

2、第二关:标签是一个类似备注或者留言区里功能,里面输入内容都会变成文本,因此我们先需要去闭合前边的标签;


3.第三关 是一个事件型标签
方法1:闭合value标签
123” onmouseover=”alert(1) //鼠标滑过触发
123” onchick=”alert(1) //点击触发
123” oninput=”alert(1) //输入内容触发

方法2:闭合input标签
标准script


4.第四关,过滤了()可以使用
方法1:使用反引号代替括号
alert1

方法二:使用unicode编码对括号进行编码
<img src="1">

方法三:使用svg标签


5.第五,过滤了()`
方法一:使用unicode编码对括号进行编码
方法二:使用svg标签

6.第六关:输入的内容变成注释了他仅过滤了—> 我们可以使用—!>来进行闭合

7.第七关:只要on和=号在一行就会被过滤 因此要在on和=进行换行绕过。

8.第八关,过滤了里的内容,此关只要不用闭合即可。那么就需要用到单标签闭合


或者使用其他SVG单标签闭合


9.第9关 像这种在单行过滤了style的,我们可以尝试换行绕过


10.第十关在URL处,去闭合标签在输入标准语句


11.通过代码分析基本上关键的符号都已经过滤了,因此不能在本地进行使用了,通过外网引用JS文件 绕过过滤
https://www.segmentfault.com.haozi.me/j.js

12.此关将所有输入的字符转换成大写的,由于JS的事件中,是严格区分大小写的,因此需要通过unicoed转换ASCII编码绕过;


13.只要输入SCRIPT就会变成空,且其他字符转换成大写。这和12关绕过方法一样


14.此关过滤了一些符号,且本行被注释了,因此我们首先应该进行换行绕过注释符号,然后我们在用注释符号,注释尾部的内容。

  1. ſ可以代替S因此可以绕过


16.onerror后的实体化编码也是可以被用的,我们正常闭合就可以了


17.这关就是一个window弹窗的调用,直接alert(1)就可以

18.虽然过滤了很多,但是没有过滤分号,可以用分号分割不同语句进行执行,闭合前后然后正常执行即可


19.其实和上一关差不多的,只要过滤用转义符,去转义被转义的内容就可以抵消转义,然后在去闭合

用户名金币积分时间理由
杳若 40.00 0 2023-08-16 21:09:35 一个受益终生的帖子~~
君叹 4.00 0 2023-06-06 09:09:45 一个受益终生的帖子~~
Track-魔方 120.00 0 2023-06-05 13:01:06 活动翻倍
Track-魔方 120.00 0 2023-06-05 13:01:58 一个受益终生的帖子~~

打赏我,让我更有动力~

0 条回复   |  直到 11个月前 | 413 次浏览
登录后才可发表内容
返回顶部 投诉反馈

© 2016 - 2024 掌控者 All Rights Reserved.