STIGQter STIGQter: STIG Summary: IBM DB2 V10.5 LUW Security Technical Implementation Guide Version: 1 Release: 4 Benchmark Date: 25 Oct 2019:

DB2 must generate audit records when security objects are accessed.

DISA Rule

SV-89287r1_rule

Vulnerability Number

V-74613

Group Title

SRG-APP-000492-DB-000332

Rule Version

DB2X-00-009600

Severity

CAT II

CCI(s)

Weight

10

Fix Recommendation

Run the following command to define an audit policy with the needed subset using the CREATE AUDIT POLICY SQL statement:
DB2> CREATE AUDIT POLICY <DB audit policy name>
CATEGORIES SECMAINT STATUS BOTH, VALIDATE STATUS BOTH, CHECKING STATUS BOTH, CONTEXT STATUS BOTH
ERROR TYPE AUDIT

To modify an existing audit policy, replace "CREATE" with "ALTER" in the preceding statement. Only the categories explicitly named in the statement will be affected. In this case, the changes take effect immediately.

If CREATE was used above, run the following command to apply the policy created above to the database:
DB2> AUDIT DATABASE USING POLICY <DB audit policy name>

Check Contents

To ensure the database generates audit records when security objects are accessed the following audit categories must be implemented at the database level:

AUDIT
CHECKING
CONTEXT
SECMAINT
SYSADMIN
VALIDATE

Run the following SQL statement to determine if an audit policy is defined upon the database:
DB2> SELECT AUDITPOLICYNAME, AUDITPOLICYID
FROM SYSCAT.AUDITUSE
WHERE OBJECTTYPE IN (' ')

If no rows are returned, this is a finding.

Using the AUDITPOLICYID returned from above query, run the following command to find the details of audit policy:
DB2> SELECT AUDITPOLICYNAME, AUDITSTATUS, CHECKINGSTATUS, CONTEXTSTATUS, SECMAINTSTATUS, SYSADMINSTATUS, VALIDATESTATUS, ERRORTYPE AS ERRORTYPE
FROM SYSCAT.AUDITPOLICIES
WHERE AUDITPOLICYID = <audit policy ID>

If the values for AUDITSTATUS, CHECKINGSTATUS, CONTEXTSTATUS, SECMAINTSTATUS, SYSMADMINSTATUS and VALIDATESTATUS are not 'B' (Both) or ERRORTYPE is not 'A' (Audit), this is a finding.

Vulnerability Number

V-74613

Documentable

False

Rule Version

DB2X-00-009600

Severity Override Guidance

To ensure the database generates audit records when security objects are accessed the following audit categories must be implemented at the database level:

AUDIT
CHECKING
CONTEXT
SECMAINT
SYSADMIN
VALIDATE

Run the following SQL statement to determine if an audit policy is defined upon the database:
DB2> SELECT AUDITPOLICYNAME, AUDITPOLICYID
FROM SYSCAT.AUDITUSE
WHERE OBJECTTYPE IN (' ')

If no rows are returned, this is a finding.

Using the AUDITPOLICYID returned from above query, run the following command to find the details of audit policy:
DB2> SELECT AUDITPOLICYNAME, AUDITSTATUS, CHECKINGSTATUS, CONTEXTSTATUS, SECMAINTSTATUS, SYSADMINSTATUS, VALIDATESTATUS, ERRORTYPE AS ERRORTYPE
FROM SYSCAT.AUDITPOLICIES
WHERE AUDITPOLICYID = <audit policy ID>

If the values for AUDITSTATUS, CHECKINGSTATUS, CONTEXTSTATUS, SECMAINTSTATUS, SYSMADMINSTATUS and VALIDATESTATUS are not 'B' (Both) or ERRORTYPE is not 'A' (Audit), this is a finding.

Check Content Reference

M

Target Key

3161

Comments