当前位置: 首页 > news >正文

DVWA靶场Medium难度部分解析

前言

好久没做题,不想吹牛逼了,消停做点题QAQ

Vulnerability: Command Injection

这题不咋难,老Ping题了

 输个分号ls试试,没回显即被Ban了,试试别的,例如|或者&&

出了,看看源代码

 把分号和和号Ban了

Vulnerability: File Inclusion

文件包含

看看几个文件

 

只有file2要密码。没啥想法,直接Hackbar自带Payload梭了

出了

解个码

Vulnerability: File Upload

文件上传,限制只能传图片

一句话🐎改成图片后缀,抓包改成php

保险点后面加个空格。此处原理请参照:https://www.cnblogs.com/cainiao-chuanqi/articles/14198190.html

Vulnerability: SQL Injection

抓个包看看

在包里看到id=1,判断闭合方式:

输入1'时:

输入1"时:

 输入1和输入2-1时:

 数字型,判断字段数:

1 order by 1#        正常

1 order by 2#        正常

1 order by 3#        报错

两个字段,注库名:

id=-1 union select 1,database()

逐句解释:

首先判断字段数,是为了确定后台数据库中存储数据的方式

id姓名密码
1hh123456
2ss12345
3aa123

如上的表格中字段数为3,即id姓名密码

union select 为联合注入语句,要求左右两侧字段数相同,即:

左侧的-1代表的是网站后台数据库,攻击者要确保union select后面的位数要和前面,也就是系统后台数据库相同,这也是攻击者为什么要先判断字段数的原因。

在本题中,下列语句即不合规则的语句:

id=-1 union select 1,2,3

因为左侧的后台数据库中有两字段数,但右侧1,2,3有三个字段数。

那在正常的语句中就可以将正常显示位中的字符替换成想了解的信息,例如想注出数据库的名字

在本题中就可以

id=-1 union select 1,database()

 前面的-1作用是避免占据显示位,使攻击者无法看到想要的消息。

举例说明:

假设在选择数字进行查询时,网站只会给攻击者一条查询记录。如果以如下语句传输:

id=1 union select 1,database()

则会导致唯一提供给攻击者的记录被id=1这条查询结果所占据,而后面的数据库名就无法看到。 

所以要使用一个网站后台数据库中压根不可能存在的一个ID去查询,例如负数或者一个极大数。

结果如下: 

此处我使用的是

id=1 union select 1,database()

可以看到第一个显示位返回值为id=1的查询结果,第二个显示位则是数据库名:DVWA

后续怎么注不想说了。不过本题有一个坑:

查看源代码,发现有设置函数过滤攻击语句

结果就是攻击者在进行下一步攻击时部分字符被Ban

绕过方式就是16进制编码一下:

别忘了用0x声明字符为16进制。

Vulnerability: Reflected Cross Site Scripting (XSS)

反射型XSS直接模板梭就行了

Vulnerability: Stored Cross Site Scripting (XSS)

前端限制输入字符数量,直接改一下或者抓包就好了:

 存储型的话模板梭一下

没过去,看看源代码:

解释一下:

strip_tags()

strip_tags() 函数剥去字符串中的 HTML、XML 以及 PHP 的标签,但允许使用标签。

addslashes()

addslashes()函数返回在预定义字符(单引号、双引号、反斜杠、NULL)之前添加反斜杠的字符串。
可以看到,由于对message参数使用了htmlspecialchars函数进行编码,因此无法再通过message参数注入XSS代码,但是对于name参数,只是简单过滤了

双写绕呗:

 

下机

相关文章:

DVWA靶场Medium难度部分解析

前言 好久没做题,不想吹牛逼了,消停做点题QAQ Vulnerability: Command Injection 这题不咋难,老Ping题了 输个分号ls试试,没回显即被Ban了,试试别的,例如|或者&& 出了,看看源代码 把…...

SVG图形

