xss靶场绕过
目录
第一关
原理
payload
第二关
原理
payload
第三关
原理
payload
第四关
原理
payload
第五关
原理
payload
第六关
原理
payload
第七关
原理
payload
第八关
原理
payload
第九关
原理
payload
第十关
原理
payload
第十一关
原理
payload
第十二关编辑
原理
payload
第十三关
原理
payload
第一关
原理
由于没有对用户的输入做任何限制,因此可以直接使用<script>标签,实现弹窗。
payload
<script>alert(1)</script>
第二关
原理
可以看到,用户的输入在 <from>表单当中,此时就可以对<input>标签先进行闭合,然后在后面增加<script>标签的弹窗语句,实现弹窗。
payload
"><script>alert(1)</script>
第三关
原理
从PHP代码中可以看到,存在一个htmlspecialchars的过滤函数,此函数可以将特殊字符转换为HTML实体,具体可看https://www.php.net/manual/zh/function.htmlspecialchars.php
上面PHP代码中由于htmlspecialchars函数没有跟相关参数,导致单引号仍然可以闭合前面的单引号。因此实现弹窗。
payload
' onclick=alert(1)//
第四关
原理
可以看出PHP对><进行了过滤,<from>表单则直接将用户的输入进行><过滤后直接赋予了<input>,此时通过双引号进行闭合,实现弹窗。
payload
" onclick=alert(1)//
第五关
原理
在PHP中过滤了<script和on关键字,用户过滤后的输入则直接传到<input>中,使用">将<input>标签闭合,此时使用<a>标签,实现弹窗
payload
"><a href="javascript:alert(1)">aaa</a>
第六关
原理
在PHP中<script、on、src、data、href关键字都被过滤掉了,用户过滤后的输入被传到<input>中,使用">对<input>标签进行闭合,由于没有过滤大小写,可以通过使用大小写的方式进行绕过,实现弹窗。(在HTML中忽略大小写字母,而在js中则严格区分大小写字母)
payload
"><Script>alert(1)</Script>
第七关
原理
在PHP中可以看到,将用户输入的字符首先进行小写字母的转换,再对用户的输入进行关键字过滤,比如script、on、src、data、href关键字的替换。将传递的参数传递到<input>中,使用">将<input>标签进行闭合。由于用户的输入是一次性传递过去,这些关键字只能过滤一次,因此可以使用双拼写的形式进行绕过,实现弹窗。
payload
" oonnclick=alert(1)//
第八关
原理
在PHP中,用户的输入首先进行了小写字母的转换,其次对script、on、src、data、href、"关键字进行了替换。将过滤后的参数传递到<input>中,由于过滤了",因此无法闭合,只能在想其他办法进行绕过,编码就是很不错的一种方法,将javascript转为HTML实体编码,进行绕过,实现弹窗。
payload
javascript:alert(1)
第九关
原理
在PHP中可以看到,用户的输入首先经过小写字母的转换,然后是关键字script、on、src、data、href、"都进行了替换。存在一个if语句,用户的输入必须存在一个http://协议名,此时可以通过对javascript进行HTML编码,在使用注释将http://注释掉,实现弹窗。
payload
javascript:alert(1)//http://
第十关
原理
首先先尝试在<input>的name属性开始传递参数,观察哪一行<input>可以插入数据,尝试过后发现"t_sort"可以看到数据的插入,用"闭合value属性,使用type="text"将其type="hidden"覆盖掉,为了方便看到插入的数据,在使用点击事件来进行绕过,实现弹窗
payload
t_link=1111&t_history=1111&t_sort=1111"%20onclick=alert(1)%20type="text"
第十一关
原理
首先尝试在<input>标签中的name属性传递参数来观察,看哪个<input>标签的有数据显示,看到的t_sort出现数据,但是仔细观察会发现,我们传递的" οnclick=alert(1) type="text"参数中,双引号没有和前面的双引号发生闭合,因此我们需要找其他方式,使用火狐的hackbar插件,对t_ref属性进行传参,发现参数可以显示出来,因此再次尝试" οnclick=alert(1) type="text",结果不出意料,实现弹窗。
payload
" onclick=alert(1) type="text"
第十二关
原理
这一关的原理与是一关原理类同,几乎就是一模一样,只是换了一个属性而已,通过user Agent字段来实现绕过,实现弹窗。
payload
aa" onclick=alert(1) type="text"
第十三关
原理
这一关与十二管原理类同,通过Cookies来进行绕过,实现弹窗。
payload
aaa" onclick=alert(1) type="text"
相关文章:

xss靶场绕过
目录 第一关 原理 payload 第二关 原理 payload 第三关 原理 payload 第四关 原理 payload 第五关 原理 payload 第六关 原理 payload 第七关 原理 payload 第八关 原理 payload 第九关 原理 payload 第十关 原理 payload 第十一关 原理 payl…...

【数据结构】核心数据结构之二叉堆的原理及实现
1.大顶堆和小顶堆原理 什么是堆 堆(Heap)是计算机科学中一类特殊的数据结构,通常是一个可以被看作一颗完全二叉树的数组对象。 完全二叉树 只有最下面两层节点的度可以小于2,并且最下层的叶节点集中在靠左连续的边界 只允许最后…...

