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 : 操作系统
|
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |