zoukankan      html  css  js  c++  java
  • xss 防护总结

    防住html 方式插入到页面中的即可,需要根据具体的项目来防护。有一种防护是将所有的外部危险的数据都过滤掉:

    1.

    function xssFilterStr(e) {
    var t = {
    scriptReg: /<s*script(.*?)s*>|<s*/s*scripts*>/gim, // 去除script 标签
    styleReg: /<s*style(.*?)s*>|<s*/s*styles*>/gim, // 去除style标签
    eventReg: /on[A-Za-z]+s*=/gim,    // 去除onClick 等事件
    pseudoProReg: /(?:javascript|javs+ascript|&#d+|&#x)/gim, // 去除 特殊字符 &#x 
    otherReg: /&#x|data:/gim,                         // 去除data: 关键字
    expressionReg: /expressions*(/gim          // 去除express 关键字
    }
    , n = e.match(/(href|src)s*=s*("|')(.*?)("|')/gim); // 去除href 中的链接
    for (var r in t)                                                 
    e = e.replace(t[r], "");
    try {
    for (var i = 0; i < n.length; i++) {
    var o = n[i].split("/");
    o && o[2] && (o[2].startsWith(document.domain) || (e = e.replace(n[i], "")))
    }
    } catch (s) {}
    return e
    }

    2.容易造成xss 的有一种是 将script 截断  ,如一个变量 字符中包含"</script><script>alert("xx")</script>" 会将当前script 结束掉,然后 alert("xx")

    jquery 的防护可以考虑重写 html 等会造成安全隐患的方法

    vue 中的:

  • 相关阅读:
    CSS3 背景
    CSS3 边框
    CSS3中的transform变形
    兼容IE与firefox火狐的回车事件(js与jquery)
    JS相关链接
    JS操作DOM元素属性和方法
    用js给html设置style
    JavaScript数学函数(一)
    [JS] 如何清空file input框 [整理]
    未在本地计算机上注册Microsoft.ACE.OLEDB.12.0提供程序(Oledb)
  • 原文地址:https://www.cnblogs.com/chillaxyw/p/10372363.html
Copyright © 2011-2022 走看看