Pikachu漏洞练习平台之CSRF(跨站请求伪造)

news2024/9/21 12:34:02

本质:挟制用户在当前已登录的Web应用程序上执行非本意的操作(由客户端发起)

耐心看完皮卡丘靶场的这个例子你就明白什么是CSRF了

CSRF(get) 

使用提示里给的用户和密码进行登录(这里以lili为例)

登录成功后显示用户个人信息,并且提供修改个人信息的链接

点击修改个人信息,这里我们可以修改:性别、手机、住址、邮箱

尝试对用户信息进行修改

点击submit提交后,发现用户信息已经被修改

看到这里你肯定还是没明白CSRF到底是啥,攻击体现在哪儿

我们使用burpsuite来对请求进行抓包

提取url

/vul/csrf/csrfget/csrf_get_edit.php?sex=sex&phonenum=phone&add=address&email=email&submit=submit

拼接好完整的URL(我这里是在自己服务器上搭建的靶场)

http://snert.vip:10005/vul/csrf/csrfget/csrf_get_edit.php?sex=sex&phonenum=phone&add=address&email=email&submit=submit

访问这个url,即可实现对用户信息的修改

注意:实际加载出来的URL里面是看不到这些信息的(姓名、手机、地址等)

我们对payload进行修改

http://snert.vip:10005/vul/csrf/csrfget/csrf_get_edit.php?sex=SSS&phonenum=NNN&add=AAA&email=EEE&submit=submit

访问该url

 

可以看到用户信息被再次修改 

 

回到csrf的本质上:挟制用户在当前已登录的Web应用程序上执行非本意的操作

换句话说,这个修改的操作只能是用户本生自己去进行的(客户端发起的请求),只是说用户他自己并不知情,他不知道自己只是点了一个链接竟然就修改了自己的信息或者密码。

比如我们换一个浏览器(没有进行过登录没有cookie信息缓存),并尝试访问上一个URL

http://snert.vip:10005/vul/csrf/csrfget/csrf_get_edit.php?sex=sex&phonenum=phone&add=address&email=email&submit=submit

回显的是要求我们登录的页面

假如我不知道lili的密码,我只有vince的密码 

使用vince的账号登录后,再次访问上述url看看会怎样

这是vince原始的信息:

访问

http://snert.vip:10005/vul/csrf/csrfget/csrf_get_edit.php?sex=sex&phonenum=phone&add=address&email=email&submit=submit

发现被修改掉的是vince自己的信息

也就是说:登录的用户是谁,产生的效果(payload)就作用于谁

至于怎样构造这样的URL,如果我们在某个平台有自己的账户,我们是不是就可以通过抓包来知道了呢,从而构造出恶意的URL,让其他用户点击,就可以实现对其他用户信息的修改。

当然,上面的这种URL看着太明显了,我们需要对恶意的URL进行一定处理,不被受害者察觉,

最简单的方法就是进行短链接处理(有很多的在线网站),比如对

http://snert.vip:10005/vul/csrf/csrfget/csrf_get_edit.php?sex=SSS&phonenum=NNN&add=AAA&email=EEE&submit=submit

处理之后就变成了

http://mrw.so/6vyWU4
http://i7q.cn/5xoQ1t
http://mtw.so/6vMlGu

这还能看出来是进行密码或者信息修改的操作吗?

当用户随便访问了其中的一个链接,就会对用户信息的进行修改。

有些平台的短链接需要进行跳转,不建议使用这种

https://dlj.li/2vq1G

目前来说,对抗CSRF攻击最简洁而有效的方法就是使用验证码。CSRF攻击是在用户不知情的情况下构造了网络请求,而验证码则是强制要求用户与应用程序进行交互,才能完成最终请求。

关于CSRF的基本介绍就到这里,希望这篇博客能让你了解到什么是CSRF。

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

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

相关文章

(Matalb时序预测)GWO-BP灰狼算法优化BP神经网络的多维时序回归预测

目录 一、程序及算法内容介绍: 基本内容: 亮点与优势: 二、实际运行效果: 三、部分代码展示: 四、完整代码数据说明手册下载: 一、程序及算法内容介绍: 基本内容: 本代码基于M…

SSH-远程连接服务器

