Loading

sql注入之Mysql数据库(一)

1.Mysql基础知识

Mysql的元数据库:information_schema(里面存储了mysql服务器的数据库名、表名和字段名)
元数据库常见的表:
information_schema.tables:存储了所有的表名
information_schema.columns:存储了所有的列名
其中tables表常见的字段名:
table_schema:存储数据库名
table_name:存储表名
其中columns表常见的列名:
table_schema:存储数据库名
table_name:存储表名
column_name:存储列名
注意:
Mysql5.0以下没有information_schema数据库,只能暴力破解(其中暴力破解字典存在于sqlmap\data\txt目录下)

2.Mysql的注释符

#
/**/
/*!50000*/
--空格

3.Mysql常用的系统函数

select version();查询数据库版本
select user();查询当前用户
select database();查询当前数据库
select @@version_compile_os;查看操作系统
select @@basedir;数据库安装路径
select @@datadir;数据库数据路径

4.my.ini配置文件secure_file_priv参数说明

secure_file_priv:限制数据的导入导出,设置此参数后需要重启mysql数据库
可以在mysql命令行中使用show variables like '%secure_file_priv%';来查看此参数值
当secure_file_priv的值为null ,表示限制mysqld 不允许导入|导出
当secure_file_priv的值为/tmp/ ,表示限制mysqld 的导入|导出只能发生在/tmp/目录下
当secure_file_priv的值没有具体值时,表示不对mysqld 的导入|导出做限制
该参数与:load_file()、into outfile、into dumpfile函数有关,有关攻击姿势,后续章节讨论

5.Mysql数据存储

除了导出为.sql文件,还可以直接迁移data目录下的所有文件,复制到新的mysql服务器,启动mysql服务即可

6.Mysql密码存储

Mysql4.1之前使用Mysql323加密,Mysql4.1之后使用MySQL SHA1加密。其加密函数是password。
在Mysql8.0版本之后,取消掉该函数

当Mysql<5.7版本时,密码存储在Mysql数据库的user表的password字段中
当Mysql>=5.7版本时,密码存储在Mysql数据库的user表的authentication_string字段中

如何破解密码?
将其放入在线网站中破解即可:
https://cmd5.com/
https://www.somd5.com/

7.Mysql开启远程连接

use mysql;
update user set Host = '%' where Host = 'localhost' and User='root';
flush privileges;
posted @ 2021-05-27 23:30  Ctrl_C+Ctrl_V  阅读(146)  评论(0)    收藏  举报