cookies为什么会有csrf风险,为什么token可以避免

CSRF 利用的是网站对用户网页浏览器的信任。

伪造请求(一般是一个非法链接): 链接伪造了目的性请求参数,因为地址需要同源,所以不会改。

Cookie 是通过浏览器将服务器返回的数据保存在本地的一小块数据(一般小于4kb)。当浏览器发送请求且浏览器存在 Cookie 且同源不跨域时,浏览器会自动在请求头携带上 Cookie 数据。所以浏览器对csrf背锅,即csrf利用的是网站对用户网页浏览器的信任。
如果使用token,因为token可以不放在cookie里面,在发送请求时经过前端程序处理才可以把token放到请求参数中,所以在请求伪造的非法链接时,浏览器会自动让请求携带cookie,但是没经过前端的操作,请求不会携带token,服务器没有验证token,就会拦截不服务。
还可以在请求时 使用 token+核心参数+时间戳+盐 使用sha md5之类的单项加密算法做个签名,验证请求核心参数是否被伪造。

个人理解,欢迎交流。

相关推荐

  1. cookies为什么csrf风险为什么token可以避免

    2024-03-17 13:40:02       43 阅读
  2. 为什么虚像

    2024-03-17 13:40:02       33 阅读
  3. Chrome为什么不用COOKIE

    2024-03-17 13:40:02       24 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-03-17 13:40:02       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-03-17 13:40:02       100 阅读
  3. 在Django里面运行非项目文件

    2024-03-17 13:40:02       82 阅读
  4. Python语言-面向对象

    2024-03-17 13:40:02       91 阅读

热门阅读

  1. 基础练习题之函数

    2024-03-17 13:40:02       44 阅读
  2. ClickHouse副本节点数据损坏恢复

    2024-03-17 13:40:02       41 阅读
  3. Clickhouse MergeTree原理(二)—— 表和分区的维护

    2024-03-17 13:40:02       35 阅读
  4. Centos设置docker自启动,以及容器程序自启动

    2024-03-17 13:40:02       41 阅读
  5. Python:递归函数

    2024-03-17 13:40:02       47 阅读
  6. html导航栏+下拉菜单+表单验证

    2024-03-17 13:40:02       39 阅读
  7. HTML

    HTML

    2024-03-17 13:40:02      36 阅读
  8. 在CentOS 7系统下通过二进制方式安装MySQL 8.0.34

    2024-03-17 13:40:02       37 阅读
  9. Jtti:如何在CentOS中安装和配置Tomcat应用服务器

    2024-03-17 13:40:02       36 阅读