STIGQter STIGQter: STIG Summary: MariaDB Enterprise 10.x Security Technical Implementation Guide Version: 2 Release: 5 Benchmark Date: 01 Apr 2026:

MariaDB must be able to generate audit records when successful accesses to objects occur.

DISA Rule

SV-253770r961836_rule

Vulnerability Number

V-253770

Group Title

SRG-APP-000507-DB-000356

Rule Version

MADB-10-011800

Severity

CAT II

CCI(s)

Weight

10

Fix Recommendation

If the MariaDB Enterprise Audit plugin is not active, enable it in one of the two following ways.

1. Config file (requires restart):

[mariadb]
server_audit_logging = ON

2. SQL (does not require restart):

MariaDB> SET GLOBAL server_audit_logging=ON;

Once the MariaDB Enterprise Audit plugin is loaded, verify the MariaDB Enterprise Audit plugin is loaded and actively logging:

MariaDB> SHOW GLOBAL STATUS LIKE 'Server_audit_active';

If the necessary auditing is not in place for all or specific users, modify the filters.

To modify the default filter, delete, and recreate:

MariaDB> DELETE FROM mysql.server_audit_filters WHERE filtername = 'default';

MariaDB> INSERT INTO mysql.server_audit_filters (filtername, rule)
VALUES ('default',
JSON_COMPACT(
'{
"logging":"ON",
"connect_event":"ALL",
"query_event":"ALL",
"table_event":"ALL"
}'
));

Specific objects can be added to filters with inclusion or exclusion.

ignore_databases: Do not log actions on these databases.
ignore_tables: Do not log actions on these tables.
databases: Log actions on these databases.
tables: Log actions on these tables.

Example:

MariaDB> INSERT INTO mysql.server_audit_filters (filtername, rule)
VALUES (
'reporting',
JSON_COMPACT(
'{
"tables": [
"production.*",
"reporting.*",
{
"table_event": [
"WRITE",
"CREATE",
"DROP",
"RENAME",
"ALTER"
],
"query_event": [
"DML",
"DDL",
{
"ignore_tables": [
"production.customer_profiles",
"production.customer_addresses"
]
}
]
}
]
}'
)
);

Check Contents

Verify the MariaDB Enterprise Audit plugin is loaded and actively logging:

MariaDB> SHOW GLOBAL STATUS LIKE 'Server_audit_active';

Default Audit Filter is applied to all users by default.

Named Audit Filters are assigned to specific users.

Check what filters are in place by running the following as an administrative user:

MariaDB> SELECT * FROM mysql.server_audit_filters;

Check what Named Audit Filters are assigned to what users:

MariaDB> SELECT sau.host, sau.user, saf.filtername,
JSON_DETAILED(saf.rule)
FROM mysql.server_audit_filters saf
JOIN mysql.server_audit_users sau
ON saf.filtername = sau.filtername
WHERE saf.filtername != 'default'\G

If the MariaDB Enterprise Audit plugin is not active and/or necessary auditing is not in place, this is a finding.

Vulnerability Number

V-253770

Documentable

False

Rule Version

MADB-10-011800

Severity Override Guidance

Verify the MariaDB Enterprise Audit plugin is loaded and actively logging:

MariaDB> SHOW GLOBAL STATUS LIKE 'Server_audit_active';

Default Audit Filter is applied to all users by default.

Named Audit Filters are assigned to specific users.

Check what filters are in place by running the following as an administrative user:

MariaDB> SELECT * FROM mysql.server_audit_filters;

Check what Named Audit Filters are assigned to what users:

MariaDB> SELECT sau.host, sau.user, saf.filtername,
JSON_DETAILED(saf.rule)
FROM mysql.server_audit_filters saf
JOIN mysql.server_audit_users sau
ON saf.filtername = sau.filtername
WHERE saf.filtername != 'default'\G

If the MariaDB Enterprise Audit plugin is not active and/or necessary auditing is not in place, this is a finding.

Check Content Reference

M

Target Key

5475