首页 黑客接单正文

svg文件xss的简单介绍

hacker 黑客接单 2022-10-25 131 5 svg文件xss

svg是什么文件格式

SVG是一种图像文件格式,它的英文全称为Scalable Vector Graphics,意思为可缩放的矢量图形。它是基于XML(Extensible Markup Language),由World Wide Web Consortium(W3C)联盟进行开发的。

严格来说应该是一种开放标准的矢量图形语言,可让你设计激动人心的、高分辨率的Web图形页面。用户可以直接用代码来描绘图像,可以用任何文字处理工具打开SVG图像,通过改变部分代码来使图像具有交互功能,并可以随时插入到HTML中通过浏览器来观看。

相关信息

SVG图形是可交互的和动态的,可以在SVG文件中嵌入动画元素或通过脚本来定义动画。提供了目前 *** 流行的PNG和JPEG格式无法具备的优势:可以任意放大图形显示,但绝不会以牺牲图像质量为代价;可在SVG图像中保留可编辑和可搜寻的状态。

平均来讲,SVG文件比JPEG和PNG格式的文件要小很多,因而下载也很快。可以相信,SVG的开发将会为Web提供新的图像标准。不是所有的浏览器都支持SVG,这也是SVG普及的更大障碍。

svg的作用及工作原理是什么?

可以任意放大图形显示,但绝不会以牺牲图像质量为代价;可在SVG图像中保留可编辑和可搜寻的状态;平均来讲,SVG文件比JPEG和PNG格式的文件要小很多,因而下载也很快。可以相信,SVG的开发将会为Web提供新的图像标准。

1、 SVG 可被非常多的工具读取和修改(比如记事本)

2、 SVG 与 JPEG 和 GIF 图像比起来,尺寸更小,且可压缩性更强。

3、 SVG 是可伸缩的

4、 SVG 图像可在任何的分辨率下被高质量地打印

5、 SVG 可在图像质量不下降的情况下被放大

6、 SVG 图像中的文本是可选的,同时也是可搜索的(很适合 *** 地图)

7、 SVG 可以与 JavaScript 技术一起运行

8、 SVG 是开放的标准

9、 SVG 文件是纯粹的 XML

工作原理

它是基于XML(Extensible Markup Language),由World Wide Web Consortium(W3C)联盟进行开发的。严格来说应该是一种开放标准的矢量图形语言,可让你设计激动人心的、高分辨率的Web图形页面。

用户可以直接用代码来描绘图像,可以用任何文字处理工具打开SVG图像,通过改变部分代码来使图像具有交互功能,并可以随时插入到HTML中通过浏览器来观看。

SVG图像及其行为在XML文本文件中定义。这意味着可以对其进行搜索,建立索引,编写脚本和进行压缩。

作为XML文件,可以使用任何文本编辑器以及绘图软件来创建和编辑SVG图像。在 *** 语Unicode的 程序员和书法家,托马斯·米洛 *** 归功于采用SVG作为为什么小型成像技术得到普及的原因。

对象类型

SVG允许3种图形对象类型:

矢量图形、栅格图像以及文本。图形对象——包括PNG、JPEG这些栅格图像——能够被编组、设计、转换及集成进先前的渲染对象中。文本可以在任何适用于应用程序的XML名字空间之内,从而提高SVG图形的搜索能力和无障碍性。

SVG提供的功能集涵盖了嵌套转换、裁剪路径、Alpha通道、滤镜效果、模板对象以及可扩展性。

SVG严格遵从XML语法,并用文本格式的描述性语言来描述图像内容,因此是一种和图像分辨率无关的矢量图形格式。

以上内容参考 百度百科-SVG格式

如何避免xss,比如svg">

0x01 常规插入及其绕过

1 Script 标签

绕过进行一次移除操作:

scrscriptiptalert("XSS")/scrscriptipt

Script 标签可以用于定义一个行内的脚本或者从其他地方加载脚本:

scriptalert("XSS")/script

版权声明

本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。