Spring Cloud Alibaba+saas企业架构技术选型+架构全景业务图 + 架构典型部署方案
基于Spring Cloud Alibaba 分布式微服务高并发数据平台化(中台)思想多租户saas设计的企业开发架构,支持源码二次开发、支持其他业务系统集成、集中式应用权限管理、支持拓展其他任意子项目。 一、架构技术选型 核心框架 Spring Boot SOA Spring Cloud …...

RocketMQ-03
1. 高级功能 1.1 消息存储 分布式队列因为有高可靠性的要求,所以数据要进行持久化存储。 消息生成者发送消息MQ收到消息,将消息进行持久化,在存储中新增一条记录返回ACK给生产者MQ push 消息给对应的消费者,然后等待消费者返回A…...

大神教你在 Linux 中查看你的时区
在这篇短文中,我们将向你简单介绍几种 Linux 下查看系统时区的简单方法。在 Linux 机器中,尤其是生产服务器上的时间管理技能,是在系统管理中一个极其重要的方面。Linux 包含多种可用的时间管理工具,比如 date 或 timedatectlcomm…...
Redis持久化策略
Redis有两种持久化方式:快照(snapshotting,或者叫Redis DataBase,RDB)和只追加文件(append-only,AOF)。两种方式可以单独使用,也可以同时使用。 1.RDB模式 RDB:将某时刻所有数据都写入到硬盘里,存储为.rdb快照文件,新的快照文件生成之后会替换旧的快照文件。用户可以将…...
显著性检验【t-test、方差分析、ks检验】
显著性检验【t-test、方差分析、ks检验】 0、目录 1显著性检验基本定义(what?) 2.使用显著性检验的意义(why? ) 3.显著性检验的具体操作流程(how? ) 1、显著性检验基本定义 统计假设检验…...
访问学者在德国访学生活衣食住行攻略
德国因其优质的教育水平、高价值的学制、低廉的访学成本,逐渐成为访学领域的宠儿。对于初次来到德国生活的访问学者,一定不是很熟悉德国的真实生活情况。今天51访学网小编就给大家介绍德国访学学衣食住行,希望可以帮助到即将出国的你。 一、…...

