《网络安全自学教程》- MySQL匿名用户的原理分析与实战研究

++《网络安全自学教程》++

低版本的MySQL数据库在安装时会创建一个用户名和密码为空的账户,也就是匿名账户。即使升级到高版本,匿名账户仍然会存在。

MySQL匿名账户

1、检查是否存在匿名账户

sql 复制代码
select user,host,authentication_string from mysql.user;

查询结果中,用户名和密码为空的,就是匿名账户。

扩展:MySQL5.7版本开始,将 mysql.user 表的 password 字段换成了 authentication_string,老版本查询用户信息要用 select user,password from mysql.user;

2、检查用户权限

sql 复制代码
show grants for ''@'localhost';

查询结果中,匿名用户的权限是 USAGE,是服务器管理的权限,权限很高,有风险。

扩展:解释一下查询结果中的权限是什么意思

  • GRANT:修改用户权限的命令。
  • USAGE:给用户的权限。
  • ON:权限对哪些 数据库.表 生效,这里的 *.* 意思是对所有数据库、所有表生效。
  • TO:权限给那个用户,格式 '用户名'@'登录主机'

3、创建匿名账户

除了系统自带的匿名账户,我们也可以自己创建匿名账户。

sql 复制代码
create user ''@'localhost';

4、使用匿名账户登录

用户名和密码留空,指定登录主机,可以登录匿名账户。

bash 复制代码
 mysql -u -p -hlocalhost

这是一个风险点,基线加固或者漏扫的时候都会检查出来。

5、删除匿名账户

使用root或高权限用户删除。

sql 复制代码
delete from mysql.user where user='';

删除后需要 flush privileges; 刷新权限,否则还是可以登录。

相关推荐
美狐美颜SDK开放平台6 小时前
直播APP开发实战:从摄像头调用到视频美颜sdk集成
android·人工智能·计算机视觉·音视频·直播美颜sdk
镜象科技7 小时前
抑郁情绪数字化干预:从“隐蔽的信号“到“看得见的路径“
人工智能
素男7 小时前
对上的,和没对上的——两篇之间那条链
人工智能·agent·self-becoming·ai长期记忆·ai自我介绍
niuTaylor7 小时前
飞腾 FT-2000/4 Ubuntu 内存卡 / NVMe SSD 系统制作完整指南
linux·服务器·人工智能·驱动开发·单片机
pusheng20257 小时前
马年市场快报 | 阿尔及利亚政府推进2200万台家用CO报警器安装计划
大数据·人工智能
2601_965742227 小时前
布局GEO AI本地营销,我重点看这几个细节
大数据·人工智能·算法·ai·新媒体运营
EatFan7 小时前
AI Agent 上生产前先加三道闸门:审批、限权、可回放的工程实践
人工智能·python·算法·多智能体·ai agent·mcp·harness
遥感知识服务7 小时前
沙漠和洪水在SAR里都很黑,AI到底怎么分?
人工智能
小成很成7 小时前
Skills:AI 时代必备技能,让大模型从聊天工具变成专业助手
人工智能
yu_zhidun7 小时前
企业管理者看:员工上网行为管理软件,别再只靠网关“赌安全”
大数据·人工智能·安全·域智盾