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

XSS靶场(1-11关)

目录

简述xss

xss第1关

xss第2关

​编辑

xss第3关

xss第4关

xss第5关过滤了 on script

xss第6关

xss第7关

xss第8关

xss第9关

xss第10关

xss11关


我把源代码靶场放到了最顶端

简述xss

XSS攻击通常指的是通过利用网页开发时留下的漏洞,通过巧妙的方法注入恶意指令代码到网页,使用户加载并执行攻击者恶意制造的网页程序。这些恶意网页程序通常是JavaScript,但实际上也可以包括Java、 VBScript、ActiveX、 Flash 或者甚至是普通的HTML。攻击成功后,攻击者可能得到包括但不限于更高的权限(如执行一些操作)、私密网页内容、会话和cookie等各种内容。

xss第1关

没有对用户进行get传参过滤

<script>alert(1)</script>

xss第2关

form表单

​​<form><input></form></form>

通过我们分析源码 得知,也是在<h2></h2>

再将<script>window.alert(1)</script> 写入 (但是结果没有显示 )

htmlspecialchars

php后端 有个过滤函数 htmlspecialchars()

htmlspecialchars — 将特殊字符转换为 HTML 实体

  • htmlspecialchars 字符转义

    字符替换后
    & (& 符号)&amp;
    " (双引号)&quot;,除非设置了 ENT_NOQUOTES
    ' (单引号)设置了 ENT_QUOTES 后, &#039; (如果是 ENT_HTML401) ,或者 &apos; (如果是 ENT_XML1ENT_XHTMLENT_HTML5)。
    < (小于)&lt;
    > (大于)&gt;

html又有html实体编码 又会讲转换的转回原来的

所有我们需要逃逸出“> 这样就可以执行我们的代码

第一种

第二种onclick点击触发事件 (window下面的事件 移动事件)

xss第3关

htmlspecialchars 有这个ENT_QUOTES 就会将单引号过滤 转译

这个东西是老师添加的

单引号逃逸

xss第4关

过滤了<>

双引号逃逸 跟第三关一样的解法

xss第5关过滤了 on script

我们可以写一个超链接 通过超链接执行alert(1)

javascript:alert(1) 通过js文件来执行alert1

a">aaa

点击之后就执行

xss第6关

过滤了很多,超链接也被过滤

大小写 就可以

a">aaa

xss第7关

双写绕过

a">aaa

xss第8关

过滤了很多

但我们通过分析源码 发现 送上门的 直接会被弄成超链接

直接写入但是被过滤

直接html实体编码 之后html自己实体解码 转换成javascript:alert(1)

在线Html实体编码解码-HTML Entity Encoding/Decoding (config.net.cn)

xss第9关

必须要有http才可以执行

javascript:alert('http') 将http留着 剩余编码

javascript:alert('http://&#39;&#41;

xss第10关

通过源码分析 form的值被隐藏只能在url中传递参数 (t_sort可接受参数)

逃逸单引号 点击事件解决

问题又来了,input被隐藏 (修改类型type=test)

xss11关

通过火狐 浏览器 改变t_ref

需要下载插件hackbar

http://www.lryc.cn/news/427137.html

相关文章:

  • vue2 子组件props接收父组件对象或数组必须使用函数进行返回
  • 【算法/学习】双指针
  • Springboot集成Liquibase笔记整理
  • Python拆分无atlas图集(瑕疵版)
  • SQLALchemy 排序
  • 【iOS】Block底层分析
  • 复现dom破坏案例和靶场
  • 【高校科研前沿】南方科技大学冯炼教授等人在遥感顶刊RSE发文:全球人类改造的基塘系统制图
  • How to run angular CICD on gitlab-runner of wsl?
  • 搭建Java集成开发环境IntelliJ IDEA
  • JS逆向浏览器脱环境专题:事件学习和编写、DOM和BOM结构、指纹验证排查、代理自吐环境通杀环境检测、脱环境框架、脱环境插件解决
  • 驾校预约学习系统--论文pf
  • 交叉编译ARM平台的OpenCV1.0
  • 牛客周赛 Round 56 AK
  • LeetCode 热题 HOT 100 (038/100)【宇宙最简单版】
  • SQLALchemy ORM 的关联关系之 ORM 中的一对一
  • 模型部署 - docker
  • 学懂C++(三十四):深入详解 C++ 高级多线程编程技术中的并发设计模式
  • 大数据产业链图谱_产业链全景图_大数据行业市场分析
  • photonserver 部署相关教程
  • GEE训练:sentinel-1数据的投影、显示和导出
  • 后端学习笔记(七)--MyBatis参数传递
  • uniapp 网络请求自动处理loading
  • 【Solidity】函数的使用
  • 详解golang内存管理
  • C++ 线程 一些同步方式
  • 【开发语言】编译型语言和解释性语言有啥区别?
  • 将A服务器上指定文件夹中的文件,批量同步到B服务器上
  • 2024.8.17
  • 十分钟搭建一个RTMP服务器