什么是SVG SVG(Scalable Vector Graphics)是一种用于描述二维矢量图形的XML 格式文件。它是一种用于在网络上显示图形的开放标准,旨在与Web上的其他技术(如HTML和CSS)集成,并支持在不失真的情况下缩放和调…...

冒泡排序和简答选择排序

冒泡排序 一种典型的交换排序 类似水冒泡&#xff0c;大元素经不断的交换由水底慢慢的浮出 从头到尾&#xff0c;循环比较两相邻的元素 大的元素移到后面&#xff0c;小的放前面-每次循环&#xff0c;大的元素会排到最后 代码如下&#xff1a; #include<stdio.h> …...

leetcode3. 无重复字符的最长子串 [滑动窗口]

题目 给定一个字符串 s &#xff0c;请你找出其中不含有重复字符的 最长子串 的长度。 示例 1: 输入: s "abcabcbb" 输出: 3 解释: 因为无重复字符的最长子串是 "abc"&#xff0c;所以其长度为 3。示例 2: 输入: s "bbbbb" 输出: 1 解释:…...

软件工程与计算总结(十六)详细设计的设计模式

一.设计模式基础 某种意义上来说&#xff0c;设计模式就是设计经验的总结~ 设计模式不是简单的经验总结&#xff0c;更不是无中生有&#xff0c;它是经过实践反复检验、能解决关键技术难题、有广泛应用前景和能够显著提高软件质量的有效的经验总结。 每个模式都不是独立的&a…...

List集合拆分为多个List

list 拆分 目录概述需求&#xff1a; 设计思路实现思路分析1.list 拆分是2.用stream的parallel实现list的分批处理3.使用stream的parallel实现list的分批处理 参考资料和推荐阅读 Survive by day and develop by night. talk for import biz , show your perfect code,full bus…...

Hadoop3教程(十三):MapReduce中的分区

文章目录 &#xff08;96&#xff09; 默认HashPartitioner分区&#xff08;97&#xff09; 自定义分区案例&#xff08;98&#xff09;分区数与Reduce个数的总结参考文献 &#xff08;96&#xff09; 默认HashPartitioner分区 分区&#xff0c;是Shuffle里核心的一环&#xf…...

笔记本Win10系统一键重装操作方法

笔记本电脑已经成为大家日常生活和工作中必不可少的工具之一&#xff0c;如果笔记本电脑系统出现问题了&#xff0c;那么就会影响到大家的正常操作。这时候就可以考虑给笔记本电脑重装系统了。接下来小编给大家介绍关于一键重装Win10笔记本电脑系统的详细步骤方法。 推荐下载 系…...

FilterRegistrationBean能不能排除指定url

文章目录 什么是FilterRegistrationBean举个栗子但是如果我想要排除某些uri方法总结FilterRegistrationBean只能设置指定的url进行过滤,而不能指定排除uri,只能使用OncePerRequestFilter的shouldNotFilter方法,排除uri 什么是FilterRegistrationBean FilterRegistrationBean是…...

【LeetCode】36. 有效的数独

1 问题 请你判断一个 9 x 9 的数独是否有效。只需要 根据以下规则 &#xff0c;验证已经填入的数字是否有效即可。 数字 1-9 在每一行只能出现一次。 数字 1-9 在每一列只能出现一次。 数字 1-9 在每一个以粗实线分隔的 3x3 宫内只能出现一次。&#xff08;请参考示例图&…...

华为---PPP协议简介及示例配置

PPP协议简介 PPP是Point-to-Point Protocol的简称&#xff0c;中文翻译为点到点协议。与以太网协议一样,PPP也是一个数据链路层协议。以太网协议定义了以太帧的格式&#xff0c;PPP协议也定义了自己的帧格式&#xff0c;这种格式的帧称为PPP帧。 利用PPP协议建立的二层网络称为…...

asp.net老年大学信息VS开发sqlserver数据库web结构c#编程Microsoft Visual Studio计算机毕业设计

