SQL注入进行爆库爆表

编程入门 行业动态 更新时间:2024-10-27 08:37:13

<a href=https://www.elefans.com/category/jswz/34/1771285.html style=SQL注入进行爆库爆表"/>

SQL注入进行爆库爆表

SQL注入能做什么

正像小偷从窗户爬进入房间,他不仅能在能在房间内偷东西, 也可以将整个房子洗劫一空。

接下来看看如何利用SQL注入注入进行爆库爆表甚至报数据 !

  • 原理

当知道了目标网站可以进行SQL注入的时候, 如何进一步知道有哪些数据库、哪些表和字段呢?

答案是, 在mysql中有一个元数据库, 

里面存储了所有整个mysql中有什么数据库, 什么表以及每个表中有哪些字段, 就相当于把自己的所有财产都告诉别人了

那么, 只要知道了这个原理, 流程如下:

元数据库 -->  数据库  -->  表  -->  字段  -->  内容

 

1. 元数据库

元数据如何获取呢? 

利用 show databases; 就可以看到元数据库 information_schema了

里面应有尽有, 可以尽情开放的处女地

 

2. 查看所有数据库

有了元数据库, 我们可以看看里面有些什么表:

其中 schemata表中就是存储mysql的所有数据库了, 我们可以查看一下里面的数据

可以看到mysql中有4个数据库

这里的访问形式为: 数据库.表名, shcema_name就是数据库的名称

 

3. 查看表

在元数据表中, TABLES存储数据库中所有的表名:

加入我们通过以上步骤知道了所有数据库的名字, 现在需要进一步挖出指定数据(就比如数据库sys吧)的所有表名, 

我们可以听过查看information_schema中的TABLES描述:

其中 TABLES_SCHEMA 和 TABLE_NAME 分别是数据库名和表名

例如, 要查看数据库sys下的所有表:

select TABLE_SCHEMA, TABLE_NAME from information_schema.TABLES where TABLE_SCHEMA='sys';

黄框内即为sys数据库下所有的表名

 

4.  查看字段

现在已经知道了表名, 要进一步挖出字段

所有表的字段信息也在information_schema中:

看看COLUMNS的描述:

COLUMNS_NAME 存储有所有表的所有字段信息

假如有查看数据库sys中的 host_summary 表的字段:

select TABLE_NAME, COLUMN_NAME from information_schema.COLUMNS where TABLE_NAME='host_summary';

表的所有字段就出来了!

 

5.  查看数据

所有信息已在掌控之中!  现在只需进行一个简单的查询操作就可以得到数据了:

大功告成!!  成功拿到数据.

 

 

  • 总结 

INFORMATION_SCHEMA   :  元数据库,里面应用尽有

SCHEMATA                          :  里面描述了整个mysql下的所有数据库

TABLE_SCHEMA                 :  数据库名

TABLE_NAME                     :  表名

COLUMNS                           :  存储所有表的所有字段

COLUMN_NAME                 :  字段名

@@version_compile_os      :  操作系统

 

 

更多推荐

SQL注入进行爆库爆表

本文发布于:2024-02-11 18:54:43,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1682728.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:SQL   爆库爆表

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!