xss靶场通关笔记

仅限学习参考,欢迎补充指正

目录

绕过姿势

第一关

第二关

第三关

第四关

第五关

第六关

第七关

第八关

第九关

第十关(更新中)

第十一关

十二关


打靶场之前先整理下一些可执行绕过姿势

大小写绕过(转换大小写字符)
  注意:1、js中严格区分大小写
       2、在html标签中不区分大小写

实体编码转换绕过

双写绕过

伪协议绕过  (JavaScript 后面可以执行很多js代码,但每个语句要用;隔开)

事件绕过(onlick、onmouseout)

还可利用单双引号、制表符

1、   <script> alter() </script>      //警告消息框  有一个确定键 (用的比较多)
      <script> confirm() </script>    //确认消息框  有一个确定键和一个取消键
      <script> prompt() </script>     //提示消息框  有一个text输入框


2、   <img onerror=javascript:alert(/xss/);>


3、   <a href="javascript:alert(/xss/)"></a>  伪协议


4、   可内嵌在标签属性里的      onclick  或  onmouseout      eg: button标签、iframe标签等


5、   <iframe src="javascript:alert(/xx/)">

做之前需要找到交互点,要学会利用开发者工具以及源代码。

在后面比较难的关卡中,还需要用到BurpSuitePro,或者是在火狐安装HackBar插件。


第一关

页面没有任何可以点击或输入的地方,很明显唯一可输入的只有URL中了。尝试输入后,发现name值可修改,可考虑在此进行绕过。

在name后试着输入代码口令,成功过关

<script>alert(/xxs/)</script>


第二关

打开页面发现有两个输入点,试着在页面输入框中输入,发现可输出,考虑在此绕过

打开开发者工具(若查询不到错误,打开源代码分析)

有两种解决方法: 

方法一:

想让它利用标签执行弹窗,首先需要把input标签闭合,继而可继续执行命令

"> <script>alert(/xxs/)</script>  

方法二

可利用鼠标移出事件(onmouseout)在input内部进行绕过

 " onmouseout="alert(/xxx/)

方法三:

利用iframe,发现新开了一个页面并出现了弹窗,但并没有出现通关提示并跳转下一关,这是由于通关提示是写在当前页面的,在另一个页面实现弹窗绕过,也是通关的一个体现,手动跳关就可以了。

"> <iframe src="javascript:alert(/xx/)">


第三关

还是重复之前的操作,先找到输入点随便输入,查看是否可以输出。发现可输出,就可以在这继续执行绕过操作了。

" onmouseout="alert(/xxx/)

输入后并没有出现弹窗,打开开发者工具,会发现鼠标指向输入框后,输入框变蓝,是因为把值都赋给了values,这时打开源代码查找问题

 发现双引号被实体编码了,并且变成了单引号。可以试试把双引号变为单引号是否可以。

 ' onmouseout='alert(/xxx/)
  • 3
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值