一、源码特点 asp.net老年大学信息管理系统是一套完善的web设计管理系统&#xff0c;系统具有完整的源代码和数据库&#xff0c;系统主要采用B/S模式开发。开发环境为vs2010&#xff0c;数据库为sqlserver2008&#xff0c;使用c# 语言开发 asp.net老年大学信息管理系统…...

模型量化笔记--对称量化和非对称量化

1–量化映射 量化映射的通用公式为: r S ( q − Z ) r S(q - Z) rS(q−Z) 其中r表示量化前数据的真实值&#xff0c;S表示缩放因子&#xff0c;q表示量化后的数值&#xff0c;Z表示零点 2–非对称量化 非对称量化需要一个偏移量Z来完成零点的映射&#xff0c;即量化前的零…...

PA2019 Terytoria

洛谷P5987 [PA2019] Terytoria 题目大意 在一个平面直角坐标系上&#xff0c;有一个长度为 X X X&#xff0c;宽度为 Y Y Y的地图&#xff0c;这个地图的左边界和右边界是连通的&#xff0c;下边界和上边界也是连通的。 在地图中&#xff0c;有 X Y X\times Y XY个格子以及…...

内容分发网络CDN分布式部署真的可以加速吗?原理是什么?

Cdn快不快&#xff1f;她为什么会快&#xff1f;同样的带宽为什么她会快&#xff1f;原理究竟是什么&#xff0c;同学们本着普及知识的想法&#xff0c;我了解的不是很深入&#xff0c;适合小白来看我的帖子&#xff0c;如果您是大佬还请您指正错误的地方&#xff0c;先谢谢大佬…...

微服务docker部署实战

docker基础和进阶(*已掌握的可以跳过 *) 基础 docker基础 进阶 docker进阶 准备工作 提前准备好mysql和redis的配置&#xff0c;如下 在/zzq/mysql/conf目录下配置mysql配置文件my.cnf [client] #设置客户端字符集 default_character_setutf8 [mysqld] #开启定时任务 event_s…...

js实现拖拽功能

基于onMouseDown 、onMouseMove 、onMouseUp 使用 mousedown、mousemove 和 mouseup 事件来实现拖拽的基本思路是&#xff1a; 在 mousedown 事件中&#xff0c;开始追踪拖拽操作并记录鼠标按下的位置。 在 mousemove 事件中&#xff0c;根据鼠标的移动&#xff0c;更新被拖拽…...

数据库主从切换过程中Druid没法获取连接错误

背景&#xff1a; 今天dba在进行DB的主从切换&#xff0c;导致应用一直报错&#xff0c;获取不到DB连接&#xff0c;druid的错误信息如下&#xff1a; Could not open JDBC Connection for transaction; nested exception is com.alibaba.druid.pool.GetConnectionTimeoutExc…...

【iOS】Mac M1安装iPhone及iPad的app时设置问题

【iOS】Mac M1安装iPhone及iPad的app时设置问题 简介一&#xff0c;设置问题二&#xff0c;适配问题 简介 由于 苹果M1芯片的Mac可用安装iPhone以及iPad应用&#xff0c;因为开发者并没有适配Mac&#xff0c;因此产生了很多奇怪问题&#xff0c;这里总结归纳Mac M1安装iPhone和…...

Springboot 启动报错@spring.active@解析错误

Caused by: org.yaml.snakeyaml.scanner.ScannerException: while scanning for the next token found character that cannot start any token. (Do not use for indentation)in reader, line 10, column 13:active: spring.active^查看是否勾选...

Go语言的性能优化:从分析到实践

Go语言的性能优化&#xff1a;从分析到实践 性能优化的重要性 在软件开发中&#xff0c;性能优化是一个永恒的话题。一个高性能的应用程序可以&#xff1a; 提高用户体验&#xff0c;减少响应时间降低服务器成本&#xff0c;提高资源利用率增强系统的可扩展性提升应用程序的竞争…...

