TDSQL
TMA-TDSQL-12.6
Ensure Temporary System Account Passwords Are Cleaned Up
MediumLevel 1Automatedtdsql
Description
TDSQL creates temporary system accounts during certain management operations (such as privilege migration and DCN synchronization). After the operation completes, temporary accounts should be cleaned up. Runs the mysql client against the TDSQL data node selected by TDSQL_MYSQL_OPTS (e.g. "-h10.0.0.5 -P4001 -utdsql_audit"); keep the password in ~/.my.cnf or a login path rather than MYSQL_PWD or the command line (see 1.4 and 1.5).
How it is checked
Audit method: SQL query
sql_query
out=$(mysql ${TDSQL_MYSQL_OPTS:-} -NBe "SELECT COUNT(*) FROM mysql.user WHERE User LIKE '%tmp%' OR User LIKE '%temp%'" 2>/dev/null) || exit 1; printf '%s\n' "$out"- Expected output
0
How it is fixed
Fix method: Guidance or infrastructure patch
DROP USER IF EXISTS '<temporary account>'@'<host>'; (e.g. 'tdsqlsys_auth_tmp'@'%') and add periodic temporary-account cleanup to inspections.
Properties
- Operating systems
- Any
- Tags
- tdsqlauthentication
- Reference
- CIS Tencent TDSQL 10.3.22 Benchmark v1.0.0 - 12.6 Ensure Temporary System Account Passwords Are Cleaned Up
Check this host
Run this on a machine you are allowed to audit. The scan is read-only.
shell
tmaegis scan --target tdsql