漏洞描述
MySQL 弱口令漏洞指 MySQL 数据库 root 账号对应的密码长度太短或者复杂度不够,如仅包含数字,或仅包含字母等。
弱口令容易被破解,一旦被恶意利用来登录系统,会导致数据泄露。
修复方案
修改口令,增加口令复杂度,如同时包含大小写字母、数字和特殊字符等。
注意:
- 在修改完密码后,请同时修改应用程序连接数据库的相关账号和密码。
- 请不要使用默认的操作系统账号连接数据库,您可以新建一个单独的数据库账号,并授权其连接数据库。
您可以选择使用以下方法来修改密码:
使用
SET PASSWORD
命令mysql -u root
mysql> SET PASSWORD FOR 'root'@'localhost' = PASSWORD('newpass');
使用
mysqladmin
创建/修改密码# 首次创建密码
mysqladmin -u root password "newpass"
# 修改密码
mysqladmin -u root password oldpass "newpass"
使用
UPDATE
编辑 user 表以更新密码mysql -u root
mysql> use mysql;
mysql> UPDATE user SET Password = PASSWORD('newpass') WHERE user = 'root';
mysql> FLUSH PRIVILEGES;
使用以下方式重置密码
mysqld_safe --skip-grant-tables&
mysql -u root mysql
mysql> UPDATE user SET password=PASSWORD("new password") WHERE user='root';
mysql> FLUSH PRIVILEGES;