深度强化学习在Python中的自动驾驶策略探索:运用DDPG与PPO算法技术实现及实验结果报告

python基于深度强化学习的自动驾驶策略研究 关键技术&#xff1a;DDPG、PPO算法、深度强化学习 内容包含&#xff1a;python程序实验结果报告深夜的模拟器里&#xff0c;一辆红色小车正在空荡的街道上蛇形前进&#xff0c;方向盘像喝醉似的左右乱转。这可不是什么灵异事件&…...

温度场与锂枝晶生长的相场电势场及浓度场耦合仿真研究

comsol 锂枝晶仿真——耦合温度场 在相场&#xff0c;电势场和浓度场的基础上耦合了温度场&#xff0c;可以看不同温度对锂枝晶的影响指尖的金属晶体在电解液中野蛮生长&#xff0c;就像寒冬玻璃上的冰花。当我们盯着显微镜观察锂枝晶时&#xff0c;常忽略了一个重要变量——温…...

微软老员工称部分“被更新损坏“的电脑实际早已注定失败

据微软资深工程师雷蒙德陈表示&#xff0c;微软的系统更新并非总是客户设备损坏的罪魁祸首。有时这些设备早已存在问题&#xff0c;只是客户在补丁星期二重启尝试导致系统无法启动之前没有注意到。更新背后的真相陈在文章中写道&#xff1a;"我在企业产品支持部门的同事们…...

终极指南:如何精准选择Fluxion攻击时间窗口与提升成功率的完整策略

终极指南&#xff1a;如何精准选择Fluxion攻击时间窗口与提升成功率的完整策略 【免费下载链接】fluxion Fluxion is a remake of linset by vk496 with enhanced functionality. 项目地址: https://gitcode.com/gh_mirrors/fl/fluxion Fluxion是一款基于linset重构的无…...

批量图片添加文字水印工具:Windows 上手指南(预览与平铺)

面向需要在 Windows 上 批量 给 图片 叠 文字水印 的同事&#xff0c;工具名【批量图片添加文字水印工具】。下文只写能力与操作顺序&#xff0c;不写实现细节。输入与目录支持选择多个文件或整个文件夹&#xff0c;路径可拖拽填入&#xff1b;多文件路径用分号分隔。勾选「遍历…...

如何在 React Native 中使用 Expo AV 高效缓存视频文件

本文详解在裸 React Native 项目中集成 expo-av 实现视频本地缓存的完整方案&#xff0c;涵盖路径处理、文件写入、URI 适配及常见兼容性问题&#xff08;如 react-native-fs 路径不被 expo-av 识别&#xff09;&#xff0c;并提供可直接运行的优化代码与关键注意事项。 本…...

3步搞定视频转PPT:开源智能提取工具终极指南

3步搞定视频转PPT&#xff1a;开源智能提取工具终极指南 【免费下载链接】extract-video-ppt extract the ppt in the video 项目地址: https://gitcode.com/gh_mirrors/ex/extract-video-ppt 你是否厌倦了手动从视频中截图制作PPT&#xff1f;想要快速将录播课程、会议…...

2026届学术党必备的六大降重复率工具推荐榜单

Ai论文网站排名&#xff08;开题报告、文献综述、降aigc率、降重综合对比&#xff09; TOP1. 千笔AI TOP2. aipasspaper TOP3. 清北论文 TOP4. 豆包 TOP5. kimi TOP6. deepseek 基于自然语言处理技术的智能应用是AI写作工具&#xff0c;它能辅助用户完成文本生成、语法纠…...

安全测试左移:在CI/CD中集成安全扫描

安全困境与左移的必要性 在快速迭代的敏捷开发与DevOps浪潮中&#xff0c;软件交付的周期被急剧压缩&#xff0c;然而&#xff0c;传统安全测试模式却显得格格不入。测试阶段末期的一次性渗透测试或代码审计&#xff0c;发现的往往是积重难返的高危漏洞&#xff0c;修复成本高…...