xss-labs靶场基础8-10关(记录学习)

 前言:

内容:

第八关

关卡资源网站,html编码网站(两个网站,一个是实体编号转义(只对特殊字符有效,字母无效)、实体符号转义)

         在线Html实体编码解码-HTML Entity Encoding/Decoding   //实体化符号编码

htmlb编码表

HTML字符集| HTML字符代码和符号

简单解释区别,

        一种是方便记忆(实体符号编码,但是不能保证所有浏览器都支持)

         另一种浏览器通用,记忆难度大(实体符号编码)

网站解析的解码的顺序:html解码、url解码、js解码

什么都被那个替换了,所有的字段都被替换了,相当于没用了,我看的用编码可以绕过

但是不知道为啥能这样,

问题思考:为啥<>被实体化编码了,还是能够正常解析弹窗语句,与平常的说的xss防御应该要实体化编码,两者的区别是什么?

解:忘求了,好像是对<a href="实体化编码">test</a>,对里面实体化编码,但是浏览器解析,会先解码,在解析

如果是对<>,这类实体化编码了,就想不到办法进行弹窗了。

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

总结思路:

未对<>进行过滤了,但是使用了href字段,这个可以执行js语句,虽然对里面的大多数语句进行过滤,但是未对编码后的字段进行过滤,将javascript:alert(1)进行html编码,进行绕过

第九关

首先的思路肯定是把上一关的payload写进去,然后就看一下什么反应

链接不合法?  我本来就没有输入合法的内容,但是检测出我的payload还是什么

我继续检测,尝试看题目说的是什么,添加友情链接,难道要添加链接?

我先尝试写一个正常的链接,http://127.0.0.1,发现关键字必须要http://才行

然后构造payload:

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

思考

为什么前面加上//,才能正确的弹窗,?

我的理解是在浏览器上,//是注释后面的内容,然后我去验证这个论点

javascriopt协议中,//是单行注释的符号,就是不执行后面的内容,什么是javascript协议,就是上面写的,javascript:alert(1),就是冒号后面的内容都是用js执行的,也就是  //为单行注释符的意思,为什么是js执行,因为前面说了用javascript语句执行

无javascript协议,普通的http://127.0.0.1,那就是普通的url协议,并不会是单行注释的

扩展思考

在html协议中,也是在浏览器中,有两种协议,一种是html协议,另一种是javascript协议

javascript协议是单行注释

html主题中,是没有任何含义的,直接渲染出来了

那么html主体中,靠什么注释,我查了,是这个方法,<!-- 注释内容 -->

总结思路

漏洞的前提条件:1、http://可以放到最后

2、在href字段内,导致里面的内容,是js代码执行的,然后js代码里面的//是注释的意思

3、没有注释//

4、没有检测html编码后的javascript:alert(1)

第10关

前言:我觉得用burp抓包更好理解,这个是有交互的,就是和web交互,而sql注入没有web交互,直接和数据库进行交互,所有的操作都是可以在burp抓包完成

但是xss如果在burp上完成,方便理解是服务器过滤了,还是web本身前端过滤了,但是前端过滤了,好像就进不了后端了,所以的话,一般都是后端过滤,

但是还是不理解为什么dom型不进入后端,也就是用burp抓不到包吧。

废话一大推

正题:

进入靶场页面,一个输入点都没有?????奇怪不是说好要有输入和输出吗,现在输入都没有了。我找一下

废了,我直接看源代码,看到有个hidden,然后我就直接删掉了,集出现一个框,输入就按enter键提交了,

然后就在前端元素里,就直接删掉,就好了,但是由于type的隐藏属性,就不会有框的,提交之后也不会有框的,

但是onclick,就需要点那个框,才会有弹窗的

构造payload:

"οnclick=alert(1) type="text

思考

为啥要显示才能弹窗?

由于,input标签本身就是用来输入的,所以他也就是要有输入框的,如果没有输入框,那就是相当于浏览器并不会执行input标签的语句,也就是并不会输出在前端,如果没有输出,那么漏洞本身也就不存在了,也就是说必须要前端页面显示了那个输入框,才会正常弹窗,如果是hidden属性,隐藏了那个框,就算xss攻击语句正确,也不能进行弹窗

所以,漏洞是否存在,取决于这个 input 元素是否能够引发一个交互事件。若该元素是隐藏的并且没有交互行为,XSS 攻击就无法触发。

