XSS之编码

XSS之编码一 html 编码背景 html 编码是用于输出 html 原本的标签的想在页面上输出 div 标签 但是如果我在 html 标签里直接写的话 就会被当成 div 标签执行 并不会输出在页面上 这个时候我想将他输出在页面上就需要用 html 编码 XSS 中的应用 这

大家好,欢迎来到IT知识分享网。

XSS之编码

想在页面上输出div标签,但是如果我在html标签里直接写的话,就会被当成div标签执行,并不会输出在页面上,这个时候我想将他输出在页面上就需要用html编码

XSS中的应用:这种编码的形式可以用来去绕过一些过滤,比如,有些会过滤掉script ,alert,< >这样的危险的符号,这个时候,就可以用Html编码来绕开过滤

XSS之编码

比如这里的输出点在scr里,可以闭合双引号,然后写一个onerror事件,将alert(1)进行html十进制编码,这样就避开了输入的过滤,当数据到达输出点时,页面会先解码,这个时候onerror后面就变成了字符串alert(1),但是当图片资源加载失败,触发onerror这个事件时,这个时候这个字符串alert(1),就会当作js代码执行,就会弹窗。我这里用的html的十进制编码,用十六进制也是一样的效果

XSS之编码

Html在线编码工具:https://www.xiuzi.cn/bianma/zifushiti.php

二:js编码

XSS应用:一般js的编码用在通过innerHTML输出在html里面,比如var search = “可控点”;

document.getElementById().innerHTML=search;

XSS之编码

XSS之编码

在script标签中,先将js编码解码,变成字符串<img src=“x” οnerrοr=alert(1)>,,然后就会以字符串的形式输出在html的div标签里,然后当作html代码执行,也就执行了这个语句,成功弹窗

Js解码是用的xss encode插件

三:url编码

背景:http协议中传输参数是key=value这种键值对的形式存在的,如果需要传多个参数,就需要用&进行分割,如name1=value1&name=value2&name3=value3这种形式,如果这个时候,我们的值里包含了&或者=这样的符号,比如name1=value1,其中,value1的值是aaa&b=cc,那么输出的时候就会变成这样:name1=aaa&b=cc,这本来是一个键值对,但是服务器会解析成两个,会造成歧义,为了避免这种情况,对参数进行了url编码。&:%26,=:%3D,编码后就变成了name1=aaa%26b%3Dcc,这样服务器解析时,就还是一个键值对,然后进行Url解码,就会获取到正确的值了。

XSS中的应用:比如说当你的输出点在a标签的href属性中时,对:进行了过滤,这个你输javascript:alert(1)时,:就会被过滤,导致不能执行,这个时候就可以先用html编码成:,再

用url编码将&编码成%26,再输出点浏览器会将html编码解码回:,然后输出在href里,就可以成功弹窗

url编码和解码可以在js控制台使用js语句来进行编码解码:encodeURI(),encodeURIcomponed()

XSS之编码

也可以用在线编码工具:http://tool.chinaz.com/tools/urlencode.aspx

四:base64编码

Base64一般用在a标签和iframe标签中,

<a href=”输出点”>

</a> <iframe src=”输出点” frameborder=”0″></iframe>,

如果过滤了javascript<>”’时,就可以考虑base64编码,用data协议

<a href=”data:text/html;base64, PGltZyBzcmM9eCBvbmVycm9yPWFsZXJ0KDEpPg==”>test</a>

解码后为:<img src=x οnerrοr=alert(1)>

当点击链接时,页面就会以html的方式解析,用base64的方法解码,然后成功结果弹窗。

Base64在线编码工具:https://base64.us/

注:文章转自互联网

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://yundeesoft.com/167275.html

(0)
上一篇 2025-01-12 10:05
下一篇 2025-01-12 10:10

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注微信