CSRF漏洞场景复现

news2024/11/27 11:32:12

文章目录

  • CSRF漏洞是什么?
  • 场景复现
    • get方式攻击
    • post方式攻击
  • 原理分析

CSRF漏洞是什么?

跨站请求伪造(Cross Site Request Forgery,CSRF)是一种攻击,它强制浏览器客户端用户在当前对其进行身份验证后的Web 应用程序上执行非本意操作的攻击,攻击的重点在于更改状态的请求,而不是盗取数据,因为攻击者无法查看伪造请求的响应。
借助于社工的一些帮助,例如,通过电子邮件或聊天发送链接,攻击者可以诱骗用户执行攻击者选择的操作。如果受害者是普通用户,则成功的CSRF 攻击可以强制用户执行更改状态的请求,例如转移资金、修改密码等操作。如果受害者是管理账户,CSRF 攻击会危及整个Web 应用程序。

CSRF是跨站请求伪造攻击,它不像XSS和SQL注入会盗取用户的信息,它的目的是强制用户的浏览器客户端执行攻击者想要用户做的操作,也就是更改用户状态的请求,如:转移资金和修改密码等操作。

场景复现

将模拟场景的网站文件放到phpstudy的www目录下,分别打开三个浏览器模拟三个不同用户的客户端(其中一个是黑客),并在phpstudy中打开命令行,新建一个数据库bank,加载C:\phpStudy\WWW\bank下的bank.sql文件,在member表中将hacker用户的余额修改为0,让用户在访问恶意网站的情况下被CSRF攻击,给黑客转账。

如图:

在这里插入图片描述

打开火狐、IE、bp的浏览器分别登录三个账户:

admin用户:

在这里插入图片描述

hello用户:

在这里插入图片描述

hacker用户:

在这里插入图片描述

然后修改攻击用户的网页的配置文件,改为本机的地址

get方式攻击的配置文件:

在这里插入图片描述

post方式攻击的配置文件:

在这里插入图片描述

get方式攻击

如果用户admin在不退出登录的情况下访问了该网页,就会被CSRF攻击

访问网页:

在这里插入图片描述

攻击成功,余额减少,并多出转账记录:

在这里插入图片描述

黑客收到转账:

在这里插入图片描述

post方式攻击

hello用户访问恶意网站,同理也受到攻击,点击链接2:

在这里插入图片描述

返回页面,攻击成功:

在这里插入图片描述

原理分析

在这里插入图片描述

攻击者的网站诱骗用户访问用户原本的网站,并带有自己的身份凭证(cookie),执行攻击者的要求的操作,跨网站攻击,这就是CSRF跨站请求伪造。

注意,CSRF可以用post请求的方式攻击,所以如果用户用仅接收post请求的方法防御,是行不通的,post请求的攻击是比get明显的,因为会有页面的回显。

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

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

相关文章

手把手教你用R优雅地绘制研究区地图

用R语言绘制研究区图和地图 引言 在地理信息系统和数据可视化领域,绘制研究区图和地图是非常重要的任务。R语言是一种功能强大的统计分析和可视化工具,也可以用于绘制各种类型的地图。本文将介绍如何使用R语言绘制研究区图和地图。 准备工作 在使用R语…

skywalking agent监控java服务

一、前言 skywalking agent可以监控的服务类型有多种,python、go、java、nodejs服务等都可以监控,现在通过java服务来演示skywalking agent的使用,并且是使用容器的方式实现 二、部署skywalking agent监控 需要注意,skywalking…

高忆管理:什么叫满仓?

满仓是股市术语之一,指出资者将所有资金用于股票出资,即持有的股票数量到达最大值。满仓出资是一种高风险高回报的出资战略,存在着带来高收益的或许性,但也或许面对巨大的亏本风险。 从理财视点来看,满仓出资是不明智…

Leetcode适合新手吗?0基础怎么较短时间得到算法数据结构提升?揭秘大牛都在用的刷题工具!...

别再用leetcode无脑刷题了! 刷题不应该量化为“刷多少道题”,对于刷题来说,永远不是追求数量的堆叠。 你想,LeetCode 上的题难度不等,有简单、中等、困难。 刷100道简单题倒是快,一个星期保证完事&#xff…

具有优异导电性能且抑制了准饱和效应的1200V 4H-SiC沟槽MOSFET

标题:1200V 4H-SiC trench MOSFET with superior figure of merit and suppressed quasi-saturation effect 摘要 本文提出一种具有部分被埋层n区包围的p屏蔽区的优异性能(FoM)1200V 4H-SiC沟槽MOSFET。在准饱和(QS)状态下,埋层n区抑制由p屏蔽区形成的耗…

SharedPreference

Android中的SharedPreference是轻量级的数据存储方式,能够保存简单的数据类型。比如String、int、boolean值等。其内部是以XML结构保存在/data/data/包名/shared_prefs文件夹下,数据以键值对的形式保存。是线程安全的,但不是进程安全的。 1.…