成功的条件:

1、过滤了<>尖括号,但是没有过滤”双引号,依然可以用input里,onclick可执行js代码

3、为过滤on*语句

2、需要将标签的内容显示出来,用type="text显示出来,因为他可以拼接到浏览器的html代码里

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/pingmian/80660.shtml
繁体地址,请注明出处:http://hk.pswp.cn/pingmian/80660.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Kafka topic 中的 partition 数据倾斜问题

在 Kafka 中&#xff0c;如果一个 Topic 有多个 Partition&#xff0c;但这些 Partition 中的消息数量或流量分布不均衡&#xff0c;就会出现 数据倾斜&#xff08;Data Skew&#xff09; 的问题。 ✅ 什么是数据倾斜&#xff1f; 数据倾斜指的是&#xff1a; 某些 Partitio…

Retrofit vs Feign: 介绍、对比及示例

1. 介绍 Retrofit Retrofit 是 Square 公司开发的一个类型安全的 HTTP 客户端库&#xff0c;主要用于 Android 和 Java 应用。它将 HTTP API 转换为 Java 接口&#xff0c;通过注解来描述 HTTP 请求。 主要特点: 基于注解的 API 定义支持同步和异步调用支持多种数据格式转换…

SpringBoot整合MyBatis-Plus:零XML实现高效CRUD

前言 作为一名开发者&#xff0c;数据库操作是我们日常工作中不可或缺的部分。传统的MyBatis虽然强大&#xff0c;但需要编写大量XML映射文件&#xff0c;这在快速开发的今天显得效率不足。MyBatis-Plus&#xff08;简称MP&#xff09;作为MyBatis的增强工具&#xff0c;在保留…

SpringCloud之Gateway基础认识-服务网关

0、Gateway基本知识 Gateway 是在 Spring 生态系统之上构建的 API 网关服务&#xff0c;基于 Spring &#xff0c;Spring Boot 和 Project Reactor 等技术。 Gateway 旨在提供一种简单而有效的方式来对 API 进行路由&#xff0c;以及提供一些强大的过滤器功能&#xff0c;例如…

Redis扫盲

Redis 缓存中间件 基础篇 键值数据库 key Value 是NoSql数据库 非结构化、无关联的、非SQL、BASE&#xff08;无法满足ACID&#xff09; 命令执行是单线程&#xff0c;符合原子性。 低延迟、速度块&#xff08;基于内存&#xff0c;IO多路复用&#xff0c;良好的编码&am…

【FMMT】基于模糊多模态变压器模型的个性化情感分析

遇到很难的文献看不懂,不应该感到气馁,应该激动,因为外审估计也看不太懂,那么学明白了可以吓唬他 缺陷一:输入依赖性与上下文建模不足​​ ​​缺陷描述​​: 传统自注意力机制缺乏因果关系,难以捕捉序列历史背景多模态数据间的复杂依赖关系未被充分建模CNN/RNN类模型在…

Qt Creator 配置 Android 编译环境

Qt Creator 配置 Android 编译环境 环境配置流程下载JDK修改Qt Creator默认android配置文件修改sdk_definitions.json配置修改的内容 Qt Creator配置 异常处理删除提示占用编译报错连接安卓机调试APP闪退无法进入 debug 断点 环境 Qt Creator 版本 qtcreator-16.0.1Win10 嗯, …

使用聊天模型和提示模板构建一个简单的 LLM 应用程序

官方教程 官方案例 在上面的链接注册后&#xff0c;请确保设置您的环境变量以开始记录追踪 export LANGSMITH_TRACING"true" export LANGSMITH_API_KEY"..."或者&#xff0c;如果在笔记本中&#xff0c;您可以使用以下命令设置它们 import getpass imp…

React vs Vue:点击外部事件处理的对比与实现

React vs Vue&#xff1a;点击外部事件处理的对比与实现 在 Web 应用中&#xff0c;“点击外部事件监听”是一种常见需求&#xff0c;典型应用如&#xff1a;点击弹窗外部关闭弹窗、点击下拉菜单外关闭菜单。虽然在 React 和 Vue 中实现的原理类似——都是通过监听 document 的…

3335. 字符串转换后的长度 I

