MySQL数据库注入基础

语言分类:解释型语言编译型语言解释型语言是一种在运行时由一个运行时组件解释语言代码并执行其中包含的指令的语言。

在解释型语言中,如果程序与用户进行交互,用户就可以构造特殊的输入来拼接到程序中执行,从而让程序依据用户输入执行可能存在恶意行为的代码

MySQL 5.0以上版本

默认定义了information_schema数据库,用来存储数据库元信息。其中具有表schemata(数据库名)、tables(表名)、columns(列名或者字段名)。

我先在数据库中创建了一个名为smbms数据库,其中含有一个user表user表含有name字段password字段

schemata

在该表中,schema_name字段用来存储数据库名。

MySQL数据库注入基础 可以看到所有的数据库名及其相关信息都存储在该表中了。

tables

该表中,table_schema存储数据库名,table_name用来存储表名

MySQL数据库注入基础

tables表因为是按照数据库来存储的,smbms数据库只有一张表所以只查出了一条行记录出来。

columns

该表中,table_schema表明数据库,table_name表明表,column_name表明字段名

MySQL数据库注入基础

可以看到columns表是以字段名来进行存储的,同样的查询语句,在columns表中能查出一条行记录,在tables表中只有一条行记录。

MySQL常用函数

  1. user():查看当前MySQL登录用户名

  2. database():查看当前使用的MySQL数据库名

  3. version():查看当前MySQL版本

相关文章: