XSS-Game 通关教程,XSS-Game level1-18,XSS靶场通关教程

2023-11-15

「作者主页」:士别三日wyx
「作者简介」:CSDN top100、阿里云博客专家、华为云享专家、网络安全领域优质创作者
「专栏简介」: 此文章已录入专栏 靶场通关教程

XSS-Game level1

1)第一步:寻找输入和输出点

在这里插入图片描述

2)第二步:分析输出点代码

提交基础符号 <>" ,查看页面源代码,发现没有被过滤,那就简单了,直接弹窗。

在这里插入图片描述

3)第三步:弹窗测试

地址栏输入payload:<script>alert(1)</script>,回车即可弹窗,自动进入下一关。

在这里插入图片描述

4)从源码可以看到,第一关没有任何过滤。

​​​​​​​​在这里插入图片描述


XSS-Game level2

1)第一步:寻找输入和输出点

在这里插入图片描述

2)第二步:分析输出点代码

提交基础符号 <>",查看网页源代码,发现没有被过滤,但内容被拼接到了value属性里面,需要用双引号闭合。

在这里插入图片描述

3)第三步:弹窗测试

地址栏输入payload:" onclick="alert(2),点击输入框触发弹窗,自动进入下一关。

在这里插入图片描述

4)除了闭合双引号,也可以闭合标签,payload:"><script>alert(2)</script>

5)从源码可以看到,第二关没有过滤,获取内容后直接拼接到value属性中:

在这里插入图片描述

虽然使用 htmlspecialchars() 转义了HTML标签 , 但输出到输入框时,并没有转译,所以不会此关卡造成影响

在这里插入图片描述


XSS-Game level3

在这里插入图片描述

1)第三关过滤了><"&

结果被拼接到value属性中,并使用 htmlspecialchars() 函数将参数内容转译成 HTML实体,默认把 ><"&转换成 &gt;&lt;&quot;&amp;,但源码中没有加 ENT_QUOTES 参数,导致这里并不能过滤单引号,可以使用单引号闭合绕过。

2)地址栏输入payload:'onclick='alert(3),点击输入框触发点击事件即可弹窗,进入下一关。

在这里插入图片描述
换成 onmouseover 等其他事件也可以。


XSS-Game level4

在这里插入图片描述

1)第四关过滤了 ><,可以使用 " 闭合绕过。

源码中可以看到,结果被拼接到value属性中,并使用 str_replace() 函数将 >< 替换成空字符串。

在这里插入图片描述
2)地址栏输入payload:"onclick="alert(4),点击输入框触发点击事件即可弹窗,进入下一关。

在这里插入图片描述

XSS-Game level5

在这里插入图片描述

1)第五关过滤了大小写、<scripton,可以使用其他标签配合伪协议闭合绕过。

源码中可以看到,结果被拼接到了value属性中,使用 strtolower() 函数把值变成小写,使用 str_replace() 函数把 <scripton 替换成了 <scr_ipto_n

在这里插入图片描述

2)在地址栏输入payload:"><a href="javascript:alert(5)">aaa</a> ,点击a标签触发弹窗,进入下一关。

在这里插入图片描述


XSS-Game level6

在这里插入图片描述

1)第六关过滤了<scriptonsrchrefdata 这几个关键字,可以使用大小写绕过。

源码中可以看到,结果被拼接到了value属性中,使用str_replace() 函数替换了很多关键字,但在替换之前并没有匹配大小写。

在这里插入图片描述

2)地址栏输入payload:"><Script>alert(6)</Script> ,回车后直接弹窗,进入下一关。

在这里插入图片描述


XSS-Game level7

在这里插入图片描述

1)第七关过滤了大小写以及 scriptonsrchrefdata 这几个关键字,可以使用双写绕过。

源码中可以看到,结果被拼接到了value属性中,使用 strtolower() 函数限制了大小写,使用 str_replace() 函数替换了很多关键字。但只替换了一遍,可以考虑双写。

在这里插入图片描述
2)地址栏输入payload:"><scrscriptipt>alert(7)</scrscriptipt>,回车后立刻弹窗,进入下一关。

在这里插入图片描述

XSS-Game level8

在这里插入图片描述
1)第八关过滤了大小写以及 scriptonsrcdatahref" ,可以使用html编码绕过。

先看源码,这一关有些不一样,之前结果都是拼接到输入框中,但这关却拼接到了a标签的href属性里面,可以考虑伪协议加编码。

在这里插入图片描述

2)输入框中输入payload:java&#115;cript:alert(8),点击添加友情链接后,点击友情链接触发弹窗,进入下一关。

在这里插入图片描述
提示:#115; 是字母s经过html编码后的形式,编码后的内容可以绕过后端的过滤,但拼接到前端后,就会被浏览器解码,重新变回字母。


XSS-Game level9

在这里插入图片描述

1)第九关过滤了大小写以及 scriptonsrcdatahref" ,并且提交的内容必须包含 http://,可以使用编码配合注释绕过。

源码中,先判断是不是包含 http://,必须包含才能进入下一步。

在这里插入图片描述
然后是过滤大小写和一些关键字:

在这里插入图片描述
过滤还是比较严,可以用伪协议加上html编码绕过,加上 http:// 的话会使代码无效,可以用注释把它过滤掉。

2)输入框中输入payload:java&#115;cript:alert(9) //http://,点击添加友情链接后,点击友情链接触发弹窗,进入下一关。

在这里插入图片描述
提示:// 是html的注释。


XSS-Game level10

在这里插入图片描述
1)第十关比较离谱

明面上的输入点和输出点只是个幌子,这一关的参数不是 ?keyword

在这里插入图片描述

查看网页源码可以发现另外三个参数,尝试过后发现只有第三个可以用(大家就不要尝试了,很无聊)。

在这里插入图片描述
从源码中也可以看到,参数 t_sort 被接收后,过滤了 >< ,然后就拼接到value属性里了。
在这里插入图片描述

由于这个输入框时隐藏的,我们提交参数的时候要加上一个属性,让它显示出来,方便我们点击。

2)地址栏输入payload:?t_sort=" onclick=alert(10) type="text,点击页面上新出现的输入框,触发弹窗,进入下一关。

在这里插入图片描述

XSS-Game level11

在这里插入图片描述

1)第十一关也是隐藏的输入框,需要的参数是 HTTP_REFERER,也就是请求头Referer

过滤情况以及payload和第十关一样,但这里需要通过请求头提交参数。

在这里插入图片描述
2)使用代理( Burp Suite ) 拦截请求 , 修改 Referer ,同样是点击新出现的输入框触发弹窗,进入下一关。

在这里插入图片描述


XSS-Game level12

在这里插入图片描述

1)第十二关还是隐藏的输入框,但这次需要通过 User-Agent 请求头提交参数,过滤情况和payload和十、十一关一样。

在这里插入图片描述

2)使用代理( Burp Suite ) 拦截请求 , 修改 UA请求头,然后点输入框弹窗,进入下一关。

在这里插入图片描述


XSS-Game level13

在这里插入图片描述

1)十三关和十、十一、十二关一样,但请求位置换成了 cookie。

在这里插入图片描述
2)使用代理( Burp Suite ) 拦截请求 ,修改Cookie,弹窗,下一关。

在这里插入图片描述

十四、十五关:略

在这里插入图片描述
地址栏把圈中的14改成16,跳到下一关。


XSS-Game level16

1)到第十六关终于正常了,过滤了大小写以及 script/空格 这几个关键字,可以使用img标签代替script标签,用 %0d%0a 编码代替空格。

在这里插入图片描述

2)地址栏输入payload:<img%0d%0asrc=1%0d%0aonerror=alert(16)>,回车后直接弹窗,进入下一关。

在这里插入图片描述


XSS-Game level17

在这里插入图片描述

1)第十七关过滤了 ><"& 这几个关键字,可以直接拼接事件绕过。

从源码中可以看到,后台将获取的参数用 htmlspecialchars() 函数转换成HTML实体后,直接拼接到了src属性中。

在这里插入图片描述
后台获取参数的时候,并没有判断非空,所以我们只提交 arg02 这一个参数也可以。

src属性的值没有用引号包裹,我们可以直接用空格拼接一个事件,用来触发弹窗。

2)地址栏输入payload:?arg02=b onmouseover=alert(17),鼠标移动到插件的位置,即可触发弹窗,进入下一关。

在这里插入图片描述

XSS-Game level18

在这里插入图片描述

1)十八关和十七关一样,payload:?arg02=b onmouseover=alert(18)

在这里插入图片描述


本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

XSS-Game 通关教程,XSS-Game level1-18,XSS靶场通关教程 的相关文章

  • Vue 如何使用WebSocket与服务器建立链接 持续保持通信

    WebSocket 浏览器通过JavaScript向服务器发出建立WebSocket链接的请求 链接建立后 客户端和服务器端就可以通过TCP链接直接交互数据 WebSocket链接后可以通过 send 方法来向服务器发送数据 并通过 onn
  • vue实现 marquee(走马灯)

    样式 代码 div class marquee prompt div class list prompt span class prompt item span div div data return listPrompt xxx xxxx
  • Codeigniter - 基于帖子禁用 XSS 过滤

    我正在尝试在网站后面设置一个 CMS 但是每当发布数据时 a href 其中帖子数据被废弃 input gt post content true 打开它 但如何关闭它 感谢大家 PVS 如果您想更改默认行为post 方法 您可以扩展核心输入
  • 考虑光伏出力利用率的电动汽车充电站能量调度策略研究(Matlab代码实现)

    欢迎来到本博客 博主优势 博客内容尽量做到思维缜密 逻辑清晰 为了方便读者 座右铭 行百里者 半于九十 本文目录如下 目录 1 概述 2 运行结果 3 参考文献 4 Matlab代码 数据
  • 如何使用 HTML/PHP 防止 XSS?

    我该如何预防XSS https en wikipedia org wiki Cross site scripting 跨站点脚本 仅使用 HTML 和 PHP 我已经看过很多关于这个主题的其他帖子 但我还没有找到一篇文章清楚 简洁地说明如何
  • 可以在 CodeIgniter 中“重复”xss-clean 数据吗?

    以下是在 Codeigniter 中清除 XSS 数据的方法 set global xss filtering在配置中TRUE use xss clean use xss clean作为验证规则 将第二个参数设置为TRUE in this
  • 如何在没有 Spring Boot 的情况下阻止或防止 Spring MVC 4 应用程序的 XSS

    如何保护 清理采用原始 JSON 主体并通常输出 JSON 响应且不使用 Spring Boot 的应用程序 我只看到一个可能有效并使用 JsonComponent 的好例子 如果我们不使用 jsoncomponent 如何过滤掉请求以从整
  • 如何使用 AntiXss 库正确清理内容?

    我有一个简单的论坛应用程序 当有人发布任何内容时 我会 post Content Sanitizer GetSafeHtml post Content 现在 我不确定我是否做错了什么 或者发生了什么 但它不允许几乎没有 html 甚至简单
  • 是否需要验证或转义jsonp回调字符串

    我有一个名为 action php 的文件 它将执行一些操作 我想将其公开为纯 JSON 或 JSONP 输出 用户将使用如下 URL 来调用它 action php jsonp callback 在我的action php中我正在做这样的
  • 为什么标签 x = txtName.Text;遭受XSS攻击,如何预防?

    我有以下代码 label x txtName Text 当安全团队分析该 dll 时 他们表示可以对上述代码执行 XSS 攻击 我知道文本框Text属性并不能防止 XSS 攻击 那么我现在应该做什么 下面的修改能解决这个问题吗 label
  • 我应该采取哪些预防措施来防止用户提交的 HTML 出现 XSS?

    我计划制作一个网络应用程序 允许用户在我的网站上发布整个网页 我正在考虑使用HTML 净化器 http htmlpurifier org 但我不确定 因为 HTML Purifier 会编辑 HTLM 并且 HTML 的发布方式保持不变非常
  • 如何使用 htmlpurifier 允许传递整个文档,包括 html、head、title、body

    鉴于下面的代码 我如何使用 htmlpurifier 让整个内容通过 我想允许整个 html 文档 但 html head style title body 和 meta 被删除 我什至尝试过 config gt set Core Conv
  • HTTP 标头中 CRLF 序列的不正确中和

    我在我的项目上运行了 Veracode 扫描 它在 HTTP 响应拆分下给了我 CWE ID 113 问题 我尝试根据建议解决该问题 但没有成功 例如 try String selNhid req getParameter selNhid
  • 什么是 http 标头“X-XSS-Protection”?

    所以我现在一直在 telnet 中玩弄 HTTP 即只需输入telnet google com 80并放入具有不同标头的随机 GET 和 POST 等 但我遇到了 google com 在其标头中传输的一些我不知道的内容 我一直在翻阅htt
  • img src 属性中使用 javascript 进行 XSS 攻击

    一些较旧的浏览器容易受到 XSS 攻击 img src 当前版本的 IE FF Chrome 不是 我很好奇是否有浏览器容易受到类似的攻击 img src somefile js or 或其他类似的地方 somefile js 包含一些恶意
  • CodeIgniter - 为什么使用 xss_clean

    如果我正在清理我的数据库插入 并且还转义我编写的 HTMLhtmlentities text ENT COMPAT UTF 8 是否还需要使用 xss clean 过滤输入 它还有什么其他好处 xss clean http docs gip
  • PHP Web 应用程序 (Magento) 遭到黑客攻击;这段黑客代码有什么作用?

    我刚刚安装的 Magento 1 3 2 4 被黑了 你能告诉我这段代码的目的是什么吗 另外 如何阻止这种情况以及如何发现漏洞 谢谢 function net match network ip ip arr explode network
  • 什么时候最好清理用户输入?

    用户等于不可信 永远不要相信不可信的用户输入 我明白了 但是 我想知道清理输入的最佳时间是什么时候 例如 您是否盲目存储用户输入 然后在访问 使用时对其进行清理 或者您是否立即清理输入 然后存储此 清理 版本 也许除了这些之外还有一些我没有
  • Chrome:ERR_BLOCKED_BY_XSS_AUDITOR 详细信息

    我在尝试发布然后获得一个简单的表单时收到了这个 chrome 标志 问题是开发者控制台没有显示任何相关内容 我自己无法找到问题的根源 是否有任何选项可以更详细地查看此内容 查看触发错误的代码片段以修复它 在开发中绕过此错误的简单方法是将标头
  • 创建全屏 iframe

    我目前正在研究 XSS 攻击 目的是在客户端演示中使用它们 我是渗透测试员 我编写了一个工具 该工具将托管网站登录页面的恶意版本 获取用户名和密码 然后将受害者重定向回原始网站 然而 我一直在尝试使用 iframe 来让它工作 因为它看起来

随机推荐

  • 手写Promise.resolve,Promise.reject, Promise.all

    promise A 规范中说明promise有三种状态 且状态一旦被改变就不能再次发生变化 const PENDING Pending const FULFILLED Fulfilled const REJECTED Rejected cl
  • 普洛斯与宁德时代签署战略合作协议;高博昌平国际研究型医院成为北京自贸区首批签约项目

    今日看点 普洛斯宣布与宁德时代签署战略合作协议 双方凭借在各自产业领域内的领先优势 组建资产管理合资公司 持有 管理和运营宁德时代电池 储能系统及其支持的各类车辆 船舶等资产 通过绿色能源资产服务化 降低物流 运输等相关企业大规模使用新能源
  • econgnition选择面向对象的样本,输出shp并在arcmap里打开,随机平均分为训练样本和测试样本

    有不懂的可以看我发的前一篇 打开软件 进行一个尺度为100的多尺度分割 进行一个类别的加 然后用它上面那个蓝色的三角尺工具 这个工具是直接指定类别的 不是用来选择样本的 在toolbar第二个选条那里选择你要的类别 比如我是vegetati
  • maven的安装和配置

    一 下载maven 1 下载地址Maven Download Apache Maven 2 将下载的文件进行解压到任意目录 linux解压用tar xvf apache maven 3 6 3 bin tar gz 3 windows配置环
  • CVE-2019-3396 Confluence RCE漏洞简单粗暴复现

    CVE 2019 3396 Confluence RCE漏洞简单粗暴复现 1 前言 网上也有很多关于该漏洞的说明和复现 不再做过多阐述 在复现该漏洞时踩了一些坑 然后发现了一个快速复现的方法 所以本篇文章介绍的是如何简单快速地复现该漏洞 想
  • Quartz 之 JobKey 源码解读

    首先 我们看下上个博文 CronTrigger 示例2 中部分打印的日志内容 INFO 17 一月 09 41 40 016 下午 MyScheduler Worker 9 com example03 SimpleJob SimpleJob
  • 2021-01-25Redis存取list

    redis存取list类型数据 首先 为了避免高并发给myql数据库增加负担 所有大多数时候会利用redis数据库解决这个问题 1 首先启动redis服务 在bin目录下打开powshell命令如下 PS D devtools Redis
  • 浅谈程序分析

    孙军 新加坡管理大学教授 研究方向为 形式化方法 软件工程 安全等 爱好 爬山 攀岩等 如果读者想了解更多有关程序分析相关的技术内容 欢迎加入编程语言技术社区 SIG 程序分析 加入方式 文末有小助手微信 添加并备注加入 SIG 程序分析
  • 获取map中第一个数据值

    为什么80 的码农都做不了架构师 gt gt gt 获取map中第一个非空数据值 param
  • Git GUI基本操作

    一 Git GUI基本操作 1 版本库初始化 gitpractise文件夹就变成了Git可以管理的仓库 目录下多了一个 git文件夹 此目录是Git用于管理版本库的 不要擅自改动里面的文件 这样会破坏Git仓库 git文件夹默认是隐藏的 如
  • 二进制编码

    前言 我们都知道 一个程序是 数据结构 算法 如果对应到组成原理或者是硬件层面上来说 算法就是我们的各种计算机指令 而数据结构就是我们对应的二进制数据 字符串的表示 从编码到数字 其实不仅数字可以用字符串来表示 最典型的例子就是字符串 最早
  • Java基础5--数组

    Java基础5 数组 数组定义 数组是相同类型数据的有序集合 数组描述的是相同类型的若干个数据 按照一定的先后次序排列组合而成 其中 每一个数据称作一个数组元素 每个数组元素可以通过一个下标来访问它们 数组声明与创建 首先必须声明数组变量
  • NLTK: [Error:11004] getaddrinfo failed

    当我运行nltk的词分割时 from nltk tokenize import word tokenize text God is Great I won a lottery print word tokenize text 出现了缺少pu
  • 【Linux驱动】copy_to_user 、copy_from_user 函数

    用户一般访问内核 需要从用户态变为内核态 然后再访问内核 这么做的目的是防止用户随意篡改内核 在编写某个外设的驱动时 我们需要实现内核中的 read 和 write 函数 此时站在内核的角度 无法直接读取用户缓冲区 或者 无法直接向用户缓冲
  • GBDT与xgboost :流失预测 shap解释 调参 保存调参好的模型

    集成学习 集成学习的方式分为两类 个体的学习器之间存在强依赖关系 必须串行生成序列化方法 代表 Boosting 个体学习器之间不存在强依赖关系 可同时生成并行化方法 代表是Bagging和随机森林 bagging boosting sta
  • workbench拓扑优化教程_拓扑优化(Topology Optimization)浅谈

    近期刚刚完成了某产品吊重梁的拓扑优化分析 稍微整理下这方面的内容 如有不恰当的地方 还望各位大佬指正 拓扑优化 topology optimization 是一种根据给定的负载情况 约束条件和性能指标 在给定的设计区域内对材料分布进行优化的
  • Linux中常用操作命令

    一 常用的文件 目录操作命令 这是我们使用得最多的命令了 Linux最基础的命令 可用 pwd命令查看用户的当前目录 可用 cd 命令来切换目录 表示当前目录 表示当前目录的上一级目录 父目录 表示用 cd 命令切换目录前所在的目录 表示用
  • python3 selenium webdriver.Chrome php 爬取汽车之家所有车型详情数据[开源版]

    介绍 本接口是车型库api的补充 用于爬取汽车之家所有车型详情数据 开源地址 https gitee com web CarApi tree master python 软件架构 python3 selenium webdriver Chr
  • 2020数字中国创新大赛 • 算法赛道冠军技术方案分享

    写在前面的话 作者说 我是来自京东数科的朱翔宇 也是此次大赛 Champion Chasing Boy 团队的 DOTA 常用ID 在与队友 鱼遇雨欲语与余 京东零售 尘沙杰少 林有夕 嗯哼哼唧的共同努力下 最终在 2020数字中国创新大赛
  • XSS-Game 通关教程,XSS-Game level1-18,XSS靶场通关教程

    作者主页 士别三日wyx 作者简介 CSDN top100 阿里云博客专家 华为云享专家 网络安全领域优质创作者 专栏简介 此文章已录入专栏 靶场通关教程 XSS Game XSS Game level1 XSS Game level2 X