TMAegisBeta
更多 mysql 规则

MySQL

TMA-MYSQL-7.5

Ensure Password Complexity Policies are in Place

高级别 1自动化mysql

说明

Password complexity includes password characteristics such as length, case, numerical, and character sets. Requires the validate_password component with length >= 14, check_user_name ON and policy STRONG (the dictionary file contents are not checked). Runs mysql -NBe with the client defaults: put an administrative account in ~/.my.cnf (mode 0600) or a mysql_config_editor login path, not MYSQL_PWD (see 1.4/1.6).

检查方式

审计方法: SQL 查询

sql_query
out=$(mysql -NBe "SELECT IF((SELECT COUNT(*) FROM mysql.component WHERE component_urn LIKE '%validate_password') > 0 AND (SELECT VARIABLE_VALUE FROM performance_schema.global_variables WHERE LOWER(VARIABLE_NAME) = 'validate_password.length') >= 14 AND (SELECT VARIABLE_VALUE FROM performance_schema.global_variables WHERE LOWER(VARIABLE_NAME) = 'validate_password.check_user_name') = 'ON' AND (SELECT VARIABLE_VALUE FROM performance_schema.global_variables WHERE LOWER(VARIABLE_NAME) = 'validate_password.policy') = 'STRONG', 'compliant', 'noncompliant')" 2>/dev/null) || exit 1; printf '%s\n' "$out"
预期输出
compliant

修复方式

修复方法: 操作指南或基础设施补丁

INSTALL COMPONENT 'file://component_validate_password'; SET PERSIST validate_password.length = 14; SET PERSIST validate_password.check_user_name = ON; SET PERSIST validate_password.policy = STRONG; SET PERSIST validate_password.dictionary_file = '<dictionary file>'; then change passwords that equal the user name.

属性

操作系统
任意
标签
mysqldatabaseauthenticationpassword
参考
CIS Oracle MySQL Community Server 8.4 Benchmark v1.1.0 - 7.5 Ensure Password Complexity Policies are in Place

检查本机

请在您有权审计的机器上运行此命令。扫描为只读操作。

shell
tmaegis scan --target mysql