web-csrf
目录
CSRF与XSS的区别:
get请求
原理:
pikachu为例
post请求
pikachu为例
CSRF与XSS的区别:
CSRF是借用户的权限完成攻击,攻击者并没有拿到用户的权限,而XSS是直接盗取到了用户的权限
get请求
原理:
A在某个网站更改我们所需要的信息信息点击提交,用bp开启抓包。然后把更改数据的get请求网址复制出来发给B。当B点击这个链接打开的时候,如果B恰好登陆我们的目标网站,信息就会修改成功。
靶场:pikachu的get,dvwa的low
pikachu为例
lili用户进行信息更改界面,然后把提交的链接发送给allen

用bp进行抓包
GET /vul/csrf/csrfget/csrf_get_edit.php?sex=777888&phonenum=777888&add=777888&email=777888&submit=submit
构造payload
http://8.130.137.228:84/vul/csrf/csrfget/csrf_get_edit.php?sex=777888&phonenum=777888&add=777888&email=777888&submit=submit
将payload发送给allen,allen进行点击

post请求
pikachu为例
可以看到我们进行修改的参数在请求体中可以看到

利用bp的poc(一个html页面)生成网址链接



访问这个链接的时候是不能关闭bp的代理的。访问到这个界面之后,就要关闭bp代理,点击按钮就修改信息成功了

