CSRF靶场练习

news2024/11/18 23:44:59

简述:CSRF漏洞实际很少;条件限制很多;局限性很大;实验仅供参考,熟悉csrf概念和攻击原理即可

Pikachu靶场

CSRF GET

登录用户vince的账户可以看到用户的相关信息;

点击修改个人信息,发现数据包里除了cookie没有任何其他验证信息

通过右键Engagement tools选项找到生成csrf poc

将生成的poc复制放到html文件然后打开;或者直接选择test in browser

注意:这里的payload是通过表单进行提交的;GET请求时也可以直接构造链接进行诱导

如<a href="localhost/vul/csrf/csrfget/csrf_get_edit.php?sex=123&phonenum=123&add=123&email=123&submit=submit">iphone14抽奖立减3000元</a>

打开的页面如下;只有一个确认按钮;剩下的选项被隐藏了;一旦点击就会是用户信息都改为123

CSRF POST

同上;登录allen的账号

同样抓取修改信息的数据构造csrf poc

同样的访问csrf页面,点击按钮

点击后发现用户信息都被修改了

CSRF token

这关加了token验证;普通流程过不去

登录kobe账户;发现时GET方法;但是增加了token验证;每次请求token值都不同;由服务器随机分配的

同样的利用bp生成poc

访问链接

点击恶意链接,发现用户信息并未被修改;这是因为token验证失败的结果;

这说明对于CSRF攻击token验证就可以做到完美防御

绕过思路:可以利用bp插件绕过;下载csrf token trace插件

仅供实验参考;实际不可用;由于浏览器设置了bp作为代理;所以能实现绕过

bp下载对应插件

下载完成后对插件进行设置

此时在点击恶意链接发现用户信息被修改了;这说明该插件在请求发送之前获取了服务器的token值并对请求进行了替换

DVWA 靶场 CSRF

LOW

登录网站;点击修改密码;bp抓包;发现没什么其他验证;GET方法+cookie

通过右键工具生成csrf poc

测试poc

通过浏览器登录验证;发现密码确实被修改为了123

Medium

同样的方法;修改密码;抓包查看数据;发现跟LOW一样

获取csrf poc;

点击链接

跳转之后发现;密码未修改成功;后端进行验证了;推测时referer字段验证(只有这一个不稳定参数)

通过修改referer字段的数据验证了服务器确实检测了该字段;只允许之前访问域名中有该域名信息的链接访问;防止恶意链接跳转访问

解决方法:将文件名改成目标ip地址或者域名

修改后再次访问该链接;发现出现了成功修改的信息;通过登录测试发现密码已经变成了88888888

High

这关使用token验证;不再验证referer字段

使用插件绕过;设置插件配置用于获取和替换目标网站的token

配置完成后直接访问poc链接;发现页面跳转了,但是没有任何提示;通过登录验证发现密码已经修改了

总结

从这几个案例中可以了解csrf的原理和危害已经防御方法

条件:同一浏览器+同时打开至少两个网站+保持登录其中一个存在csrf漏洞的网站并在另一个网站中访问了刚好针对该登录网站的恶意链接

危害:个人数据被修改;资产消失等;现实这种漏洞实现条件苛刻,了解就行

防御方法:token验证,验证码,浏览器同源策略等

10

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

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

相关文章

基于springboot+layui实现的旅游信息管理系统源码+数据库,可以查看旅游路线、飞机火车的班次

travel 介绍 旅游信息管理系统&#xff0c;系统架构&#xff1a;springbootlayui 系统截图 ) 技术选型 技术版本说明Spring Boot2.1.6MVC核心框架Spring Security oauth22.1.5认证和授权框架MyBatis3.5.0ORM框架MyBatisPlus3.1.0基于mybatis&#xff0c;使用lambda表达式的…

TensorFlow2实战-系列教程6:迁移学习实战

&#x1f9e1;&#x1f49b;&#x1f49a;TensorFlow2实战-系列教程 总目录 有任何问题欢迎在下面留言 本篇文章的代码运行界面均在Jupyter Notebook中进行 本篇文章配套的代码资源已经上传 1、迁移学习 用已经训练好模型的权重参数当做自己任务的模型权重初始化一般全连接层需…

读AI3.0笔记08_自然语言

1. 人工智能研究的惯用的套路 1.1. 定义一个在细分领域中比较有用的任务 1.2. 收集一个大型数据集来测试机器在该任务上的性能 1.3. 对人类在该数据集上完成任务的能力进行一个有限的度量 1.4. 建立一场竞赛使得人工智能系统可以在该数据集上互相竞争 1.5. 直到最终达到或…

内存储器之只读存储器(ROM),随机存取存储器(RAM)和Cache详解

内存储器 计算机中的存储器分为内存和外存两大类。 内存的存取速度快而容量相对较小&#xff0c;它与CPU直接相连&#xff0c;用来存放等待CPU运行的程序和处理的数据&#xff1b;外存的速度较慢而容量相对很大&#xff0c;它与CPU并不直接连接&#xff0c;用于永久性地存放计…

网络安全04-sql注入靶场第一关

目录 一、环境准备 1.1我们进入第一关也如图&#xff1a; ​编辑 二、正式开始第一关讲述 2.1很明显它让我们在标签上输入一个ID&#xff0c;那我们就输入在链接后面加?id1 ​编辑 2.2链接后面加个单引号()查看返回的内容&#xff0c;127.0.0.1/sqli/less-1/?id1,id1 …

Unity 迭代器模式(实例详解)

文章目录 简介**实例1&#xff1a;遍历数组****实例2&#xff1a;自定义迭代器类****实例3&#xff1a;异步加载资源****实例4&#xff1a;游戏关卡序列****实例5&#xff1a;无限生成敌人** 简介 在Unity中&#xff0c;虽然不直接使用迭代器模式的原始定义&#xff08;即设计…

