解决TDH 5.X版本中Manager数据库可以无密码登录风险

  使用配置, 漏洞信息
内容纲要

概要描述

用户在进行安全扫描时,可能会扫描到集群中MySQL数据库用户无需密码即可登录,且该MySQL端口为3308。这种情况就说明是Manager数据库的问题,且通常见于TDH 5.X版本。


详细说明

问题复现

要验证是否存在该问题,可先SSH登录Manager Server所在服务器(即Manager 8180页面的IP地址或主机名)。

然后在Manager Server所在服务器中,执行以下命令验证是否可无密码登录。其中IP地址改为Manager自身的IP地址。

mysql -h 172.22.27.11 -utranswarp -P3308

如果没有出现ERROR,而是直接进入了MySQL命令行,那么就说明该数据库存在无密码登录的风险。


问题原因

该问题是由于数据库的mysql.user表中存在空密码记录导致的。

使用root用户查看mysql.user表。

mysql -h 172.22.27.11 -uroot -P3308

然后执行以下SQL语句查看。

select host, user, password from mysql.user;

发现该表中确实含有password为空的记录。

file

在这个例子中,root用户和transwarp用户均存在无密码登录的风险。


问题解决

解决这个问题方法就是修改mysql.user表。

根据上面查看的mysql.user表中的信息,批量更新password为空的字段。

update mysql.user set password = '<修改为实际的password值,与其他记录保持一致即可>' where password = '';

然后刷新权限即可。

flush privileges;

这篇文章对您有帮助吗?

平均评分 0 / 5. 次数: 0

尚无评价,您可以第一个评哦!

非常抱歉,这篇文章对您没有帮助.

烦请您告诉我们您的建议与意见,以便我们改进,谢谢您。