TMA-MARIADB-7.3
Ensure strong authentication is utilized for all accounts
설명
The mysql_native_password and mysql_old_password plugins utilize weak cryptography and/or weak password routines. In particular, the mysql_old_password plugin utilizes cracked password routines and is subject to Pass-the-Hash attacks. The mysql_native_password plugin relies on the Secure Hash Algorithm 1 (SHA-1) algorithm. Counts accounts still using mysql_native_password/mysql_old_password/no plugin, apart from root and mysql with an invalid password string. Runs mariadb -NBe with the client defaults: as root on the server the unix_socket plugin usually authenticates; otherwise put an administrative account in ~/.my.cnf (mode 0600), not MYSQL_PWD (see 1.4/1.6).
점검 방법
감사 방식: SQL 쿼리
out=$(mariadb -NBe "SELECT COUNT(*) FROM mysql.user WHERE plugin IN ('mysql_native_password', 'mysql_old_password', '') AND NOT (User = 'root' AND authentication_string = 'invalid') AND NOT (User = 'mysql' AND authentication_string = 'invalid')" 2>/dev/null) || exit 1; printf '%s\n' "$out"- 예상 출력
0
조치 방법
조치 방식: 가이드 또는 인프라 패치
ALTER USER 'root'@'localhost' IDENTIFIED VIA unix_socket; SET PASSWORD FOR 'mysql'@'localhost' = 'invalid'; SET PASSWORD FOR 'mariadb.sys'@'localhost' = 'invalid'; and move every other listed account to ed25519, gssapi, pam or unix_socket (ALTER USER ... IDENTIFIED VIA ed25519 USING PASSWORD('...')).
속성
- 운영 체제
- 모두
- 태그
- mariadbdatabaseauthentication
- 참고 자료
- CIS MariaDB 10.11 Benchmark v1.0.0 - 7.3 Ensure strong authentication is utilized for all accounts
이 호스트 점검하기
감사 권한이 있는 시스템에서 실행하세요. 스캔은 읽기 전용입니다.
tmaegis scan --target mariadb