Web安全系列——CSRF攻击

news2025/2/24 15:22:56

文章首发公众号: 海天二路搬砖工

前言

CSRF 攻击是Web应用中最常见的攻击方式之一。

CSRF攻击给网站身份验证、用户账户和个人隐私带来极大威胁。了解 CSRF 攻击的流程、原理与防御措施,是构建安全可靠的Web应用程序的必要条件。

什么是CSRF攻击

CSRF,全称是Cross-Site Request Forgery,中文名为跨站请求伪造。

CSRF攻击是指指恶意攻击者利用用户已经登录了另一个网站的“身份”来伪造用户的请求(例如提交一个表单)。

CSRF攻击的流程与原理

CSRF攻击的流程与原理如下图所示

CSRF攻击流程

  • 首先,受害人访问正常站点aa.com,并生成了登录态(以cookie等方式存储在浏览器中)
  • 接着,受害人访问攻击者刻意构造的看似无害的站点bb.com,bb.com中的恶意页面在加载时会像aa.com发起恶意请求
  • 由于处在同一浏览器中,攻击者可以直接使用aa.com的cookie(登录态)

CSRF 攻击的危害:

CSRF 攻击通常会对 Web 应用程序和用户造成严重威胁和不良影响:

  • **窃取敏感信息:**攻击者可能利用 CSRF 攻击来窃取用户的敏感个人信息,例如身份证号码、收入、税务纪录等。
  • **窃取个人或机构账户:**通过 CSRF 攻击,攻击者可能会利用已经验证过的认证信息,从用户的账户中取走资金、转移资金或在用户知情的情况下进行消费等行为。
  • **篡改记录:**CSRF 攻击也可能会利用用户的身份执行各种不良行为,例如更改记录、删除条目或篡改信息等。从而导致数据损失和信息可用性受损,特别是对某些爱好者、研究员或初创公司来说,其数据是极其重要的。
  • **拒绝服务攻击:**攻击者通过 CSRF 攻击向目标服务器发送大量的恶意请求,使服务器处理过载,从而使其变得不可用,拒绝服务。
  • **破坏用户信任:**当 CSRF 攻击成功时,很可能会导致用户对受攻击之后的 Web 应用程序产生不信任感。这可能会迫使他们停止使用被攻击的网站,这可能会给企业造成巨大的经济损失和声誉影响。

如何防御 CSRF 攻击:

  • **使用POST请求:**使用GET HTTP 方法会更容易受到攻击,因此可以使用 POST 或其他安全的 HTTP 方法。
  • **用户身份验证:**将用户身份验证放在敏感操作之前,这可以增加攻击者窃取用户身份验证 token 的难度。
  • **检查来源站点:**检查 Web 请求是来自已知的和可信的站点。开发者可以检查请求的来源(Referrer)以及请求的主机(Origin 或者 Host),以确保请求是合法的。
  • **使用 CSRF Token:**为表单和其他交互设定随机令牌,称为 CSRF 中的 Token,在请求提交时一并提交 Token,如此服务器可根据Token验证请求的合法性。
  • **防止 third-party cookies:**禁止第三方 cookie 将 cookie 从一个子域传递到另一个子域以防止攻击者获取凭据。
  • **SameSite cookies:**把 cookie 属性设置为SameSite,以防止跨站点 cookie 变成 CSRF 攻击的最佳攻击向量之一。
  • **使用 CSP:**CSP 能够指定页面的某些部分从哪些资源进行加载。这样,即使攻击者成功注入了第三方脚本或 iFrame,浏览器也将拒绝加载并执行脚本。

CSRF 与XSS攻击对比

初学者经常将CSRF攻击和XSS攻击搞混,这里将这两者进行简单对比

CSRFXSS
攻击方式利用受害者身份凭证进行非法操作利用网页编码不健壮所造成的网页漏洞
攻击目标受害者的身份认证利用受害者自身的浏览器漏洞,实现身份窃取、数据篡改等目的
攻击流程先让受害者在已经通过身份验证的网站中打开伪造的页面,然后伪造的页面(例如藏在图片中的链接)会发起网络请求进行攻击在用户的输入中注入恶意脚本,通常是 JavaScript,然后在用户访问包含了这些恶意代码的网站时,这些代码就会在用户的浏览器上执行