防护措施:
①对敏感信息的操作增加安全的token;
②对敏感信息的操作增加安全的验证码;
③对敏感信息的操作实施安全的逻辑流程,比如修改密码时,需要先校验旧密码等。
④用referer来限制访问跳转页面
相关文章:
web-csrf
目录 CSRF与XSS的区别: get请求 原理: pikachu为例 post请求 pikachu为例 CSRF与XSS的区别: CSRF是借用户的权限完成攻击,攻击者并没有拿到用户的权限,而XSS是直接盗取到了用户的权限 get请求 原理:…...
数据结构—图的存储结构
6.图 回顾:数据的逻辑结构 集合——数据元素间除 “同属于一个集合” 外,无其他关系。 线性结构——一个对一个,如线性表、栈、队列 树形结构——一个对多个,如树 图形结构——多个对多个,如图 6.1图的定义和术语 图:…...
Vue3 中 setup,ref 和 reactive 的理解
setup Vue3中使用了Composition API这种写法,使得所有的组合API函数都在此使用, 只在初始化时执行一次。 函数如果返回对象, 对象中的属性或方法, 模板中可以直接使用 ref 作用:定义一个数据的响应式 语法:const xxx ref(initValue) 一般用来…...
BL302嵌入式ARM控制器进行SQLite3数据库操作的实例演示
本文主要讲述了在钡铼技术BL302嵌入式arm控制器上运行 SQLite3 数据库的命令示例。SQLite3 是一个轻型的嵌入式数据库,不需要安装数据库服务器进程,占用资源低且处理速度快。 首先,需要将对应版本的 SQLite3 文件复制到设备的 /usr/ 目录下&…...
C++ 多线程:std::future
std::future std::future 简介示例1博客引用来源 std::future 简介 我们前面介绍的std::thread 是C11中提供异步创建多线程的工具,只能是异步运行任务,却无法获取任务执行的结果,一般都是依靠全局对象,全局对象在多线程下是及其不…...
断路器回路电阻试验
试验目的 断路器回路电阻主要取决于断路器动、 静触头的接触电阻, 其大小直接影响正常 运行时的发热情况及切断短路电流的性能, 是反应安装检修质量的重要数据。 试验设备 回路电阻测试仪 厂家: 湖北众拓高试代销 试验接线 对于单断口的断路器, 通过断口两端的接线…...
Python中的CALL_FUNCTION指令
在Python字节码中,CALL_FUNCTION指令后跟的数字代表这次函数调用需要从栈上取出的参数的数量。具体来说,这个数字包括位置参数和关键字参数的数量。 这个数字的低两位表示位置参数的数量,然后每两位表示一个关键字参数的数量。因此ÿ…...
微服务——es数据聚合+RestClient实现聚合
数据聚合 聚合的种类 DSL实现Bucket聚合 如图所示,设置了10个桶,那么就显示了数量最多的前10个桶,品牌含有7天酒店的有30家, 品牌含有如家的也有30家。 修改排序规则 限定聚合范围 DSL实现Metrics聚合 如下案例要求对不同的品…...
代码分析Java中的BIO与NIO
开发环境 OS:Win10(需要开启telnet服务,或使用第三方远程工具) Java版本:8 BIO 概念 BIO(Block IO),即同步阻塞IO,特点为当客户端发起请求后,在服务端未处理完该请求之前ÿ…...
网络安全(黑客)工作篇
一、网络安全行业的就业前景如何? 网络安全行业的就业前景非常广阔和有吸引力。随着数字化、云计算、物联网和人工智能等技术的迅速发展,网络安全的需求持续增长。以下是网络安全行业就业前景的一些关键因素: 高需求:随着互联网的…...
zookeeper入门学习
zookeeper入门学习 zookeeper应用场景 分布式协调组件 客户端第一次请求发给服务器2,将flag值修改为false,第二次请求被负载均衡到服务器1,访问到的flag也会是false 一旦有节点发生改变,就会通知所有监听方改变自己的值&#…...
VirtualEnv 20.24.0 发布
导读VirtualEnv 20.24.0 现已发布,VirtualEnv 用于在一台机器上创建多个独立的 Python 运行环境,可隔离项目之间的第三方包依赖,为部署应用提供方便,把开发环境的虚拟环境打包到生产环境即可,不需要在服务器上再折腾一…...
LabVIEW开发高压航空航天动力系统爬电距离的测试
LabVIEW开发高压航空航天动力系统爬电距离的测试 更多电动飞机MEA技术将发电,配电和用电集成到一个统一的系统中,提高了飞机的可靠性和可维护性。更多的电动飞机使用更多的电能来用电动替代品取代液压和气动系统。对车载电力的需求不断增加,…...
【论文阅读】基于深度学习的时序异常检测——Anomaly Transformer
系列文章链接 数据基础:多维时序数据集简介 论文一:2022 Anomaly Transformer:异常分数预测 论文二:2022 TransAD:异常分数预测 论文链接:Anomaly Transformer.pdf 代码链接:https://github.co…...
Java并发总结
1.创建线程三种方式 Runnable.Callable接口使用继承Thread类的方式创建多线程Runnable 和Callable区别 Callable规定(重写)的方法是call(),Runnable规定(重写)的方法是run()。Callable的任务执行后可返回值࿰…...
视频汇聚平台EasyCVR视频广场侧边栏支持拖拽
为了提升用户体验以及让平台的操作更加符合用户使用习惯,我们在EasyCVR v3.3版本中,支持面包屑侧边栏的广场视频、分组列表、收藏这三个模块拖拽排序,并且该操作在视频广场、视频调阅、电子地图、录像回放等页面均能支持。 TSINGSEE青犀视频…...
MyCat分片规则——范围分片、取模分片、一致性hash、枚举分片
1.范围分片 2.取模分片 范围分片和取模分片针对数字类型的字段可以,但是针对于字符串类型的字段时。这两种就不适用了。 3.一致性hash 4.枚举分片 默认节点指的是,如果我们向数据库表插入数据的时候,超出了这个枚举值,那么默认向…...
设计模式行为型——备忘录模式
目录 什么是备忘录模式 备忘录模式的实现 备忘录模式角色 备忘录模式类图 备忘录模式举例 备忘录模式代码实现 备忘录模式的特点 优点 缺点 使用场景 注意事项 实际应用 什么是备忘录模式 备忘录模式(Memento Pattern)又叫做快照模式&#x…...
Parquet存储的数据模型以及文件格式
文章目录 数据模型Parquet 的原子类型Parquet 的逻辑类型嵌套编码 Parquet文件格式 本文主要参考文献:Tom White. Hadoop权威指南. 第4版. 清华大学出版社, 2017.pages 363. Aapche Parquet是一种能有效存储嵌套数据的列式存储格式,在Spark中应用较多。 …...
Go和Java实现访问者模式
Go和Java实现访问者模式 我们下面通过一个解压和压缩各种类型的文件的案例来说明访问者模式的使用。 1、访问者模式 在访问者模式中,我们使用了一个访问者类,它改变了元素类的执行算法。通过这种方式,元素的执行算法可以随 着访问者改变而…...
Linux内核镜像构建与管理:从源码到部署的工程化实践
1. 项目概述:从“kernel-images”看内核镜像的构建与管理在Linux系统开发、嵌入式设备定制或者云原生基础设施的维护中,我们经常会遇到一个看似简单却至关重要的环节:内核镜像的构建与管理。无论是为了修复一个安全漏洞、启用一个新的硬件驱动…...
Freewall跨浏览器兼容性:解决IE8+布局问题的完整方案
Freewall跨浏览器兼容性:解决IE8布局问题的完整方案 【免费下载链接】freewall kombai/freewall: Freewall 是一个灵活、响应式的网格布局引擎,可用于创建具有自适应布局功能的网页或应用组件,尤其适合于图片墙、瀑布流布局等场景。 项目地…...
ADAU1701的隐藏玩法:不写代码,用SigmaStudio模块库实现5.1虚拟环绕和动态低音
ADAU1701音效魔法:零代码打造虚拟环绕与智能低音系统 在追求极致音效体验的今天,专业级音频处理不再是大型音响厂商的专利。借助ADAU1701这颗强大的音频DSP芯片和SigmaStudio图形化开发环境,即使没有任何DSP编程经验的开发者,也能…...
别再折腾LibreOffice了!CentOS 7.9上老牌Apache OpenOffice 4.1.14的完整部署与后台服务化指南
在CentOS 7.9上部署Apache OpenOffice 4.1.14作为无头文档处理服务的完整指南 对于需要在Linux服务器上搭建稳定文档处理服务的运维和开发人员来说,Apache OpenOffice仍然是一个值得考虑的选择。尽管LibreOffice在功能和社区支持上更为活跃,但在某些特定…...
基于Next.js全栈技术构建本地即时交易平台:架构设计与核心实现
1. 项目概述:一个面向本地市场的即时交易平台最近在逛GitHub的时候,发现了一个挺有意思的项目,叫marketmenow。光看这个名字,你大概就能猜到它的方向——一个“现在就能交易的市场”。没错,这是一个旨在构建本地化、即…...
信息量模型避坑指南:搞懂这3个关键点,你的地质灾害评价结果才靠谱
信息量模型避坑指南:搞懂这3个关键点,你的地质灾害评价结果才靠谱 在地质灾害易发性评价领域,信息量模型因其计算简单、结果直观而广受欢迎。然而,许多GIS从业者和科研人员在应用该模型时,常常陷入"流程正确但结果…...
基于Apify与AI模型的产品安全风险智能识别系统构建指南
1. 项目概述:一个面向产品安全与消费者风险管理的智能工具最近在梳理一些供应链和电商合规的项目时,我反复被一个核心痛点困扰:如何系统性地、自动化地识别和评估海量商品信息中潜藏的消费者风险?无论是作为平台方的风控团队&…...
Zynq/ZynqMP PL端以太网避坑指南:手把手教你配置GMII to RGMII IP(从Vivado到Linux设备树)
Zynq/ZynqMP PL端以太网开发实战:从GMII到RGMII的完整避坑手册 在嵌入式系统开发中,以太网功能几乎是现代设备的标配需求。当使用Xilinx Zynq或ZynqMP系列芯片时,开发者常面临一个关键选择:使用PS端内置的MAC控制器,还…...
ChatGPT Web应用共享部署:基于代理的AI服务管控方案
1. 项目概述与核心价值最近在折腾一个挺有意思的开源项目,叫“chatpire/chatgpt-web-share”。简单来说,它就是一个让你能把自己部署的ChatGPT Web应用(比如基于ChatGPT-Next-Web这类项目搭建的)变成一个可以安全、可控地分享给朋…...
从提示词到技能笔记:构建可复用AI工作流的核心方法
1. 项目概述:从“提示词”到“技能笔记”的认知跃迁最近在折腾AI应用开发的朋友,估计没少被“提示词工程”这个词刷屏。从最初的简单指令,到如今动辄上千字的复杂结构化提示,我们与AI的交互方式正在经历一场深刻的变革。但不知道你…...
