csrf跨站点请求伪造

什么是csrf(跨站请求伪造)

  伪造请求的定义有很多种,我将不是用户本意发出的请求统称为伪造请求(在用户不知情的情况下执行某些操作)xss的通过用户对浏览器的信任造成的,csrf是通过服务器对浏览器的信任造成的

csrf的原理及过程:

  假设有a用户和b网站c网站  c网站为恶意网站

    a用户正常登录b网站,登录成功,b网站返回一个cookie给a用户

    b用户访问c网站,c网站在a用户不知情的情况下要求a的浏览器访问b网站的特点功能,浏览器正常执行

    b网站接到a浏览器的请求,正常执行a用户浏览器的请求

csrf形成的前提:

  与攻击方处于同一浏览器,用户处于登录状态并且用户访问了攻击方的链接

csrf攻击过程:

  当用户执行修改密码操作时候,向网页提交了一个正常的请求
  

 

   根据这个请求配置一个方式配置一个专门的网页,当访问这个网页的时候,这个网页会发出一个iframe框架请求请求了修改密码请求,将密码修改为123,display是设置框架的隐藏

  

 

受害者访问过程:
   我们更换用户登录

   

 

  登录成功:访问网址

    

   退出登录

    

 

   密码已经被修改成123

 

 

csrf的防御:

  1.服务器端验证请求浏览器的Referer参数(该参数表示的是从哪个网页发出的请求)

   

  2.增加随机token 验证

    

  3.Cookie中的http-only属性验证   

posted @   追得上的梦想  阅读(545)  评论(0编辑  收藏  举报
编辑推荐:
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
阅读排行:
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 提示词工程——AI应用必不可少的技术
· .NET周刊【3月第1期 2025-03-02】
点击右上角即可分享
微信分享提示