【BurpSuite】Cross-site scripting (XSS 学徒部分:1-9)

embedded/2024/9/22 17:18:46/

🏘️个人主页: 点燃银河尽头的篝火(●’◡’●)
如果文章有帮到你的话记得点赞👍+收藏💗支持一下哦

【BurpSuite】Cross-site scripting (XSS 学徒部分:1-9)

  • 实验一 Lab: Reflected XSS into HTML context with nothing encoded
  • 实验二 Lab: Stored XSS into HTML context with nothing encoded
  • 实验三 Lab: DOM XSS in document.write sink using source location.search
  • 实验四 Lab: DOM XSS in innerHTML sink using source location.search
  • 实验五 Lab: DOM XSS in jQuery anchor href attribute sink using location.search source
  • 实验六 Lab: DOM XSS in jQuery selector sink using a hashchange event
  • 实验七 Lab: Reflected XSS into attribute with angle brackets HTML-encoded
  • 实验八 Stored XSS into anchor href attribute with double quotes HTML-encoded
  • 实验九 Reflected XSS into a JavaScript string with angle brackets HTML encoded


实验一 Lab: Reflected XSS into HTML context with nothing encoded

要求:
将 XSS 反射到 HTML 上下文中,不进行任何编码

将以下内容复制并粘贴到搜索框中:

<script>alert(1)</script>

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

实验二 Lab: Stored XSS into HTML context with nothing encoded

要求:
该实验在评论功能中 包含一个存储的跨站点脚本漏洞。
要完成此实验,请提交一条评论,alert在查看博客文章时调用该函数。

在评论框中输入以下内容:

<script>alert(1)</script>

输入姓名、电子邮件和网站
点击“发表评论”
在这里插入图片描述

返回博客
在这里插入图片描述

实验三 Lab: DOM XSS in document.write sink using source location.search

要求:
此实验室在搜索查询跟踪功能中包含基于 DOM 的跨站点脚本漏洞。它使用 JavaScriptdocument.write函数将数据写入页面。该document.write函数使用来自 的数据进行调用location.search,您可以使用网站 URL 进行控制。
要完成此实验,请执行调用该函数的跨站点脚本alert攻击

<script>alert(1)</script>试试在这里插入图片描述
发现js语句未解析
在这里插入图片描述
查看源码
在这里插入图片描述
写入

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

先闭合再注入
在这里插入图片描述

在这里插入图片描述

实验四 Lab: DOM XSS in innerHTML sink using source location.search

要求:
此实验室在搜索博客功能中 包含基于 DOM 的跨站点脚本漏洞。它使用赋值,使用来自 的数据来innerHTML更改元素的 HTML 内容。 divlocation.search
要完成此实验,请执行调用该函数的跨站点脚本alert攻击。

该 innerHTML 接收器不接受 script 元素,也不会 svg onload事件触发。这意味着将需要使用替代元素,如img 或 iframe。事件处理程序,如onload 以及onerror可以与这些元件结合使用。
例如:

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

<script>alert(1)</script>试试,果然不行
在这里插入图片描述

<img src=1 onerror=alert(1)>
在这里插入图片描述

实验五 Lab: DOM XSS in jQuery anchor href attribute sink using location.search source

要求:
此实验在提交反馈页面中包含基于 DOM 的跨站点脚本漏洞。它使用 jQuery 库的$选择器函数来查找锚元素,并href使用location.search.
要解决此实验,请设置“后退”链接警报document.cookie

