当前位置: 首页 > news >正文

xss-labs关卡记录8-14

第八关

还是常规方法,先上传我们常用的试试,onfocus <script> <a href=javascript:alert()>

查看源码发现,value这里应该是对我们的<>进行了 处理,然后在href这里,对常用的关键词进行了替换处理,这里就先考虑我们的大小写试试:<Script>alert(2)</Script>然后发现进行了小写转换,有点难搞,这里想到href这里可以进行html编码,而非unicode编码,因为unicode需要保留我们的伪协议,也就是如果我们构造payload为:javascript:alert(1)但是unicode需要保留JavaScript,而script会被处理成scr_ipt,因此,我们使用html编码,十进制十六进制都行,我这里为了方便,使用的十进制,构造的payload为:&#106;&#97;&#118;&#97;&#115;&#99;&#114;&#105;&#112;&#116;&#58;&#97;&#108;&#101;&#114;&#116;&#40;&#49;&#41;然后输出即可。

 

 通过源码,我们不难看出,常用的都过滤了,而且进行了大小写转换。

第九关

还是常规方法,先看一下,过滤了什么。"> <script>alert(2)</script> <"    onfocus <script> <a href=javascript:alert()>

发现过滤了"><",都进行了转换

而且href这里也没有值,猜测可能有判断,看源码吧:

首先进行了一个小写转换,然后是一些常用的替换,然后再超链接这里,存在一个判断,就是strpos()函数:查找 "http://" 在字符串中第一次出现的位置,就是如果我们构造的payload里面没有这个就不能插入到href这里,所以,这里就想到了注释绕过,这样的话我们的字符串里既包含了要求的,同时也不会执行这个。

因此构造的payload为:&#106;&#97;&#118;&#97;&#115;&#99;&#114;&#105;&#112;&#116;&#58;&#97;&#108;&#101;&#114;&#116;&#40;&#49;&#41<!-- http:// -->;执行:

 第十关

这里没有文本框,然后看到url这里有keyword,改一下参数试试:

检查源码:

这里可以看到,原来是有三个input被隐藏了,然后我们传参的keyword输出到了h2这里,然后看源码吧:

这里就会发现,原来不止一个参数,还有一个t_sort参数没发现,应该都测一下的。

然后发现源码这里,对<>都进行了屏蔽,参考前面的关卡,该使用事件了,使用:οnfοcus=javascript:alert(1),然后因为这里有type为hidden,因此,我们需要构造的payload为:

?t_sort=" ofcous=javascript:alert(1) type="text

这样构造之后,就可以绕过,分析一下闭合,第一个双引号闭合了value,然后开始我们的事件,然后这里考虑到后面的type需要呈现出来,而且还有一个双引号没有闭合,因此再在结尾加上type="text。这样构造之后,就闭合成功了。

第十一关

还是和之前一样,需要测一下都有那些参数可以用:?keyword=1&t_sort=1

测试下来发现还是,和上一关一样,有两个参数,试一下上一关的payload,给双引号也转义了,这里我回去又查了一下

htmlspecialchars 函数,用于将特殊字符转换为 HTML 实体。其默认行为是将以下字符转换为 HTML 实体:

  • &(和号)转换为 &amp;
  • "(双引号)转换为 &quot;(仅当 ENT_NOQUOTES 标志未设置时)
  • '(单引号)转换为 &#039;(仅当 ENT_QUOTES 标志设置时)
  • <(小于号)转换为 &lt;
  • >(大于号)转换为 &gt;

因此这里会对<>&”都进行转换,所以这里使用上一关卡的payload会出现:

这里就闭合不了value了,看源码吧:

这里的<>&”进行转换,然后没用进行小写转换,后续payload可以考虑大小写进行绕过,然后这个t_ref是读取的Refer里面的信息,所以,我们抓包然后试试:

构造的payload为:Refer: " οnfοcus=javascript:alert(1) type="text

这样就能闭合,从而借助事件,实现绕过:

这里就需要注意     $str11=$_SERVER['HTTP_REFERER'];这里读取我们的Referer信息,而如果是常规的给t_ref赋值,是不能看出来的,没错,我就是。

十二关

还是老样子,构造我们的?keyword=<script><img src ><on href>,然后查看源码看看,

发现,和上一关卡一样,我们看到t_ua直接猜测。抓包然后该ua代理:

 有了上一关的经验,直接构造payload为:" οnfοcus=javascript:alert(1) type="text

这样放包,就可以绕过了:

然后看源码:

果然,就是我们猜想的一样,然后这里还屏蔽了<>。

 十三关

直接?keyword=<script><img src ><on href>,然后右击查看源码:

然后看到,又有变化了,t_cook,直接推,抓包改Cookie:

构造的payload为:Cookie: " οnfοcus=javascript:alert(2) type="text

然后放包:

查看源码:

果然,和我们猜测的一模一样。

十四关

网站挂了,挂个大佬的链接:xss-labs靶场-第十四关 iframe和exif xss漏洞 - FreeBuf网络安全行业门户

http://www.lryc.cn/news/516513.html

相关文章:

  • SPSS实现中介效应与调节效应
  • 计算机的错误计算(二百零三)
  • 【计算机网络】什么是AC和AP?
  • python3中函数的参数
  • 数据仓库建设方案和经验总结
  • Re77 读论文:LoRA: Low-Rank Adaptation of Large Language Models
  • 曲波系数 curvelet transform
  • OS的随机数生成过程中的内核熵池
  • 数据结构:双向循环链表
  • IP网和传输网区别(以访问百度为例!)
  • STM32裸机开发转FreeRTOS教程
  • FreeSWITCH dialplan/default.xml 之释疑
  • lambda用法及其原理
  • Go Ebiten随机迷宫生成示例
  • 前端学习DAY31(子元素溢出父元素)
  • 『SQLite』表的创建、修改和删除
  • 可持久化数据结构-线段树(主席树)
  • 如何利用PHP爬虫按关键字搜索淘宝商品
  • GitHub - riscv-software-src/riscv-isa-sim: Spike, a RISC-V ISA Simulator
  • ubuntu开机启动服务
  • 电子电气架构 --- 设计车载充电机的关键考虑因素
  • 2025_0105_生活记录
  • 电池管理系统(BMS)架构详细解析:原理与器件选型指南
  • 用JAVA编写一个简单的小游戏
  • 【SpringSecurity】二、自定义页面前后端分离
  • 小兔鲜儿:头部区域的logo,导航,搜索,购物车
  • 什么是VLAN?
  • WPS计算机二级•数据查找分析
  • 计算机网络 (28)虚拟专用网VPN
  • 【Python学习(七)——序列、列表、元组、range、字符串、字典、集合、可变类型不可变类型】