SQL注入的时候,找到了注入点,但是老是搞不清怎么爆库,最后还是得看大佬的WP

最后,终于下定决心自己整理一下爆库的常用语句和思路,如果哪里写的不对麻烦在评论区指出:-D

省流概要

select group_concat(table_name) from information_schema.tables where table_schema=database();  ## 查看表名
## student, user, passwd
select group_concat(column_name) from information_schema.columns where table_name="passwd"; ## 查看列名
## value, hashValue
select group_concat(value) from passwd; ## 查看值

详细介绍

首先常用到的是这个数据库

information_schema

里面有许多表,记载了整个mysql里的各种信息,比如表名和列名,一般用得到的表为这两个

tables

tables表里面记载了整个数据库里所有的表的信息

重要的列有

  • table_name: 表名
  • table_schema: 表所在数据库名

这里我只查看了范例数据库(my_data)里的这两列



原来整个表的信息非常多,而且很长,我的屏幕是放不下,可以给你们感受下

—————————————————————————————————————————————————————

columns

columns表里记载了所有列的信息

重要的列有

  • table_name: 列所在的表名
  • table_schema: 列所在的数据库的名字
  • column_name: 列的名字
  • datatype: 这一列的数据类型

爆库基本流程

1. 爆出现在正在使用的数据库的名字和版本

select database(),version();
## 这是两个函数,分别会返回数据库名和版本号

2. 爆表名

select table_name from information_schema.tables where table_schema=database();

select table_name from information_schema.tables where table_schema='你查到的正在使用的数据库的名字';<br/>
## 从information_schema数据库中的tables表中,选择table_name列中table_schema(表所属于的数据库)等于你想要查看的数据库的部分。

3. 爆列名

从这几个表里选几个来看里面的列名,全部一起看容易乱,毕竟是网页里给出的位置在看,通常看起来会比较乱

比如我们这里查看student表里有什么列

select column_name from information_schema.columns where table_schema=database() and table_name='student';
## 从information_schema数据库中的columns表中,提取column_name列,要求table_schema列为当前数据库,且table_name(表名)列要是student。

注意值需要用引号 ' 括起来

4. 查看具体内容

万事俱备,只欠东风,表名和列名都知道了,看就完了

select sname from student;

5. group_concat()

这里要注意,用网站给出的展示位来看这些信息的时候,大部分时候网页只展示列的第一个信息,我们往往看不到所需要的信息。

这个时候就需要我们用group_concat()函数了

group_concat()函数可以将放入函数的所有信息用逗号隔开,连成一个字符串,这样我们就可以成功爆库了。

码字好累hhhhhhh

