Ma Spaghet!

ops/2024/11/13 9:12:12/
htmledit_views">

目录

一、题目

二、思路

三、payload

3.1 方案一

3.2 方案二(官方)

 四、思考与总结


一、题目

<!-- Challenge -->
<h2 id="spaghet"></h2>
<script>spaghet.innerHTML = (new URL(location).searchParams.get('somebody') || "Somebody") + " Toucha Ma Spaghet!"
</script>

二、思路

innerHTML表示元素所有的后代html,该范围包括文本节点,注释节点,元素节点等内容。在读写该属性时,我们可以获取一个字符串,这个字符串包括元素内部的内容,包含空格,换行,注释。

方法一:

所以我们可以写入一个img标签来充当该元素的后代html,也就是在h2标签中插入了img标签

因为img标签的src地址错误,所以触发了onerror中的alert函数

方法二:

使用svg标签以及onload属性,在浏览器解析加载该标签时,自动触发该事件

三、payload

3.1 方案一

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

3.2 方案二(官方)

<svg onload=alert(1337)>

 四、思考与总结

innerHTML表示元素所有的后代html,该范围包括文本节点,注释节点,元素节点等内容。在读写该属性时,我们可以获取一个字符串,这个字符串包括元素内部的内容,包含空格,换行,注释。

innerText表示元素所有的文本内容,包括文本节点,子元素和后代元素的文本节点,只包括内容,不包括注释空格等

所以,当需要插入纯文本时,建议不使用innerHTMLouterHTML,而是使用innerTexttextContent它不会把给定的内容解析为 HTML,它仅仅是将原始文本插入给定的位置


http://www.ppmy.cn/ops/95831.html

相关文章

class_2:数学运算和注释

1、运算符优先级 2、导入算数库 import matha -1 b -2 c 3 #一元二次方程 delta b ** 2 -4*a*c print((-b math.sqrt(delta))/(2*a)) print((-b - math.sqrt(delta))/(2*a)) 3、注释

将 PDF 转换为 JPG 的 3 种简便方法

PDF&#xff08;Portable Document Format&#xff09;是Adobe公司开发的一种用于呈现文档的常用文件格式。PDF文件可以包含图像和文本。它承载着固定布局平面文档的完整描述&#xff0c;包括文本、字体、图像等信息。但很多时候&#xff0c;你需要将PDF转换为JPG。 您想将PDF…

代码随想录算法训练营第十六天| 513.找树左下角的值 112. 路径总和 106.从中序与后序遍历序列构造二叉树

目录 一、LeetCode 513.找树左下角的值思路&#xff1a;C代码 二、LeetCode 112. 路径总和思路C代码 二、LeetCode 106.从中序与后序遍历序列构造二叉树思路C代码  总结 一、LeetCode 513.找树左下角的值 题目链接&#xff1a;LeetCode 513.找树左下角的值 文章讲解&#xff…

数据库系统 第17节 数据仓库 案例赏析

下面我将通过几个具体的案例来说明数据仓库如何在不同的行业中发挥作用&#xff0c;并解决实际业务问题。 案例 1: 零售业 背景: 一家大型零售商希望改进其库存管理和市场营销策略&#xff0c;以提高销售额和顾客满意度。 解决方案: 数据仓库: 构建一个数据仓库&#xff0…

智能调度 | 多台AGV为什么不会撞在一起?

AGV叉车 随着智能仓储物流系统、柔性制造系统的广泛应用&#xff0c;工厂自动化、计算机集成制造系统技术的逐步发展&#xff0c;常见的智能装备AGV小车的功能愈发齐全&#xff0c;应用范围与技术水平也得到迅猛发展。 AGV作为仓储物流自动化搬运装卸的重要工具&#xff0c;通…

流量分析0.o

[陇剑杯 2021]签到 此时正在进行的可能是__________协议的网络攻击。&#xff08;如有字母请全部使用小写&#xff0c;填写样例&#xff1a;http、dns、ftp&#xff09;。得到的flag请使用NSSCTF{}格式提交。 过滤协议 例子:tcp&#xff0c;udp&#xff0c;arp&#xff0c;i…

微信小程序子组件调用父组件的方法

来源&#xff1a;通义千文2.5 步骤 1: 定义父组件中的方法 首先&#xff0c;在父组件中定义一个方法&#xff08;如 handleClick&#xff09;&#xff0c;并准备一个用于接收子组件传来的数据的方法。 父组件&#xff08;Parent.wxml&#xff09; html<!-- parent.wxml …

XSS盲打与cookie劫持

目录 【学习目标、重难点知识】 【学习目标】 【重难点知识】 XSS盲打&#xff08;加载远程攻击payload&#xff09; XSS偷cookie cookie收集 在线XSS收集平台的使用 1. BeeF框架的使用 BeeF简介 安装和使用 XSS 一些实战应用 1. XSS PDF 2. 公网投毒 3. 网站挂马…