electron globalShortcut 快捷键,在焦点移到其他软件上时,调用快捷键报错

用 electron 开发软件,在设置了 globalShortcut 快捷键后,在当前开发的软件上调用快捷键正常,但是当焦点不在当前软件时,在使用快捷键,好些时候会报错。大概率与系统快捷键产生冲突或者快键键控制的回调里获取的内容&a…

全新UI站长在线工具箱系统源码带后台开源版

该系统的全开源版本可供下载,并且支持暗黑模式。 系统内置高达72种站长工具、开发工具、娱乐工具等功能。此系统支持本地调用API,同时还自带免费API接口, 是一个多功能性工具程序,支持后台管理、上传插件、添加增减删功能。 环…

行业追踪,2023-08-28

自动复盘 2023-08-28 凡所有相,皆是虚妄。若见诸相非相,即见如来。 k 线图是最好的老师,每天持续发布板块的rps排名,追踪板块,板块来开仓,板块去清仓,丢弃自以为是的想法,板块去留让…

LNMT与动静分离

目录 前言 一、简要思路 二、NGINX的配置参考 1、location 2、rewirte 三、动静分离配置(单机配置) 1、Tomcat配置 2、配置NGINX 3、安装mariadb 4、测试 Tomcat8080​编辑 Tomcat8081 访问不存在的页面 前言 LNMT(Linux Nginx MySQL Tom…

什么是网络取证(Network Forensics)

企业采用新技术来检查其网络安全是否存在零日漏洞,与立即指示问题的物理层不同,黑客攻击尝试可能会被忽视并变得严重,直到对网络流量有一个整体的可见性。通过实时监控来跟踪其源和目标的流量,以查明问题或潜在问题的根源。 什么…

CY3-DBCO活性荧光染料-星戈瑞

​欢迎来到星戈瑞荧光stargraydye!小编带您盘点: CY3-DBCO是一种活性荧光染料,它是由Cyanine3(CY3)荧光染料与DBCO(dibenzocyclooctyne)官能团共轭而成的化合物。 活性荧光染料通常是指具有特定…

Android RecyclerView 之 列表宫格布局的切换

前言 RecyclerView 的使用我就不再多说,接下来的几篇文章主要说一下 RecyclerView 的实用小功能,包括 列表宫格的切换,吸顶效果,多布局效果等,今天这篇文章就来实现一下列表宫格的切换,效果如下 一、数据来…

k8s的交付与部署

一 k8s的概念 1.1 k8s k8s是一个轻量级的,用于管理容器化应用和服务的平台。通过k8s能够进行应用的自动化部署和扩容缩容。 1.2 k8s核心部分 1.prod: 最小的部署单元;一组容器的集合;共享网络;生命周期是短暂的; …

ChatGPT在医疗领域可应用于改善与患者的沟通

注意:本信息仅供参考,发布该内容旨在传递更多信息的目的,并不意味着赞同其观点或证实其说法。 自从ChatGPT在2022年末对公众开放以来,OpenAI的这款生成式AI聊天机器人在医疗领域展示出了巨大潜力。它已经通过了美国医学执照考试&a…

3. 运行时数据区及程序计数器

3.1. 运行时数据区 3.1.1. 概述 本节主要讲的是运行时数据区,也就是下图这部分,它是在类加载完成后的阶段 当我们通过前面的:类的加载-> 验证 -> 准备 -> 解析 -> 初始化 这几个阶段完成后,就会用到执行引擎对我们…

Centos7更新glibc2.18

Centos7更新glibc2.18 查看glibc版本下载解压glibc2.18编译安装结果验证 查看glibc版本 # 查看glibc版本 ldd --version下载解压glibc2.18 参考: https://blog.csdn.net/qq_39295044/article/details/86685789 https://blog.csdn.net/myhes/article/details/106923039 # 下载…

安装配置mariadb

记录下安装配置mariadb的经历。 环境:ubuntu22 一、apt在线安装 apt代理配置 APT是Ubuntu系统中用于安装和升级软件包的工具,如果本地没有可用的软件包,APT将会连接到远程软件包服务器下载软件包。在某些情况下,用户需要将APT的…

UE5- socket客户端写法

# 实现目标 ue5 c 实现socket客户端,读取服务端数据,并进行解析 #实现步骤 {projectName}.Build.cs里增加 "WebSockets","JsonUtilities", "Json"配置信息,最终输出如下: using UnrealBuildTool;…

msvcr110.dll怎么安装?多种方法教你快速修复msvcr110.dll文件

最近很多小伙伴在咨询,msvcr110.dll怎么安装这个问题,其实要安装这个还是比较简单的,而且方法有很多种,每一种方法都有各种的优势,我们只要选择适合我们的一种方法就可以了。好了,下面我们一起来了解一下快…