SQL注入常用爆库语句的更多相关文章

  1. 如何利用sql注入进行爆库

    SQL注入能做什么 在<SQL注入基础>一文介绍了SQL注入的基本原理和实验方法,那接下来就要问一下,SQL注入到底能什么? 估计很多朋友会这样认为:利用SQL注入最多只能获取当前表中的所 ...

  2. SQL注入常用命令

    1. 数据库查询版本 Mssql select @@version Mysql select vresion()/select @@version oracle select banner from ...

  3. [视频]K8飞刀 SQL注入点脱库演示教程

    K8飞刀 SQL注入点脱库演示动画教程 链接:https://pan.baidu.com/s/15gLTxiv9v1Te5QNFZnfV4A 提取码:eaa1

  4. WEB 安全之 SQL注入 < 二 > 暴库

    SQL注入是一个比较"古老"的话题,虽然现在存在这种漏洞的站点比较少了,我们还是有必要了解一下它的危害,及其常用的手段,知己知彼方能百战不殆.进攻与防守相当于矛和盾的关系,我们如果 ...

  5. SQL注入常用函数(注入小白的学习笔记)

    在盲注的情况下,往往需要一个一个字符的去猜解,即过程中需要截取字符串 在这里整理了一下一些常用函数 由于现阶段学习不够深入,整理分类不清楚具体,不过博主会慢慢进行完善 user() 查询当前数据库用户 ...

  6. SQL注入常用语句

    整形参数判断     1.直接加'  2.and 1=1  3. and 1=2     如果1.3运行异常 2正常就存在注入 字符型判断     1.直接加'  2.and '1'='1'  3. ...

  7. WEB安全--高级sql注入,爆错注入,布尔盲注,时间盲注

    1.爆错注入 什么情况想能使用报错注入------------页面返回连接错误信息 常用函数 updatexml()if...floorextractvalue updatexml(,concat() ...

  8. sql server 常用的查询语句

    最近在加强sql 语句的学习,整理一下基本语法,现在记录下 select * from dbo.cangku where city='河南' select  distinct(city), cangk ...

  9. sql一些常用的经典语句,最后是select as的用法

    总结一些工作中用到或碰到的SQL语句,希望能与大家分享,同时也希望大家能提供更多的精妙SQL语句..... 1.delete table1 from (select * from table2) as ...

  10. (二)SQL注入常用的内置函数整理(以MySql为例)

    [1]@@datadir 函数作用:返回数据库的存储目录构造SQL语句 select @@datadir;   [2]@@version_compile_os 函数作用:查看服务器的操作系统SQL语句 ...

随机推荐

  1. 宝塔导入mysql数据库后,phpmyadmin可以登录,本地Navicat无法登录

    问题描述:宝塔导入mysql数据库后,phpmyadmin可以登录,本地Navicat无法登录 问题排查:1.检查服务器3306端口是否开启,如果为云服务器,需要登录云服务器后台安全组设置开启: 2. ...

  2. C语言线程池的常见实现方式详解

    在 C 语言中,线程池通常通过 pthread 库来实现.以下是一个详细的说明,介绍了 C 语言线程池的常见实现方式,包括核心概念.实现步骤和具体的代码示例. 点击查看代码 1. 线程池的基本结构 线 ...

  3. allure 报告环境搭建

    1.安装 pip install allure-pytest 2.下载allure 地址: https://repo.maven.apache.org/maven2/io/qameta/allure/ ...

  4. 项目管理协作工具对比:PingCode vs Leangoo

    多语言适配能力 在全球化协作场景下,多语言支持成为跨国团队的硬性指标.PingCode目前仅支持中文界面,对于涉及多国语言协作的团队存在使用局限.对比Leangoo提供中英文双语界面切换功能,可满足基 ...

  5. Mysql数据库常用操作和Mysql大数据高效迁移方案

    1.数据迁移: 1.数据量较少时可使用mysqldump和mysql命令导出和导入 # 导出指定数据库系统 mysqldump -u _username -p _dbname > _sqlfil ...

  6. CSP-S 17天冲刺计划

    var code = "91461527-5e0b-458f-ae4b-db46cf2a11c8" D1~D3(树专题复习)(OK\color{green}OKOK) 树基础(OK ...

  7. webapi里调用grpc

    参照:ASP .NET Core 6.0使用Grpc配置服务和调用服务_asp.net core grpc 服务-CSDN博客 demo:https://files.cnblogs.com/files ...

  8. 服务器时间漂移,如何开启Linux NTP自动同步

    前言 在日常服务器运维中,我们往往默认服务器的时间是精准的.但最近一次偶然的 date 查询,让我发现--服务器时间竟然悄悄地漂移了-- 本文记录了整个排查与解决的过程,希望能帮到遇到类似问题的朋友, ...

  9. 银河麒麟系统 jenkins docker 部署 自动化打包部署git 项目

    Jenkins 是一个开源的自动化服务器,主要用于实现 持续集成(CI) 和 持续交付/部署(CD),其核心作用在于通过自动化流程提升软件开发和交付的效率与质量 一.环境准备 1. 安装 Docker ...

  10. STM32操作GPIO外设(点亮LED灯)的两种方式——使用官方库函数或直接操作寄存器

    STM32操作外设(点亮LED灯)的两种方式 准备工作: 硬件gec6818开发板.搭载stm32f407zet6芯片 keil项目模板,准备好官方库函数 官方提供的<STM32f407数据手册 ...