3335. 字符串转换后的长度 I class Solution:def lengthAfterTransformations(self, s: str, t: int) -> int:# 大质数mod 10**97# 创建一个长度为26的数组cnt&#xff0c;对应26个小写字母cnt [0]*26# 计算出s中26个字符分别有多少个for ch in s:cnt[ord(ch)-ord(a)] 1f…

Java详解LeetCode 热题 100(15):LeetCode 189. 轮转数组(Rotate Array)详解

文章目录 1. 题目描述2. 理解题目3. 解法一&#xff1a;使用额外数组3.1 思路3.2 Java代码实现3.3 代码详解3.4 复杂度分析3.5 适用场景 4. 解法二&#xff1a;环状替换法&#xff08;原地算法&#xff09;4.1 思路4.2 Java代码实现4.3 代码详解4.4 复杂度分析4.5 陷阱与注意事…

数据治理域——日志数据采集设计

摘要 本文主要介绍了Web页面端日志采集的设计。首先阐述了页面浏览日志采集&#xff0c;包括客户端日志采集的实现方式、采集内容及技术亮点。接着介绍了无线客户端端日志采集&#xff0c;包括UserTrack的核心设计、移动端与浏览器端采集差异以及典型应用场景崩溃分析。最后探…

PYTHON训练营DAY24

# SO代码我们的感情好像跳楼机 # 元组创建时&#xff0c;可以省略括号&#xff1a;my_tuple4 10, 20, thirty # 字符串要加“ ” 元组 一、创建 my_tuple1 (1, 2, 3) my_tuple2 (a, b, c) my_tuple3 (1, hello, 3.14, [4, 5]) # 可以包含不同类型的元素 print(my_tupl…

超声波传感器模块

欢迎来到 破晓的历程的 博客 ⛺️不负时光&#xff0c;不负己✈️ 文章目录 1.HC-SR04介绍2.HC-SR04原理介绍2.1原理概述3.2原理详解 4驱动代码编写4.1写前思考4.2硬件连线 5.总结hcsr04.hhcsr04.c 1.HC-SR04介绍 超声波传感器有很多种类的型号&#xff1a;HC-SR04、UC-025、…

《Effective Python》第2章 字符串和切片操作——深入理解Python 中的字符数据类型(bytes 与 str)的差异

引言 本篇博客基于学习《Effective Python》第三版 Chapter 2: Strings and Slicing 中的 Item 10: Know the Differences Between bytes and str 的总结与延伸。在 Python 编程中&#xff0c;字符串处理是几乎每个开发者都会频繁接触的基础操作。然而&#xff0c;Python 中的…

py7zr解压文件时报错CrcError(crc32, f.crc32, f.filename)

报错信息 Traceback (most recent call last):File "/home/hp/project/test/file_util.py", line 130, in extract_archive_7zarchive.extract(targets[fixed_file], pathoutput_dir, recursiveTrue)File "/home/hp/miniconda3/envs/celery/lib/python3.10/sit…

物理:由基本粒子组成的个体能否提炼和重组?

个体差异源于基本粒子组合的复杂性与随机性,这一假设若成立,确实可能为生物医学带来革命性突破——但需要突破技术、理论与系统层级的多重壁垒。以下从科学逻辑与技术路径展开分析: 一、随机组合中的共性与稳定结构 1. 自然界的自组织规律 涌现性(Emergence):尽管粒子组…

动态路由EIGRP的配置

动态路由EIGRP的配置 动态路由EIGRP&#xff1a;增强内部网关协议 为何收敛快、不成环&#xff1f; 路由计算的无环路和路由的收敛速度是路由计算的重要指标。EIGRP协议由于使用了DUAL算法&#xff0c;使得EIGRP协议在路由计算中不可能有环路路由产生&#xff0c;同时路由计…

组合问题(多条件)

39. 组合总和 - 力扣&#xff08;LeetCode&#xff09; class Solution { private:vector<vector<int>>result;vector<int>path;void backtracking(vector<int>& candidates, int target,int sum,int startIndex){if(sum>target){return;}if(…

SimScape物理建模实例2--带控制的单质量弹簧阻尼系统

模型下载&#xff1a; 基于simscape&#xff0c;单质量系统带位置控制资源-CSDN文库 在实例1中&#xff0c;我们搭建了不带控制的单质量弹簧阻尼系统&#xff0c;该系统没有外界力量介入&#xff0c;只有弹簧的初始弹力&#xff0c;带着弹簧使劲弹来弹去。 SimScape物理建模实…