zoukankan      html  css  js  c++  java
  • 容易忽视的前端陷阱

    1 CSRF

    CSRF(Cross Site Request Forgery)是伪造客户端请求的一种攻击,字面上的意思是跨站点伪造请求

    CSRF的定义是强迫受害者的浏览器向一个易受攻击的Web应用程序发送请求,最后达到攻击者所需要的操作行为。CSRF漏洞的攻击一般分为站内和站外两种类型

    现在的Web应用程序几乎都是使用Cookie来识别用户身份以及保存会话状态,但是所有的浏览器在最初加入Cookie功能时并没有考虑安全因素,从WEB页面产生的文件请求都会带上COOKIE,如下图所示,Web页面中的一个正常的图片所产生的请求也会带上COOKIE

    预防CSRF:

    1. 在请求中使用 Security token
    2. 正确使用 GET、POST 和 Cookie
    3. 使用 Referer 判断请求来源

    2 Jquery绑定和解除绑定

    jquery中的如果使用绑定和解除绑定操作,应该是bind和unbind方法同时使用。比如使用onclick绑定的事件,再用unbind解除绑定,是没有效果的。

    3  数据移除元素

    由于JavaScript的数组其实就是对象,所以delete运算符可以用来从数组中移除元素。不幸的是,这样会在数组中留下一个空洞。这是因为排在被删除元素之后的元素保留着它们最初的属性。JavaScript的数组有一个splice方法,可以删除一些元素并将它们替换为其他的元素。

    numbers = ['zero', 'one', 'two', 'shi', 'go'];
    
    delete numbers[2];
    // 现在numbers为['zero', 'one', undefined, 'shi', 'go']
    
    numbers.splice(2, 1);
    // 现在numbers为['zero', 'one', 'shi', 'go']

    参考 

    http://www.gracecode.com/posts/2821.html

    http://www.80sec.com/csrf-securit.html

    http://wenku.baidu.com/view/3a0762f90242a8956bece42e.html

  • 相关阅读:
    Vue入门
    吃透SprinngBoot
    SSM整合详解
    Linux查找端口并关闭
    接入腾讯云的OCR识别身份证信息
    IDEA 快捷键《宋红康版》
    Mysql详解
    docker常见命令
    SpringBoot集成Redis
    使用mybatis出现异常
  • 原文地址:https://www.cnblogs.com/needrunning/p/3008630.html
Copyright © 2011-2022 走看看