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为:javascript:alert(1)然后输出即可。


通过源码,我们不难看出,常用的都过滤了,而且进行了大小写转换。
第九关
还是常规方法,先看一下,过滤了什么。"> <script>alert(2)</script> <" onfocus <script> <a href=javascript:alert()>
发现过滤了"><",都进行了转换

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

首先进行了一个小写转换,然后是一些常用的替换,然后再超链接这里,存在一个判断,就是strpos()函数:查找 "http://" 在字符串中第一次出现的位置,就是如果我们构造的payload里面没有这个就不能插入到href这里,所以,这里就想到了注释绕过,这样的话我们的字符串里既包含了要求的,同时也不会执行这个。
因此构造的payload为:javascript:alert(1)<!-- 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 实体:
&(和号)转换为&"(双引号)转换为"(仅当ENT_NOQUOTES标志未设置时)'(单引号)转换为'(仅当ENT_QUOTES标志设置时)<(小于号)转换为<>(大于号)转换为>
因此这里会对<>&”都进行转换,所以这里使用上一关卡的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网络安全行业门户
相关文章:
xss-labs关卡记录8-14
第八关 还是常规方法,先上传我们常用的试试,onfocus <script> <a hrefjavascript:alert()> 查看源码发现,value这里应该是对我们的<>进行了 处理,然后在href这里,对常用的关键词进行了替换处理&…...
SPSS实现中介效应与调节效应
1. 中介效应 SPSS 实现 本例研究的自变量(X) “工作不被认同”;中介变量(M)为“焦虑”,因变量(Y)为“工作绩效”。探讨焦虑是否在工作不被认同与工作绩效间的作用。 (2&…...
计算机的错误计算(二百零三)
摘要 利用两个大模型化简计算 其中一个大模型是数学解题器,它通过化简得出了正确结果;另外一个大模型给出了 Python代码。 例1. 化简计算摘要中算式。 下面是一个数学解题器大模型给的回答。 以上是数学解题器大模型给的回答。 下面是与另外一个大模型…...
【计算机网络】什么是AC和AP?
在现代的无线网络中,AC(Access Controller,接入控制器)和AP(Access Point,无线接入点)是两个至关重要的设备,它们在网络的管理、连接和优化中扮演着重要角色。理解它们的功能和区别&…...
python3中函数的参数
一. 简介 前面学习了Python3中函数的语法规则,文章如下: python3中函数的语法规则-CSDN博客 本文继续学习python中函数的参数。调用函数时可使用的正式参数类型: 必需参数,关键字参数,默认参数,不定长参…...
数据仓库建设方案和经验总结
在做数据集成的过程中,往往第二步的需求就是建设数仓由于数据分散在不同的存储环境或数据库中,对于新业务需求的开发需要人工先从不同的数据库中同步、集中、合并等处理,造成资源和人力的浪费。同时,目前的系统架构,无…...
Re77 读论文:LoRA: Low-Rank Adaptation of Large Language Models
诸神缄默不语-个人CSDN博文目录 诸神缄默不语的论文阅读笔记和分类 论文全名:LoRA: Low-Rank Adaptation of Large Language Models ArXiv网址:https://arxiv.org/abs/2106.09685 官方GitHub网站(包含在RoBERTa、DeBERTa、GPT-2上用Lora微调…...
曲波系数 curvelet transform
Curvelet 变换后的系数涵义 曲波变换(Curvelet Transform)是一种多尺度、多方向的变换工具,能够有效地表示信号中的几何特征(如边缘、曲线等)。曲波变换后的系数具有明确的物理意义,反映了信号在不同尺度、…...
OS的随机数生成过程中的内核熵池
内核熵池(Kernel Entropy Pool)是操作系统内核中用于收集和管理熵(随机性来源)的机制 ,在操作系统的随机数生成过程中发挥关键作用。 以下从其原理、作用、工作方式方面详细介绍: 原理:熵在信…...
数据结构:双向循环链表
双向循环链表(Doubly Circular Linked List) 双向循环链表是双向链表的一种变体,其特点是链表的头节点和尾节点相连,形成一个闭环。这种结构允许在链表中进行无缝的双向遍历,并且由于循环特性,可以从任何节…...
IP网和传输网区别(以访问百度为例!)
1. IP网和传输网的关系 IP网:是基于IP协议的网络,负责数据的逻辑传输,包括数据包的路由、寻址和转发。IP网是“虚拟”的,它依赖于底层的传输网来实际传递数据。 传输网:是物理网络基础设施,负责数据的物理…...
STM32裸机开发转FreeRTOS教程
目录 1. 简介2. RTOS设置(1)分配内存(2)查看任务剩余空间(3)使用osDelay 3. 队列的使用(1)创建队列(1)直接传值和指针传值(2)发送/接收…...
FreeSWITCH dialplan/default.xml 之释疑
准备花时间好好研究下,一直都是一知半解 sip_looped_call 通俗地说,就是自己呼叫自己 查文档,是这样讲的:如果调用已通过 ACL 以外的方式进行身份验证,并且当前请求 IP/port 与配置文件 IP/port 匹配,那…...
lambda用法及其原理
目录 lambda形式lambda用法1.sort降序2.swap3.捕捉列表 习题解题 lambda形式 [capture-list](parameters)->return type{function boby}[capture-list]:[捕捉列表]用于捕捉函数外的参数,可以为空,但不能省略;(parameters) &am…...
Go Ebiten随机迷宫生成示例
引言 迷宫生成是计算机科学中一个经典的问题,常用于算法教学和游戏开发。本文将介绍如何使用 Go 语言和 Ebiten 游戏引擎实现一个基于深度优先搜索(DFS)的随机迷宫生成算法,并通过可视化的方式展示迷宫的生成过程。 技术栈 Go …...
前端学习DAY31(子元素溢出父元素)
.box1{width: 200px;height: 200px;background-color: chocolate;} 子元素是在父元素的内容区中排列的,如果子元素的大小超过了父元素,则子元素会从 父元素中溢出,使用overflow属性设置父元素如何处理溢出的子元素 可选值:visible…...
『SQLite』表的创建、修改和删除
本节摘要:主要讲述SQLite中创建、删除、修改表等操作。 创建表 CREATE TABLE 语句来创建表。 修改表 ALTER TABLE 语句来修改表名称、已有表字段,或者新增字段。 删除表 DROP TABLE 语句用来删除表. 注意: 上述内容详细讲解见文章&#…...
可持久化数据结构-线段树(主席树)
可持久化数据结构-线段树(主席树) (与可持久化字典树差不多) 概念:可持久化线段树是基本线段树的一个简单拓展, 是使用函数式编程思想的线段树; 作用: 可以存下来数据结构的所有历史版本 特点: 拓扑结构…...
如何利用PHP爬虫按关键字搜索淘宝商品
在当今的电商时代,获取淘宝商品信息对于市场研究、价格监控和竞争分析等方面具有重要意义。手动搜索和整理大量商品信息不仅耗时耗力,而且容易出错。幸运的是,PHP爬虫技术为我们提供了一种高效、自动化的方式来按关键字搜索淘宝商品。本文将详…...
GitHub - riscv-software-src/riscv-isa-sim: Spike, a RISC-V ISA Simulator
GitHub - riscv-software-src/riscv-isa-sim: Spike, a RISC-V ISA Simulator 操作手册 $ apt-get install device-tree-compiler libboost-regex-dev libboost-system-dev $ mkdir build $ cd build $ ../configure --prefix$RISCV $ make $ [sudo] make install 具体安装 …...
synchronized 学习
学习源: https://www.bilibili.com/video/BV1aJ411V763?spm_id_from333.788.videopod.episodes&vd_source32e1c41a9370911ab06d12fbc36c4ebc 1.应用场景 不超卖,也要考虑性能问题(场景) 2.常见面试问题: sync出…...
Leetcode 3577. Count the Number of Computer Unlocking Permutations
Leetcode 3577. Count the Number of Computer Unlocking Permutations 1. 解题思路2. 代码实现 题目链接:3577. Count the Number of Computer Unlocking Permutations 1. 解题思路 这一题其实就是一个脑筋急转弯,要想要能够将所有的电脑解锁&#x…...
django filter 统计数量 按属性去重
在Django中,如果你想要根据某个属性对查询集进行去重并统计数量,你可以使用values()方法配合annotate()方法来实现。这里有两种常见的方法来完成这个需求: 方法1:使用annotate()和Count 假设你有一个模型Item,并且你想…...
定时器任务——若依源码分析
分析util包下面的工具类schedule utils: ScheduleUtils 是若依中用于与 Quartz 框架交互的工具类,封装了定时任务的 创建、更新、暂停、删除等核心逻辑。 createScheduleJob createScheduleJob 用于将任务注册到 Quartz,先构建任务的 JobD…...
在 Nginx Stream 层“改写”MQTT ngx_stream_mqtt_filter_module
1、为什么要修改 CONNECT 报文? 多租户隔离:自动为接入设备追加租户前缀,后端按 ClientID 拆分队列。零代码鉴权:将入站用户名替换为 OAuth Access-Token,后端 Broker 统一校验。灰度发布:根据 IP/地理位写…...
五年级数学知识边界总结思考-下册
目录 一、背景二、过程1.观察物体小学五年级下册“观察物体”知识点详解:由来、作用与意义**一、知识点核心内容****二、知识点的由来:从生活实践到数学抽象****三、知识的作用:解决实际问题的工具****四、学习的意义:培养核心素养…...
Python爬虫(二):爬虫完整流程
爬虫完整流程详解(7大核心步骤实战技巧) 一、爬虫完整工作流程 以下是爬虫开发的完整流程,我将结合具体技术点和实战经验展开说明: 1. 目标分析与前期准备 网站技术分析: 使用浏览器开发者工具(F12&…...
从零开始打造 OpenSTLinux 6.6 Yocto 系统(基于STM32CubeMX)(九)
设备树移植 和uboot设备树修改的内容同步到kernel将设备树stm32mp157d-stm32mp157daa1-mx.dts复制到内核源码目录下 源码修改及编译 修改arch/arm/boot/dts/st/Makefile,新增设备树编译 stm32mp157f-ev1-m4-examples.dtb \stm32mp157d-stm32mp157daa1-mx.dtb修改…...
相机从app启动流程
一、流程框架图 二、具体流程分析 1、得到cameralist和对应的静态信息 目录如下: 重点代码分析: 启动相机前,先要通过getCameraIdList获取camera的个数以及id,然后可以通过getCameraCharacteristics获取对应id camera的capabilities(静态信息)进行一些openCamera前的…...
Neo4j 集群管理:原理、技术与最佳实践深度解析
Neo4j 的集群技术是其企业级高可用性、可扩展性和容错能力的核心。通过深入分析官方文档,本文将系统阐述其集群管理的核心原理、关键技术、实用技巧和行业最佳实践。 Neo4j 的 Causal Clustering 架构提供了一个强大而灵活的基石,用于构建高可用、可扩展且一致的图数据库服务…...
