CSRF漏洞简介

csrf简介

CSRF 全称为跨站请求伪造( Cross-site request forgery ),是一种网络攻击方式,在 CSRF 的攻击场景中攻击者会伪造一个请求(这个请求一般是一个链接),然后欺骗目标用户进行点击,用户一旦点击了这个请求,整个攻击就完成了。也被称为 one-click attack 。

原理 

首先,我们来说一下cookie是什么?

所谓“cookie”数据是指某些网站为了辨别用户身份,储存在用户本地终端上的数据(通常经过加密),由用户客户端计算机暂时或永久保存的信息。 通俗来讲就是指缓存数据,包括用户名、密码、注册账户、手机号等公民个人信息。

漏洞危害

常见 CSRF 漏洞危害如下 :
  • 篡改目标网站上的用户数据信息,如用户名手机号等
  • 盗取用户隐私数据。
  • 配合XSS漏洞造成更大危害。
  • 传播CSRF蠕虫。
  • 总结:简而言之,是利用目标用户的合法身份,以用户的名义执行非法操作。

 get型csrf

       在 web 应用中,很多接口都是通过 GET 进行数据的请求和存储,如果未对来源进行校验,并且没有 token保护,许多用户在登录一个网站以后,就会产生一个cookie ,去访问别的网站时,一般会利用cookie验证,而不验证来源,攻击者可以直接通过发送含有payload 的链接诱导点击来进行攻击。

post型csrf     

         post 型与 get 型的差别就是 get 型参数是在 url 中直接显示, post 型需要抓包才能看到参数
所以 post csrf 不能直接伪造恶意链接。而需要伪造一个页面,提交表单。
        可以自己编写代码,也可以通过 burp 抓包工具构造 poc。

csrf(token)

  • csrf的主要问题是敏感操作容易被伪造,我们可以加入token让每次的请求不容易被伪造。
  • 每次请求,都增加一个随机码(需要够随机,不容易被伪造),后台每次对这个随机码进行验证,抓包进行查看

图中的框为token

跟前面比较,这里多了一个 Token ,如果后台对提交的 Token 进行了验证,由于 Token 是随机的,我们就无法伪造URL 了。

防御手段

  • 验证HTTP Referer字段
  • 限制Cookie生命周期
  • 使用一次性token
  • 使用验证码或者密码确认方式进行

绕过方法 

  1. Referer 绕过
    referer 绕过: 其他协议( data )或 https http
    包含 referer 若只检查是否包含网址,只需在我们的网站上创建一个文件 / 文件夹即可
  2. CSRF-token 绕过
    删除令牌 :删除 cookie/ 参数中 token ,免服务器验证
    令牌共享: 创建两个帐户,替换 token 看是否可以互相共用;
    篡改令牌值 :有时系统只会检查 CSRF 令牌的长度;
    解码 CSRF 令牌: 尝试进行 MD5 Base64 编码
    修改请求方法 post 改为 get
    窃取 token :重定向、 XSS web 缓存欺骗、 clickjacking 等都可能导致 token 泄露

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/679725.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

三维建模技术在AI去衣中的奇妙应用

引言: 随着计算机视觉和深度学习技术的迅猛发展,人工智能(AI)在图像处理和理解方面取得了显著进展。其中,一个颇具争议却技术上引人入胜的应用便是AI去衣——即使用AI技术从图片或视频中移除人物的衣物。尽管这技术常因…

【微服务】分布式事务(通过Seata解决分布式事务问题)

分布式事务 分布式事务Seata微服务集成SeataXA模式XA模式使用 AT模式AT模式实现 分布式事务 在分布式系统中,如果一个业务需要多个服务合作完成,而且每一个服务都有事务,多个事务必须同时成功或失败,这样的事务就是分布式事务&am…

软考系列必过资料分享-系统架构师-系统分析师-信息系统项目管理师

建议,写在前面 知识点是公用的,原则上不分新旧。每年会有少部分的题目切合当前时间段(也是通过旧的知识演变的) 信息系统项目管理师证书 系统架构师证书 系统分析师证书 资料分享 关注公众号 回复 信息系统项目管理师资料 即可获取信息系统项目管理师资…

【论文速读】|针对模糊驱动生成的提示性模糊测试

本次分享论文:Prompt Fuzzing for Fuzz Driver Generation 基本信息 原文作者:Yunlong Lyu, Yuxuan Xie, Peng Chen, Hao Chen 作者单位:腾讯安全大数据实验室、加州大学戴维斯分校 关键词:软件测试, Fuzzing, 自动化Fuzz驱动…

提高谷歌抓取成功率:代理IP的7个使用误区

在当今数字化时代,数据采集和网络爬取已成为许多企业和个人必不可少的业务活动。对于爬取搜索引擎数据,特别是Google,使用代理IP是常见的手段。然而,使用代理抓取Google并不是一件轻松的事情,有许多常见的误区可能会导…

OpenGL 入门(三)—— OpenGL 与 OpenCV 共同打造大眼滤镜

从本篇开始,会在上一篇搭建的滤镜框架的基础上,介绍具体的滤镜效果该如何制作。本篇会先介绍大眼滤镜,先来看一下效果,原图如下: 使用手机后置摄像头对眼部放大后的效果: 制作大眼滤镜所需的主要知识点&…

有哪些渠道找到海外代理IP服务?

在今天的全球化时代,许多企业和个人都需要跨越国界,与世界各地的资源、信息和市场进行连接。海外代理IP服务成跨境在线业务增效的重要的工具,可以帮助拓展业务宽度,以实现更多样化的业务需求。但是,如何找到合适、安全…

Java | Leetcode Java题解之第70题爬楼梯

题目: 题解: public class Solution {public int climbStairs(int n) {double sqrt5 Math.sqrt(5);double fibn Math.pow((1 sqrt5) / 2, n 1) - Math.pow((1 - sqrt5) / 2, n 1);return (int) Math.round(fibn / sqrt5);} }

多核DSP并行计算跨平台通信解决方案

并行计算的核心是计算节点以及节点间的通信与协调机制。OpenMP虽然给开发者提供了极易上手的增量式开发方式,但是OpenMP在与复杂架构的MCSDK结合后,工具与代码产生了大量不可调试的黑盒子,更是决定了它不能用于关键任务领域,如军工…

优化NGINX性能:使用NGINX_THREADS提高并发处理能力

目录标题 1. 什么是NGINX_THREADS?2. 配置NGINX_THREADS3. 使用NGINX_THREADS处理耗时操作4. 性能调优5. 结论 NGINX作为一个高性能的HTTP和反向代理服务器,在处理高并发请求时表现出色。但随着互联网应用对性能要求的不断提高,深入了解和优化…

C语言(递归)

Hi~!这里是奋斗的小羊,很荣幸各位能阅读我的文章,诚请评论指点,关注收藏,欢迎欢迎~~ 💥个人主页:小羊在奋斗 💥所属专栏:C语言 本系列文章为个人学习笔记&#x…

IDEA访问不到静态资源

背景 我在resources下创建static文件夹,再创建front文件夹放前端资源,里面有index.html,游览器输入localhost:8011/front没反应。(resources/static/front/index.html) 解决办法 重启idea,清楚idea缓存&am…