zoukankan      html  css  js  c++  java
  • CSRF 跨站请求伪造攻击

    CSRF 跨站请求伪造攻击

    CSRF 原理

      下图大概描述了 CSRF 攻击的原理,可以理解为有一个小偷在你配钥匙的地方得到了你家的钥匙,然后拿着要是去你家想偷什么偷什么。img

    CSRF 攻击必须要有三个条件:

    (1)用户已经登录了站点 A,并在本地记录了 cookie
    (2)在用户没有登出站点 A 的情况下(也就是 cookie 生效的情况下),
        访问了恶意攻击者提供的引诱危险站点 B (B 站点要求访问站点A);
    (3)站点 A 没有做任何 CSRF 防御
    

    预防 CSRF

    CSRF 的防御可以从服务端和客户端两方面着手,防御效果是从服务端着手效果比较好,
    现在一般的 CSRF 防御也都在服务端进行。服务端的预防 CSRF 攻击的方式方法有多种,
    但思路上都是差不多的,主要从以下两个方面入手:
    
    (1)正确使用 GET,POST 请求和 cookie
    
    (2)在非 GET 请求中增加 token
    
    一般而言,普通的 Web 应用都是以 GET、POST 请求为主,还有一种请求是 cookie 方式。
    我们一般都是按照如下规则设计应用的请求:
    
    (1)GET 请求常用在查看,列举,展示等不需要改变资源属性的时候(数据库 query 查询的时候)
    
    (2)POST 请求常用在 From 表单提交,改变一个资源的属性或者做其他一些事情的时候
       (数据库有 insert、update、delete 的时候)
    
  • 相关阅读:
    CSP-S全国模拟赛第三场 【nan死了】
    ●SCOI2018 AFO
    ●洛谷P2934 [USACO09JAN]安全出行Safe Travel
    ●洛谷P3233 [HNOI2014]世界树
    ●洛谷P2495 [SDOI2011]消耗战
    ●UOJ58 [WC2013]糖果公园
    ●洛谷P1903 [国家集训队]数颜色
    ●BZOJ 4237 稻草人
    ●Joyoi Normal
    ●CodeForces 698C LRU
  • 原文地址:https://www.cnblogs.com/x945669/p/13393405.html
Copyright © 2011-2022 走看看