注意:
潜在接收器是jQuery的$()选择器函数,它可用于将恶意对象注入DOM。
jQuery曾经非常流行,典型的DOM XSS漏洞是由于网站将此选择器与location.hash源结合使用来生成动画或自动滚动到页面上的特定元素而导致的。此行为通常是使用易受攻击的hashchange事件处理程序实现的,如下所示:
$(window).on(‘hashchange’, function() {
var element = $(location.hash);
element[0].scrollIntoView();
});
作为 hash 是用户可控的,攻击者可以利用它将XSS向量注入 $()选择器接收器。较新版本的jQuery修补了此特定漏洞,方法是在输入以散列字符( #)。但仍然可以在野外找到易受攻击的代码
要真正利用此典型漏洞,需要找到一种方法来触发hashchange没有用户交互的事件。最简单的方法之一是通过iframe:

<iframe src="https://vulnerable-website.com#" onload="this.src+='<img src=1 onerror=alert(1)>'">

在此示例中,src属性指向哈希值为空的易受攻击的页面。当 iframe 被加载时,一个XSS向量被附加到散列中,从而触发hashchange事件(即使较新版本的jQuery也可能通过 $() 选择器接收器,前>提是可以完全控制来自不需要 #前缀)

在这里插入图片描述

将查询参数更改returnPath后跟任意字符串
在网页代码中查找位置,发现字符串输出位置为href
在这里插入图片描述

returnPath后语句改为:

javascript:alert(document.cookie)

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

在这里插入图片描述

实验六 Lab: DOM XSS in jQuery selector sink using a hashchange event

要求:
该实验室主页上 存在一个基于 DOM 的跨站脚本漏洞。它使用 jQuery 的$()选择器函数自动滚动到给定的帖子,其标题通过location.hash属性传递。
要解决该实验室问题,请向受害者提供一个漏洞利用程序,print()在其浏览器中调用该函数。

从实验室横幅中,打开漏洞利用服务器。
在这里插入图片描述
在正文部分中,添加以下恶意代码iframe:

<iframe src="https://YOUR-LAB-ID.web-security-academy.net/#" onload="this.src+='<img src=x onerror=print()>'"></iframe>我的是:
<iframe src="https://0ab800ae03b47348804e7bdc00600048.web-security-academy.net/#" onload="this.src+='<img src=x onerror=print()>'"></iframe>

在这里插入图片描述

在这里插入图片描述

存储漏洞利用程序,然后单击查看漏洞利用程序View exploit,print()以确认调用了 该函数。
在这里插入图片描述

返回漏洞利用服务器并单击 交付给受害者Deliver to victim 以解决实验室问题。

在这里插入图片描述

实验七 Lab: Reflected XSS into attribute with angle brackets HTML-encoded

要求:
此实验室在搜索博客功能中包含一个反映的跨站点脚本漏洞,其中尖括号是 HTML 编码的。要完成此实验,请执行跨站点脚本攻击,注入属性并调用该alert函数。

在搜索框中提交随机字母数字字符串,然后查看网页源码,发现是双引号"闭合
在这里插入图片描述

将输入替换为:

"οnmοuseοver="alert(1)

出现弹窗
在这里插入图片描述

实验八 Stored XSS into anchor href attribute with double quotes HTML-encoded

要求:
该实验在评论功能中包含一个存储的跨站点脚本漏洞。要完成此实验,请提交一条评论,该评论将alert在单击评论作者姓名时调用该函数。

在“网站”输入中发布带有随机字母数字字符串的评论,然后使用 Burp Suite 拦截请求并将其发送到 Burp Repeater。
在这里插入图片描述

在浏览器中发出第二个请求以查看帖子,并使用 Burp Suite 拦截该请求并将其发送到 Burp Repeater。
观察第二个 Repeater 选项卡中的随机字符串已反映在锚点href属性内。
在这里插入图片描述

再次重复该过程,但这次将您的输入替换为以下有效负载,以注入调用警报的 JavaScript URL:
即上图框住部分website=javascript:alert(1)

javascript:alert(1)

通过右键单击、选择“复制 URL”并将 URL 粘贴到浏览器中来验证该技术是否有效。单击评论上方的名称应该会触发警报。
在这里插入图片描述

实验九 Reflected XSS into a JavaScript string with angle brackets HTML encoded

要求:
此实验室在尖括号编码的搜索查询跟踪功能中包含反映的跨站点脚本漏洞。反射发生在 JavaScript 字符串内。要完成此实验,请执行跨站点脚本攻击,突破 JavaScript 字符串并调用该alert函数

在搜索框中提交随机字母数字字符串,然后使用 Burp Suite 拦截搜索请求并将其发送到 Burp Repeater。
观察随机字符串已反映在 JavaScript 字符串中。
在这里插入图片描述

将您的输入替换为以下有效负载,以打破 JavaScript 字符串并注入警报:

'-alert(1)-'

在这里插入图片描述

通过右键单击、选择“复制 URL”并将 URL 粘贴到浏览器中来验证该技术是否有效。当您加载页面时,它应该触发警报。
在这里插入图片描述


http://www.ppmy.cn/embedded/115144.html

相关文章

NCNN 源码(1)-模型加载-数据预处理-模型推理

参考 ncnn 第一个版本的代码。 0 整体流程 demo&#xff1a;squeezenet ncnn 自带的一个经典 demo&#xff1a;squeezenet 的代码: // 网络加载 ncnn::Net squeezenet; squeezenet.load_param("squeezenet_v1.1.param"); squeezenet.load_model("squeezenet_…

6、论文阅读:水下图像增强基准数据集及其他数据集

水下图像增强基准数据集及其他数据集 前言引言贡献现有方法、评估指标和数据集:概述水下增强方法基于补充信息的方法基于非物理模型的方法基于物理模型的方法数据驱动的方法水下图像质量评估完整参考指标没有参考指标水下图像数据集提出基准数据集数据收集参考图像的生成评估与…

连续数组问题

目录 一题目&#xff1a; 二思路&#xff1a; 三代码&#xff1a; 一题目&#xff1a; leetcode链接&#xff1a;. - 力扣&#xff08;LeetCode&#xff09; 二思路&#xff1a; 思路&#xff1a;前缀和&#xff08;第二种&#xff09;化0为-1hash&#xff1a; 这样可以把…

Vue使用代理方式解决跨域问题

1、解决跨域问题 如果 Vue 前端应用请求后端 API 服务器&#xff0c;出现跨域问题&#xff08;CORS&#xff09;&#xff0c;如下图&#xff1a; 解决方法&#xff1a;在 Vue 项目中&#xff0c;打开 vue.config.js 配置文件&#xff0c;在配置文件中使用代理解决跨域问题。 …

初识elasticsearch

初识elasticsearch 1.什么是elasticsearch 一个开源的分布式搜索引擎&#xff0c;可以用来实现搜索、日志统计、分析、系统监控等功能&#xff1b;elasticsearch 是结合kibana、Logstash、Beats,也就是elastic stach(ELK)。被广泛应用在日志数据分析、实时监控等领域。 elastic…

【CSS in Depth 2 精译_036】5.6 Grid 网格布局中与对齐相关的属性 + 5.7本章小结

当前内容所在位置&#xff08;可进入专栏查看其他译好的章节内容&#xff09; 第一章 层叠、优先级与继承&#xff08;已完结&#xff09; 1.1 层叠1.2 继承1.3 特殊值1.4 简写属性1.5 CSS 渐进式增强技术1.6 本章小结 第二章 相对单位&#xff08;已完结&#xff09; 2.1 相对…

后台数据管理系统 - 项目架构设计-Vue3+axios+Element-plus(0916)

接口文档: https://apifox.com/apidoc/shared-26c67aee-0233-4d23-aab7-08448fdf95ff/api-93850835 接口根路径&#xff1a; http://big-event-vue-api-t.itheima.net 本项目的技术栈 本项目技术栈基于 ES6、vue3、pinia、vue-router 、vite 、axios 和 element-plus http:/…

【编程基础知识】哪些行为算跨域,跨域会引发什么问题,怎么解决

哪些行为算跨域&#xff08;CORS, Cross-Origin Resource Sharing&#xff09; 跨域是指浏览器在处理网页时&#xff0c;由于同源策略&#xff08;Same-Origin Policy&#xff09;的限制&#xff0c;限制了来自与当前请求网页不同源的资源请求。这里的“源”&#xff08;Origi…