美文网首页
web前端攻击技术与防范

web前端攻击技术与防范

作者: 时间的溺水者 | 来源:发表于2020-05-11 22:35 被阅读0次

    XSS攻击(cross-site script)跨站脚本攻击

    1、XSS攻击形式

    主要是通过html标签注入,篡改网页,插入恶意的脚本,前端可能没有经过严格的校验直接就进到数据库,数据库又通过前端程序又回显到浏览器

    2、攻击的目的:

    攻击者可通过这种方式拿到用户的一些信息,例如cookie 获取敏感信息,甚至自己建网站,做一些非法的操作等;或者,拿到数据后以用户的身份进行勒索,发一下不好的信息等。

    3、攻击防御

    首先前端要对用户输入的信息进行过滤,可以用正则,通过替换标签的方式进行转码或解码
    例如<> 空格 & '' ""等替换成html编码

    htmlEncodeByRegExp:function (str){  
           var s = "";
           if(str.length == 0) return "";
           s = str.replace(/&/g,"&amp;");
           s = s.replace(/</g,"&lt;");
           s = s.replace(/>/g,"&gt;");
           s = s.replace(/ /g,"&nbsp;");
          s = s.replace(/\'/g,"&#39;");
          s = s.replace(/\"/g,"&quot;");
          return s;  
     },
    

    2)保护cookie,对重要的cookie设置httpOnly,防止客服端通过document.cookie获取cookie。

    CSRF攻击(cross site request forgery,跨站请求伪造)

    CSRF也是一种网络攻击方式,比起xss攻击,是另外一种更具危险性的攻击方式,xss是站点用户进行攻击,而csrf是通过伪装成站点用户进行攻击,而且防范的资源也少,难以防范
    csrf攻击形式:攻击者盗用用户的身份信息,并以用户的名义进行发送恶意的请求等,例如发邮件,盗取账号等非法手段

    例如:你登录网站,并在本地种下了cookie
    如果在没退出该网站的时候 不小心访问了恶意网站,而且这个网站需要你发一些请求等
    此时,你是携带cookie进行访问的,那么你的种在cookie里的信息就会被恶意网站捕捉到,那么你的信息就被盗用,导致一些不法分子做一些事情

    cookie是不能跨域访问的,为什么会有csrf攻击?

    就是如果用户在a网站登录且生成了授权的cookies,然后访问b网站,b站故意构造请求a站的请求,如删除操作之类的,用script,img或者iframe之类的加载a站这个地址,浏览器会附带上a站此登录用户的授权cookie信息,这样就构成crsf,会删除掉当前用户的数据。

    攻击防御:

    a、验证HTTP Referer字段

    在HTTP头中有Referer字段,他记录该HTTP请求的来源地址,如果跳转的网站与来源地址相符,那就是合法的,如果不符则可能是csrf攻击,拒绝该请求

    b、在请求地址中添加token并验证

    这种的话在请求的时候加一个token,值可以是随机产生的一段数字,
    token是存入数据库之后,后台返给客户端的,如果客户端再次登录的时候,
    后台发现token没有,或者通过查询数据库不正确,那么就拒绝该请求

    c、在HTTP头中自定义属性并验证

    解决了上种方法在请求中加入 token 的不便,同时,通过 XMLHttpRequest 请求的地址不会被记录到浏览器的地址栏,也不用担心 token 会透过 Referer 泄露到其他网站中去

    SQL注入

    SQL注入是一种利用未过滤/未审核用户输入的攻击方法(“缓存溢出”和这个不同),意思就是让应用运行本不应该运行的SQL代码。通过把SQL命令插入到Web表单递交或输入域名或页面请求的查询字符串,就会造成一些出人意料的结果,最终达到欺骗服务器执行恶意的SQL命令。

    SQL注入是比较常见的网络攻击方式之一,它不是利用操作系统的BUG来实现攻击,而是针对程序员编程时的疏忽,通过SQL语句,实现无帐号登录,甚至篡改数据库。

    相关文章

      网友评论

          本文标题:web前端攻击技术与防范

          本文链接:https://www.haomeiwen.com/subject/zdlwnhtx.html