Check: MADB-10-004600
MariaDB Enterprise 10.x STIG:
MADB-10-004600
(in versions v2 r2 through v1 r2)
Title
MariaDB must separate user functionality (including user interface services) from database management functionality. (Cat II impact)
Discussion
Information system management functionality includes functions necessary to administer databases, network components, workstations, or servers and typically requires privileged user access. The separation of user functionality from information system management functionality is either physical or logical and is accomplished by using different computers, different central processing units, different instances of the operating system, different network addresses, combinations of these methods, or other methods, as appropriate. An example of this type of separation is observed in web administrative interfaces that use separate authentication methods for users of any other information system resources. This may include isolating the administrative interface on a different domain and with additional access controls. If administrative functionality or information regarding MariaDB management is presented on an interface available for users, information on MariaDB settings may be inadvertently made available to the user.
Check Content
Show the list of system privileges that the MariaDB server supports, run: MariaDB> SHOW PRIVILEGES; Gather a list of SHOW GRANTS commands. SHOW GRANTS will list the privileges granted to the account. Run this database query to create the SHOW GRANTS script for each user: MariaDB> SELECT DISTINCT CONCAT( 'SHOW GRANTS FOR ', user,'@', host,';') AS grantQuery FROM mysql.user WHERE is_role = 'N'; Run each SHOW GRANTS command for each user. MariaDB> SHOW GRANTS FOR 'user'@'host'; If any nonadministrative role has any one of the following privileges, this is a finding. Create user Event Process Proxy Reload Replication client Replication slave Show databases Shutdown Supe, Usage If administrator and general user functionality are not separated either physically or logically, this is a finding.
Fix Text
Configure MariaDB Enterprise Server to separate database administration and general user functionality. Do not grant Create user, Event, Process, Proxy, Reload, Replication client, Replication slave, Show databases, Shutdown, Super, Create tablespace, Usage privileges to users and roles that do not require it. To remove privileges, see the following examples: 1. Revoke privileges from a specific user: MariaDB> REVOKE SUPER, PROCESS ON *.* FROM 'user'@'host'; 2. Revoke privileges from a role: MariaDB> REVOKE 'role' FROM 'user'@'host';
Additional Identifiers
Rule ID: SV-253705r961095_rule
Vulnerability ID: V-253705
Group Title: SRG-APP-000211-DB-000122
Expert Comments
CCIs
Number | Definition |
---|---|
CCI-001082 |
Separate user functionality, including user interface services, from system management functionality. |
Controls
Number | Title |
---|---|
SC-2 |
Application Partitioning |