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 的时候)
    
  • 相关阅读:
    Linux 下杀毒可用工具 clamav
    Docker 添加环境系统文件配置
    Docker 空间大小设置
    Docker 扩容 容器空间大小
    bzoj 1088 DP
    bzoj 1096 斜率优化DP
    spoj p104 Matrix-Tree定理
    bzoj 1016 深搜
    WC后记
    bzoj 1301 后缀数组
  • 原文地址:https://www.cnblogs.com/x945669/p/13393405.html
Copyright © 2011-2022 走看看