PDF标准详解(一)——PDF文档结构

已经很久没有写博客记录自己学到的一些东西了。但是在过去一年的时间中自己确实又学到了一些东西。一直攒着没有系统化成一篇篇的文章&#xff0c;所以今年的博客打算也是以去年学到的一系列内容为主。通过之前Vim系列教程的启发&#xff0c;我发现还是写一些系列文章对自己的帮…

Springmvc-@RequestBody

SpringBoot-2.7.12 请求的body参数无法转换&#xff0c;服务端没有报错信息打印&#xff0c;而是响应的状态码是400 PostMapping("/static/user") public User userInfo(RequestBody(required false) User user){user.setAge(19);return user; }PostMapping("…

05 Redis之Benchmark+简单动态字符串SDS+集合的底层实现

3.8 Benchmark Redis安装完毕后会自动安装一个redis-benchmark测试工具&#xff0c;其是一个压力测试工具&#xff0c;用于测试 Redis 的性能。 src目录下可找到该工具 通过 redis-benchmark –help 命令可以查看到其用法 3.8.1 测试1 3.9 简单动态字符串SDS 无论是 Redis …

【面试】测试开发面试题

帝王之气&#xff0c;定是你和万里江山&#xff0c;我都护得周全 文章目录 前言1. 网络原理get与post的区别TCP/IP各层是如何传输数据的IP头部包含哪些内容TCP头部为什么有浮动网络层协议1. 路由协议2. 路由信息3. OSPF与RIP的区别Cookie与Session&#xff0c;Token的区别http与…

Redis学习——高级篇①

Redis学习——高级篇① Redis7高级之单线程和多线程&#xff08;一&#xff09; 一、Redis单线程VS多线程1.Redis的单线程部分1.1 Redis为什么是单线程&#xff1f;1.2 Redis所谓的“单线程”1.3 Redis演进变化1.3.1 Redis 3.x 单线程时代性能很快的原因1.3.2…

林浩然科学趣谈:妙解麦克斯韦方程的电磁奥秘

林浩然科学趣谈&#xff1a;妙解麦克斯韦方程的电磁奥秘 Lin Haoran’s Scientific Banter: Playful Insights into the Electromagnetic Mysteries of Maxwell’s Equations 在科学的璀璨星河中&#xff0c;林浩然如同一颗热爱探索的行星&#xff0c;以其独特的幽默和严谨的态…

latent-diffusion model环境配置--我转载的

latent-diffusion model环境配置&#xff0c;这可能是你能够找到的最细的博客了_latent diffusion model 训练 autoencoder-CSDN博客 前言 最近在研究diffusion模型&#xff0c;并对目前最火的stable-diffusion模型很感兴趣&#xff0c;又因为stable-diffusion是一种latent-di…

opencv#35 连通域分析

连通域分割原理 像素领域介绍: 4邻域是指中心的像素与它邻近的上下左右一共有4个像素&#xff0c;那么称这4个像素为中心像素的4邻域。 8邻域是以中心像素周围的8个像素分别是上下左右和对角线上的4个像素。 连通域的定义(分割)分为两种:以4邻域为相邻判定条件的连通域分割和…

C++笔记之RTTI、RAII、MVC、MVVM、SOLID在C++中的表现

C++笔记之RTTI、RAII、MVC、MVVM、SOLID在C++中的表现 —— 杭州 2024-01-28 code review! 文章目录 C++笔记之RTTI、RAII、MVC、MVVM、SOLID在C++中的表现1.RTTI、RAII、MVC、MVVM、SOLID简述2.RAII (Resource Acquisition Is Initialization)3.RTTI (Run-Time Type Informat…

steam幻兽帕鲁服务器配置费用报价,4核16G

幻兽帕鲁服务器价格多少钱&#xff1f;4核16G服务器Palworld官方推荐配置&#xff0c;阿里云4核16G服务器32元1个月、96元3个月&#xff0c;腾讯云换手帕服务器服务器4核16G14M带宽66元一个月、277元3个月&#xff0c;8核32G22M配置115元1个月、345元3个月&#xff0c;16核64G3…

某度Pan复活,突破限速,很强大!

软件简介&#xff1a; 软件【下载地址】获取方式见文末。注&#xff1a;推荐使用&#xff0c;更贴合此安装方法&#xff01; 作为国内领先的云存储服务提供商之一&#xff0c;某度Pan为用户提供了一个便捷的文件存储和分享平台。然而&#xff0c;用户普遍反映某度Pan的下载速…

简盒工具箱iapp源码

一款工具箱兼做软件库。 新增远程更新功能 修复了部分失效功能 修复了偶尔会卡在启动页的情况 源码下载&#xff1a;https://download.csdn.net/download/m0_66047725/88776737 更多资源下载&#xff1a;关注我。

漏洞原理MySql注入 Windows中Sqlmap 工具的使用

漏洞原理MySql注入 SQLmap是一款开源的自动化SQL注入工具&#xff0c;用于检测和利用Web应用程序中的SQL注入漏洞。以下是SQLmap工具的使用总结&#xff1a; 安装和配置&#xff1a;首先需要下载并安装SQLmap工具。安装完成后&#xff0c;可以通过命令行界面或图形用户界面来使…

2024幻兽帕鲁服务器,阿里云配置

阿里云幻兽帕鲁服务器Palworld服务器推荐4核16G配置&#xff0c;可以选择通用型g7实例或通用算力型u1实例&#xff0c;ECS通用型g7实例4核16G配置价格是502.32元一个月&#xff0c;算力型u1实例4核16G是432.0元/月&#xff0c;经济型e实例是共享型云服务器&#xff0c;价格是32…