一、理论知识 目前远程连接服务器的主要类型: 文字接口明文传输:Telnet、RSH 等为主,目前非常少用。文字接口加密:SSH 为主,已经取代上述的 Telnet、RSH 等明文传输方式。图形接口:XDMCP(X Di…

Neo4j数据库介绍及简单使用

图数据库介绍 图数据库是一种专门设计用于存储和管理图形数据的数据库类型。在图数据库中,数据以图的形式表示,其中节点表示实体,边表示实体之间的关系。这种表示方式非常适合处理具有复杂关系的数据,如社交网络、推荐系统、网络…

安装部署PowerDNS--实现内网DNS解析(use)

使用PowerDNS实现内网DNS解析_powerdns-admin-CSDN博客 https://www.cnblogs.com/guangdelw/p/17348982.html 一、概念介绍 PowerDNS是一个域名解析服务,官网提供了三个组件:Authoritative、Recursor、dnsdist,分别用来作为权威服务器、域名递…

Leetcode——岛屿的最大面积

1. 题目链接:695. 岛屿的最大面积 2. 题目描述: 给你一个大小为 m x n 的二进制矩阵 grid 。 岛屿 是由一些相邻的 1 (代表土地) 构成的组合,这里的「相邻」要求两个 1 必须在 水平或者竖直的四个方向上 相邻。你可以假设 grid 的四个边缘都…

ssh脚本找不到命令或者执行无效的解决办法

如图:今天在编写脚本时发现的这个问题, 在排除脚本语法错误、编码格式等情况下,仍然出现“bash 。。未找到命令”的字样 解决办法: 给每台虚拟机的环境变量source一下: 命令如下 source /etc/profile或者输入 vim ~…

【数据结构】直接选择排序(你知道最不常用的排序算法有哪些吗?)

👦个人主页:Weraphael ✍🏻作者简介:目前正在学习c和算法 ✈️专栏:数据结构 🐋 希望大家多多支持,咱一起进步!😁 如果文章有啥瑕疵 希望大佬指点一二 如果文章对你有帮助…

【2023云栖】黄博远:阿里云人工智能平台PAI年度发布

本文根据2023云栖大会演讲实录整理而成,演讲信息如下: 演讲人:黄博远 | 阿里云计算平台事业部资深产品专家、阿里云人工智能平台PAI产品负责人 演讲主题:阿里云人工智能平台PAI年度发布 AIGC是我们这个时代的新机遇 今年云栖大…

单相过压继电器DVR-G-100-1 0~500V AC/DC220V 导轨安装

系列型号 DVR-G-100-1X3数字式过压继电器; DVR-G-100-3三相过压继电器; DVR(H)-G-100-1单相过压继电器; DVR-Q-100-3三相欠压继电器; DVR(H)-Q-100-3三相欠压继电器 一、用途 主要应用于电机、变压器等主设备以及输配电系统的继…

人工智能与大数据:驱动现代业务转型的双引擎

在当今数字化时代,人工智能(AI)和大数据已成为驱动业务和技术创新的关键力量。它们的结合不仅重塑了传统行业,也催生了新的商业模式和服务方式。 AI与大数据在零售行业的应用 在零售行业,AI和大数据的应用已经成为提…

代码随想录Day45 动态规划13 LeetCode T1143最长公共子序列 T1135 不相交的线 T53最大子数组和

LeetCode T1143 最长公共子序列 题目链接:1143. 最长公共子序列 - 力扣(LeetCode) 题目思路: 动规五部曲分析 1.确定dp数组的含义 这里dp数组的含义是结尾分别为i-1,j-1的text1和text2的最长公共子序列长度 至于为什么是i-1,j-1我之前已经说过了,这里再…

电池故障估计:Realistic fault detection of li-ion battery via dynamical deep learning

昇科能源、清华大学欧阳明高院士团队等的最新研究成果《动态深度学习实现锂离子电池异常检测》,用已经处理的整车充电段数据,分析车辆当前或近期是否存在故障。 思想步骤: 用正常电池的充电片段数据构造训练集,用如下的方式构造…

重生奇迹mu圣导师加点

重生奇迹mu圣导师加点:要攻击高可以加力量,平衡系建议加点力量600~800,智力200~400,敏够装备要求,统帅1000,其余加体力。 圣导师靠加力量培养高攻圣导师不现实,建议玩家练魔,低级圣…

【随手记录】Llama Tutorial 大语言模型实践 手把手系列带实践源码

这个tutorial的契机是yy突然看到了一个workshop 所以类似于一周大作业的形式,输入command输出使用了自动驾驶哪些模块,代码在这里 所以就干一干,顺便写一个tutorial给大家参考和教程 引申更多的应用 参考资料: https://github.c…

【软考篇】中级软件设计师 第三部分(二)

中级软件设计师 第三部分(二) 二十四. 概念设计阶段24.1 E-R模式24.2 E-R图 二十五. 网络和多媒体25.1 计算机网络分类25.2 OSI/RM参考模型25.3 网络互联硬件25.4 TCP/IP分层模型 二十六. IP地址26.1 子网划分26.2 特殊IP26.3 IPv626.4 冲突与和广播域26…

使用html2canvas插件进行页面截屏

使用纯html实现过程 <!DOCTYPE html> <html><head><title>使用html2canvas生成网页截图</title><script src"https://html2canvas.hertzen.com/dist/html2canvas.min.js"></script> </head><body><h1>…

jQuery使用echarts循环插入图表

目录 jQuery动态循环插入echarts图表 y轴显示最大值和最小值 x轴只显示两个值&#xff0c;开始日期和结束日期 jQuery动态循环插入echarts图表 html .center_img_list 是我们循环数据的地方 <div class"center_img shadow"><div class"center_img_b…

python_pycharm安装与jihuo

目录 环境&#xff1a; 安装包与jihuo文件&#xff1a; 安装python3.8.10 安装pycharm jihuo pycharm 概述 过程 jihuo 相关文件 环境&#xff1a; window11 python3.8.10 pycharm-professional-2019.1.3 安装包与jihuo文件&#xff1a; 安装python3.8.10 安装pyc…

算法通关村——归并排序

归并排序 1、归并排序原理 ​ 归并排序是一种很经典的分治策略。 ​ 归并排序(MERGE-SORT)简单来说就是将大的序列先视为若干小的数组&#xff0c;分成几个比较小的结构&#xff0c;然后是利用归并的思想实现的排序方法。将一个大的问题分解成一些小的问题分别求解&#xff…

mask-rcnn原理与实战

一、Mask R-CNN是什么&#xff0c;可以做哪些任务&#xff1f; Mask R-CNN是一个实例分割&#xff08;Instance segmentation&#xff09;算法&#xff0c;可以用来做“目标检测”、“目标实例分割”、“目标关键点检测”。 1. 实例分割&#xff08;Instance segmentation&am…