BUUCTF[第二章 web进阶]XSS闯关

[第二章 web进阶]XSS闯关

1

  1. 点击开始闯关后转跳到第一关,可以看到网址后面存在username,再查看网页源代码,发现并未进行XSS过滤,可以直接进行XSS注入.

在username后输入<script>alert(1)</script>进行常规XSS注入

显示”恭喜过关”

  1. 进入下一关后,发现与第一关无异,再次尝试常规注入

发现没有回显,怀疑被过滤,查看网页源代码

由该行代码可以看出username被escape加密输入1’;将其注释

于是整体在username后输入1’;alert(1);’1

显示恭喜过关,进入下一关

  1. 进入第三关

首先使用<script>alert(1)</script>进行试探,发现没有回显

查看网页源代码,未发现明显过滤

试一下第二关的方法,输入1’;alert(1);’1   还是空白回显

查看网页源代码,可以发现‘(单引号)被转义,多出一个”\”

那么就相当于”闭合了结构,就可以构造为: '';alert(1);'1

进入下一关

  1. 进入第四关

有点懵每隔十秒就会进入一个新的页面进行无限嵌套

查看网页源代码

不难看出该网页每隔十秒就会自动跳转URL,代码中接受jumpURL作为转跳URL

构造一个伪链接:

                             JavaScript:alert(1)

//*JavaScript:浏览器会把JavaScript后面的内容当作命令执行

所以构造命令:?jumpurl=javascript:alert(1)

可以看到过关成功

  1. 进入第五关,出现了一个输入框

在输入框里输入任何内容回显均为错误

查看网页源代码,

对代码进行分析可得有两个变量被过滤,需要对其进行绕过

getQueryVariable('autosubmit') !== false){  //如果出错就会执行getQueryVariabl函数

autoForm.action = (getQueryVariable('action') == false) ? location.href : getQueryVariable('action');

            //变量action执行getQueryVariable函数

Payload如下:

               autosubmit=1&action=JavaScript:alert(1);//

  1. 随后获得flag

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值