MySQL
TMA-MYSQL-5.1
Ensure Only Administrative Users Have Full Database Access
HighLevel 1Manual reviewmysql
Description
The mysql.user, mysql.db, and other mysql tables ending in _priv list a variety of privileges that can be granted (or denied) to MySQL users. Some of the privileges of concern include: Select_priv, Insert_priv, Update_priv, Delete_priv, Drop_priv, and so on.
How it is checked
Audit method: Manual review
This recommendation cannot be checked automatically. A scan lists it with these instructions when you pass --include-manual.
Run SELECT * FROM information_schema.user_privileges WHERE grantee NOT LIKE ('\'mysql.%localhost\''); and ensure all returned users are administrative users with the minimal privileges required.
How it is fixed
Fix method: Guidance or infrastructure patch
REVOKE unnecessary privileges (e.g. REVOKE ALL PRIVILEGES ON *.* FROM '<user>'@'<host>';) and GRANT only database-level privileges that are needed.
Properties
- Operating systems
- Any
- Tags
- mysqldatabaseauthorizationmanual
- Reference
- CIS Oracle MySQL Community Server 8.4 Benchmark v1.1.0 - 5.1 Ensure Only Administrative Users Have Full Database Access