总结

CSRF 攻击是互联网世界中的常见安全威胁之一,攻击者通过借用用户身份验证,从而可以执行任意的操作并且不经过用户的认可。为了保护网站与用户的安全,开发人员和用户都应了解 CSRF 攻击并采取一系列预防和防御措施,包括使用合适的随机令牌,设置 SameSite cookies、定期检测、使用防火墙等。

附录

我的公众号

  • 我的二维码

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

IOS手机耗电量测试

1. 耗电量原始测试方法 1.1 方法原理: 根据iPhone手机右上角的电池百分比变化来计算耗电量。 1.2实际操作: 在iOS通用设置中打开电池百分比数值显示,然后操作30分钟,60分钟,90分钟,看开始时和结束时电池…

大模型推理最新论文及源码合集,涵盖多模态推理、逻辑推理、数学推理

大模型推理技术的发展帮我们解决了许多的难题,但如今的大模型在复杂推理上的表现仍然欠佳,为了突破这一瓶颈,研究者们提出了许多创新性的方法。 我整理了其中一部分个人认为很值得学习的论文来和大家分享,涵盖多模态推理、逻辑推…

JavaScript 特殊对象的排序

在项目中有需求,需要对对象进行排序,根据键值对的“键”(key)进行排序 前提是 你的 key 是用数字表示的,这样才能排序 例子一: let obj {"101": 孙悟空,"105": 猪八戒,"102&quo…

关键词搜索苏宁易购商品数据接口(标题|主图|SKU|价格|优惠价|掌柜昵称|店铺链接|店铺所在地)

关键词搜索苏宁易购商品数据接口可以帮助企业快速获取苏宁易购平台上的商品数据。通过该接口,企业可以获取到商品的详细信息,如商品名称、价格、库存量、销量等。这些信息可以用于多种业务场景,如选品决策、采购计划制定、价格监控等。 使用…

2023/11/1 JAVA学习

和上面的镜态变量,实例变量类似 可以这样送一些数据给mian方法(类方法) 将工具类的构造器私有化,这样就无法再创造对象 只能是在子类中访问,如果是一个非子的类中,创建了一个子类对象,这样是访问不了的 子类中的构造器中默认有一个super(),调用父类的无参构造器 若父类无无参构…

高压发生器

直流高压试验装置产品简介 武汉凯迪正大KDZG系列直流高压发生器是按照中国行业标准ZGF24003-90《便携式直流高压发生器通用技术条件》的要求,研究、制造的便携式直流高压发生器,适用于电力部门、厂矿企业动力部门、科研单位、铁路、化工、发电厂等对氧化…

移动设备访问本地localhost

一.正常访问 1.首先确保使用的移动设备和PC端在同一个局域网下(如连接同一个wifi) 2.查看PC端地址 命令行:ipconfig 3.移动设备访问localhost地址,把PC端前缀替换为IPv4地址 如:PC地址为 localhost:9999/xxx/yyy …

【干货速学】电商API接入电子商务数据分析:电子商务数据分析的流程

生活中的数据分析 日常工作和生活中处处都有数据分析的存在,比如消费者在购买不同商品前,经常会对儿“性价比”进行简单分析,价格表现为固定的货币数字。性能则具体体现在商品质量、客户收务等客观因素和客户对该商品的需求程度等主观因素上。…

springboot项目多环境配置

springboot项目多环境配置 企业级软件开发往往存在多种环境,比如:开发、测试、生产等。不同环境的配置文件略有差异,如何能够方便的进行环境切换,尤其是在打包编译的时候,至关重要。本文则节选出关键的核心代码。 po…

为什么前端用vue的公司越来越多?

Vue.js是一款流行的JavaScript框架,被广泛应用于Web开发中。它相比于其他框架具有一些有利的特点,所以受到许多开发人员的青睐。可以用“简单易学、响应式数据绑定、轻量高效、生态系统丰富、渐进式框架”等概括VUE的技术优势。 Vue 3.0是Vue.js于2022年…

疑难杂症-暂时不能解析域名“mirrors.tuna.tsinghua.edu.cn”

可能是太久没用Ubuntu了,总是有一些莫名其妙的问题 我的方法简单粗暴:不需要重启,打开终端,输入sudo apt-get update,解析成功 还有一些别的方法,不过我也没试过 修改/etc/resolv.conf还是修改/etc/resol…

黑客(网络安全)技术——如何高效自学

前言 前几天发布了一篇 网络安全(黑客)自学 没想到收到了许多人的私信想要学习网安黑客技术!却不知道从哪里开始学起!怎么学 今天给大家分享一下,很多人上来就说想学习黑客,但是连方向都没搞清楚就开始学习…

soul协议算法

逆向工程技术是指对软件或应用程序进行逆向分析以了解其内部机制和功能的过程。虽然我无法详细介绍"Soul App"的逆向工程技术,但以下是一些常见的逆向工程技术,可能与你的研究相关: 1. 反汇编(Disassembly)…

网络套接字编程(二)

网络套接字编程(二) 文章目录 网络套接字编程(二)简易TCP网络程序服务端创建套接字服务端绑定IP地址和端口号服务端监听服务端运行服务端网络服务服务端启动客户端创建套接字客户端的绑定和监听问题客户端建立连接并通信客户端启动程序测试单执行流服务器的弊端 多进程版TCP网络…

Spring手动获取bean对象

一&#xff0c;三种获取方式&#xff08;获取单例bean对象&#xff09; 默认情况下Spring项目启动时会把bean都创建好放在IOC容器中&#xff0c;如果想要主动获取这些bean对象 根据name获取bean Object getBean(String name) 根据类型获取bean <T> T getBean(Class<T…

易点天下受邀参与云栖大会,以AIGC重塑出海营销新范式

10月31日&#xff0c;2023云栖大会在杭州云栖小镇拉开帷幕。与往年不同&#xff0c;今年的云栖大会以“计算&#xff0c;为了无法计算的价值”为主题&#xff0c;与国际潮流科技大会组织方式接轨&#xff0c;通过云计算、人工智能、产业创新三大主题馆40000平科技展&#xff0c…

双十一电视机顶盒哪个牌子好?经销商盘点线下热销网络电视机顶盒排名

电视机顶盒的功能非常丰富&#xff0c;日常的使用频率很高&#xff0c;而我作为数码经销商&#xff0c;电视机顶盒是主营产品之一&#xff0c;双十一是每年的购物狂欢&#xff0c;很多新手们咨询我电视机顶盒哪个牌子好想在双十一价格优惠时入手&#xff0c;今天我来盘一盘目前…

视觉霸主SAM和文图霸主CLIP强强联合!苹果联合UIUC,发布统一视觉模型SAM-CLIP,或掀起多模态新浪潮

作者 | ZenMoore 相信大家对 SAM[1] 并不陌生&#xff0c;它是 Meta 此前发布的 Segment Anything Model (分割一切模型)。一经发布便火遍全网震惊世界&#xff0c;史称“视觉领域的 ChatGPT 时刻”。 大模型研究测试传送门 GPT-4传送门&#xff08;免墙&#xff0c;可直接测…

【Cargo Therapeutics】申请1亿美元纳斯达克IPO上市

来源&#xff1a;猛兽财经 作者&#xff1a;猛兽财经 猛兽财经获悉&#xff0c;美国生物制药公司【Cargo Therapeutics】近期已向美国证券交易委员会&#xff08;SEC&#xff09;提交招股书&#xff0c;申请在纳斯达克IPO上市&#xff0c;股票代码为(CRGX),Cargo Therapeutics…

大厂面试题-什么是服务网格?

概述 服务网格这个概念出来很久了&#xff0c;从2017年被提出来&#xff0c;到2018年正式爆发&#xff0c;很多云厂商和互联网企业都在纷纷向服务网格靠拢。像蚂蚁集团、美团、百度、网易等一线互联网公司&#xff0c;都有服务网格的落地应用。 服务网格是微服务架构的更进一…