sql 注入 1

当前在email表 security库 查到user表

1、第一步,知道对方goods表有几列(email 2 列 good 三列,查的时候列必须得一样才可以查,所以创建个临时表,select 123 )

但是你无法知道对方goods表有多少列

用order by 升降序排列

但是数据库有传参机制(1 order by 1 desc)

第二步如何走出限制(走出双引号)

加单引号,但是多一个单引号,需要注释掉或者再加个单引号('1' order by 1 desc ')

注释方法:1、--+ 2、# 3、--(空格)

传参是在url地址栏里,# (不自行编码)

所以需要手动编码 # 是%23

--+ 和 --空格 为啥一样呢(都是注释的用途)

根据官方文档 说明空格被编码成+

Id = ' 1 ' order by 1 #'

第二步 连表查询 (id = -1 )(是1的话只会显示第一行)

现在咱们就可以查询users 表了(但是我们不知道对方user表是什么)

第三步 查询对方管理表

首先看一下所有库,看哪一个库存管理员表几率会更大一些

这个库里有一个表 会记录所有库的名称

当前库查到之后,接下来查表 (tables _NAME _SCHEMA)(这两个字段 记录 库中的表 对应关系)

Select table_schema from tables;

现在查到了库名,表名

存储的所有表名,需要过滤

当前是在sercuity

查到之后,在sql靶场显示只会显示第一个 要显示user表

第四步,如何显示user表

可以使用limit 进行 一个一个查直到查到user为止(少表可以)

Group_concat 将数组 转成一列

Uagents (使用的是哪个浏览器) referers (从哪个网址来)

我们就可以查user里面的列

这个表是记录列的

这样就查到了

0x3a 是 :

结束

相关推荐
m0_623955666 分钟前
Oracle使用SQL一次性向表中插入多行数据
数据库·sql·oracle
阿蒙Amon1 小时前
C#读写文件:多种方式详解
开发语言·数据库·c#
东窗西篱梦1 小时前
Redis集群部署指南:高可用与分布式实践
数据库·redis·分布式
就是有点傻2 小时前
C#如何实现中英文快速切换
数据库·c#
jnrjian2 小时前
Oracle RAC环境 加错数据文件 的修复 归档非归档都没问题
sql·oracle
1024小神2 小时前
hono框架绑定cloudflare的d1数据库操作步骤
数据库
KellenKellenHao4 小时前
MySQL数据库主从复制
数据库·mysql
@ chen4 小时前
Redis事务机制
数据库·redis
KaiwuDB5 小时前
使用Docker实现KWDB数据库的快速部署与配置
数据库·docker
一只fish5 小时前
MySQL 8.0 OCP 1Z0-908 题目解析(16)
数据库·mysql