STIGQter STIGQter: STIG Summary: MS SQL Server 2014 Database Security Technical Implementation Guide Version: 1 Release: 6 Benchmark Date: 26 Jan 2018:

Where SQL Server Audit is in use at the database level, SQL Server must allow only the ISSM (or individuals or roles appointed by the ISSM) to select which auditable events are to be audited at the database level.

DISA Rule

SV-81851r2_rule

Vulnerability Number

V-67361

Group Title

SRG-APP-000090-DB-000065

Rule Version

SQL4-00-011320

Severity

CAT II

CCI(s)

Weight

10

Fix Recommendation

Create a database role specifically for audit maintainers, and give it permission to maintain audits, without granting it unnecessary permissions:
USE <database name>;
GO
CREATE ROLE DATABASE_AUDIT_MAINTAINERS;
GO
GRANT ALTER ANY DATABASE AUDIT TO DATABASE_AUDIT_MAINTAINERS;
GO
(The role name used here is an example; other names may be used.)

Use REVOKE and/or DENY and/or ALTER ROLE ... DROP MEMBER ... statements to remove the ALTER ANY DATABASE AUDIT permission from all users.

Then, for each authorized database user, run the statement:
ALTER ROLE DATABASE_AUDIT_MAINTAINERS ADD MEMBER <user name> ;
GO

Use REVOKE and/or DENY and/or ALTER SERVER ROLE ... DROP MEMBER ... statements to remove CONTROL DATABASE permission from logins that do not need it.

Check Contents

If SQL Server Audit is not in use at the database level, this is not applicable (NA).

Obtain the list of approved audit maintainers from the system documentation.

Review the database roles and individual users that have the following permissions, both of which enable the ability to maintain audit definitions:
ALTER ANY DATABASE AUDIT
CONTROL ON DATABASE

The functions and views provided in the supplemental file Permissions.sql can assist in this review. In the following, "STIG" stands for the schema where you have deployed these views and functions. To see which logins and server roles have been granted these permissions:
SELECT
*
FROM
STIG.database_permissions P
WHERE
(P.[Permission] = 'ALTER ANY DATABASE AUDIT')
OR
(P.[Permission] = 'CONTROL' AND P.[Securable Type or Class] = 'DATABASE')
;

To see what users and database roles inherit these permissions from the database roles reported by the previous query, repeat the following for each one:
SELECT * FROM STIG.members_of_database_role(<database role name>);

To see all the permissions in effect for a database principal (server role or login):
SELECT * FROM STIG.server_effective_permissions(<principal name>);

If designated personnel are not able to configure auditable events, this is a finding.

If unapproved personnel are able to configure auditable events, this is a finding.

Vulnerability Number

V-67361

Documentable

False

Rule Version

SQL4-00-011320

Severity Override Guidance

If SQL Server Audit is not in use at the database level, this is not applicable (NA).

Obtain the list of approved audit maintainers from the system documentation.

Review the database roles and individual users that have the following permissions, both of which enable the ability to maintain audit definitions:
ALTER ANY DATABASE AUDIT
CONTROL ON DATABASE

The functions and views provided in the supplemental file Permissions.sql can assist in this review. In the following, "STIG" stands for the schema where you have deployed these views and functions. To see which logins and server roles have been granted these permissions:
SELECT
*
FROM
STIG.database_permissions P
WHERE
(P.[Permission] = 'ALTER ANY DATABASE AUDIT')
OR
(P.[Permission] = 'CONTROL' AND P.[Securable Type or Class] = 'DATABASE')
;

To see what users and database roles inherit these permissions from the database roles reported by the previous query, repeat the following for each one:
SELECT * FROM STIG.members_of_database_role(<database role name>);

To see all the permissions in effect for a database principal (server role or login):
SELECT * FROM STIG.server_effective_permissions(<principal name>);

If designated personnel are not able to configure auditable events, this is a finding.

If unapproved personnel are able to configure auditable events, this is a finding.

Check Content Reference

M

Target Key

2637

Comments