SQL-刷题技巧-删除重复记录
一. 原题呈现 牛客 SQL236. 删除emp_no重复的记录,只保留最小的id对应的记录。 描述: 删除emp_no重复的记录,只保留最小的id对应的记录。 drop table if exists titles_test; CREATE TABLE titles_test (id int(11) not null primary key…...

基于JSP的虚拟账号交易平台
技术:Java、JSP等摘要:随着网络游戏以及各种平台的出现与更新,虚拟账号交易平台正逐渐成为电商的新增长点。当今社会,互联网发发展飞速,游戏产业也渐渐兴起,随之虚拟游戏账号的交易量逐渐增多,但…...
LeetCode201_201. 数字范围按位与
LeetCode201_201. 数字范围按位与 一、描述 给你两个整数 left 和 right ,表示区间 [left, right] ,返回此区间内所有数字 按位与 的结果(包含 left 、right 端点)。 示例 1: 输入:left 5, right 7 输…...

一款好的风险管理软件可以做什么
风险管理软件哪个好?使用Zoho Projects易于使用的项目风险管理软件,最大限度地减少收入损失并快速调整您的投资组合,保护您的项目投资。Zoho Projects的高级风险管理软件可在您最需要的时候安全的保护您的业务。使用Zoho Projects强大的风险管…...
html2canvas使用文档
一、安装 Install NPM npm install --save html2canvasInstall Yarn yarn add html2canvas二、引入 import html2canvas from html2canvas;三、使用 以 vue 举例,这样写起来比较方便 <div ref"picture"><h4>Hello world!</h4> &l…...
HTML DOM 改变 CSS
HTML DOM 允许 JavaScript 改变 HTML 元素的样式。改变 HTML 样式如需改变 HTML 元素的样式,请使用这个语法:document.getElementById(id).style.propertynew style 下面的例子会改变 <p> 元素的样式:实例<html><body><…...

基于EB工具的TC3xx_MCAL配置开发01_WDG模块配置介绍
目录 1.概述2. WDG 配置2.1 General部分配置2.2 WdgSettingsConfig配置2.2.1 配置概述2.2.2 CPU WDG具体配置2.3 WdgDemEventParameterRefs3. WDG配置注意事项1.概述 本篇开始我们基于EB Tresos工具对英飞凌TC3xx系列MCU的MCAL开发进行介绍,结合项目经验对各MCAL外设的开发及…...

Activty启动到显示的过程[二]
Activity的显示从handleResumeActivity()方法开始。 //ActivityThread.javaOverridepublic void handleResumeActivity(IBinder token, boolean finalStateRequest, boolean isForward,String reason) {final ActivityClientRecord r performResumeActivity(token, finalStat…...

ubuntu 18.04.06LST安装R4.0+版本报错及解决过程
1. sudo apt-get update无法正常使用 错误:13 http://ppa.launchpad.net/webupd8team/sublime-text-3/ubuntu bionic Release 404 Not Found [IP: 2620:2d:4000:1::3e 80] 解决措施:删除 webupd8team/sublime-text-3这个ppa文件。 sudo add-apt-repository --…...

数据湖架构Hudi(五)Hudi集成Flink案例详解
五、Hudi集成Flink案例详解 5.1 hudi集成flink flink的下载地址: https://archive.apache.org/dist/flink/ HudiSupported Flink version0.12.x1.15.x、1.14.x、1.13.x0.11.x1.14.x、1.13.x0.10.x1.13.x0.9.01.12.2 将上述编译好的安装包拷贝到flink下的jars目录…...
【Java学习笔记】9.Java 循环结构 - for, while 及 do...while
Java 循环结构 - for, while 及 do…while 顺序结构的程序语句只能被执行一次。 如果您想要同样的操作执行多次,就需要使用循环结构。 Java中有三种主要的循环结构: while 循环do…while 循环for 循环 在 Java5 中引入了一种主要用于数组的增强型 f…...
【面向对象初步】之面向对象VS面向过程
面向对象(ObjectorientedProgramming,OOP)编程的思想主要是针对大型软件设计而来的。面向对象编程使程序的扩展性更强、可读性更好,使的编程可以像搭积木一样简单。 面向对象编程将数据和操作数据相关的方法封装到对象中,组织代码和数据的方式更加接近人的思维,从而大大提…...
生成xcframework
打包 XCFramework 的方法 XCFramework 是苹果推出的一种多平台二进制分发格式,可以包含多个架构和平台的代码。打包 XCFramework 通常用于分发库或框架。 使用 Xcode 命令行工具打包 通过 xcodebuild 命令可以打包 XCFramework。确保项目已经配置好需要支持的平台…...
【RockeMQ】第2节|RocketMQ快速实战以及核⼼概念详解(二)
升级Dledger高可用集群 一、主从架构的不足与Dledger的定位 主从架构缺陷 数据备份依赖Slave节点,但无自动故障转移能力,Master宕机后需人工切换,期间消息可能无法读取。Slave仅存储数据,无法主动升级为Master响应请求ÿ…...

零基础在实践中学习网络安全-皮卡丘靶场(第九期-Unsafe Fileupload模块)(yakit方式)
本期内容并不是很难,相信大家会学的很愉快,当然对于有后端基础的朋友来说,本期内容更加容易了解,当然没有基础的也别担心,本期内容会详细解释有关内容 本期用到的软件:yakit(因为经过之前好多期…...

LLMs 系列实操科普(1)
写在前面: 本期内容我们继续 Andrej Karpathy 的《How I use LLMs》讲座内容,原视频时长 ~130 分钟,以实操演示主流的一些 LLMs 的使用,由于涉及到实操,实际上并不适合以文字整理,但还是决定尽量整理一份笔…...

接口自动化测试:HttpRunner基础
相关文档 HttpRunner V3.x中文文档 HttpRunner 用户指南 使用HttpRunner 3.x实现接口自动化测试 HttpRunner介绍 HttpRunner 是一个开源的 API 测试工具,支持 HTTP(S)/HTTP2/WebSocket/RPC 等网络协议,涵盖接口测试、性能测试、数字体验监测等测试类型…...
深入理解Optional:处理空指针异常
1. 使用Optional处理可能为空的集合 在Java开发中,集合判空是一个常见但容易出错的场景。传统方式虽然可行,但存在一些潜在问题: // 传统判空方式 if (!CollectionUtils.isEmpty(userInfoList)) {for (UserInfo userInfo : userInfoList) {…...
0x-3-Oracle 23 ai-sqlcl 25.1 集成安装-配置和优化
是不是受够了安装了oracle database之后sqlplus的简陋,无法删除无法上下翻页的苦恼。 可以安装readline和rlwrap插件的话,配置.bahs_profile后也能解决上下翻页这些,但是很多生产环境无法安装rpm包。 oracle提供了sqlcl免费许可,…...
鸿蒙(HarmonyOS5)实现跳一跳小游戏
下面我将介绍如何使用鸿蒙的ArkUI框架,实现一个简单的跳一跳小游戏。 1. 项目结构 src/main/ets/ ├── MainAbility │ ├── pages │ │ ├── Index.ets // 主页面 │ │ └── GamePage.ets // 游戏页面 │ └── model │ …...

若依登录用户名和密码加密
/*** 获取公钥:前端用来密码加密* return*/GetMapping("/getPublicKey")public RSAUtil.RSAKeyPair getPublicKey() {return RSAUtil.rsaKeyPair();}新建RSAUti.Java package com.ruoyi.common.utils;import org.apache.commons.codec.binary.Base64; im…...

数据结构:泰勒展开式:霍纳法则(Horner‘s Rule)
目录 🔍 若用递归计算每一项,会发生什么? Horners Rule(霍纳法则) 第一步:我们从最原始的泰勒公式出发 第二步:从形式上重新观察展开式 🌟 第三步:引出霍纳法则&…...