SV-89267r1_rule
V-74593
SRG-APP-000381-DB-000361
DB2X-00-008200
CAT II
10
Run the following command to set the auditing at the instance level:
$db2audit configure scope sysadmin status both error type audit
Run the following command to set the auditing at the database level:
DB2> CREATE AUDIT POLICY <DB audit policy name> CATEGORIES SYSADMIN STATUS BOTH, CONTEXT STATUS BOTH ERROR TYPE AUDIT
Run the following command if the auditing policy exists but does not include the sysadmin category:
DB2> ALTER AUDIT POLICY <DB audit policy name> SYSADMIN STATUS BOTH, CONTEXT STATUS BOTH ERROR TYPE AUDIT
If CREATE was used above, apply the policy created above to the database:
DB2> AUDIT DATABASE USING POLICY <DB audit policy name>
Note: See the following page for knowledgebase information regarding the ALTER AUDIT POLICY:
http://www.ibm.com/support/knowledgecenter/SSEPGG_10.5.0/com.ibm.db2.luw.sql.ref.doc/doc/r0050608.html?lang=en
To audit changes in configuration, the SYSADMIN category needs to be audited at both the instance level and the database level.
Run the following command to ensure that the SYSADMIN category is being audited at the instance level:
$db2audit describe
If Log system administrator events is not set to “Both”, this is a finding.
Run the following SQL statement to ensure that an audit policy exists at the database level:
DB2> SELECT AUDITPOLICYNAME, AUDITPOLICYID
FROM SYSCAT.AUDITUSE
WHERE OBJECTTYPE = ' '
If no rows are returned, this is a finding.
For the audit policy returned in the statement above, run the following SQL statement to confirm that the SYSADMIN category is part of that policy and the ERROR TYPE='A':
DB2> SELECT AUDITPOLICYNAME, SYSADMINSTATUS, CONTEXTSTATUS, ERRORTYPE AS ERRORTYPE
FROM SYSCAT.AUDITPOLICIES
WHERE AUDITPOLICYID = <audit policy ID>
If the values for SYSADMINSTATUS and CONTEXTSTATUS are not 'B' (Both) or ERRORTYPE is not 'A' (Audit), this is a finding.
V-74593
False
DB2X-00-008200
To audit changes in configuration, the SYSADMIN category needs to be audited at both the instance level and the database level.
Run the following command to ensure that the SYSADMIN category is being audited at the instance level:
$db2audit describe
If Log system administrator events is not set to “Both”, this is a finding.
Run the following SQL statement to ensure that an audit policy exists at the database level:
DB2> SELECT AUDITPOLICYNAME, AUDITPOLICYID
FROM SYSCAT.AUDITUSE
WHERE OBJECTTYPE = ' '
If no rows are returned, this is a finding.
For the audit policy returned in the statement above, run the following SQL statement to confirm that the SYSADMIN category is part of that policy and the ERROR TYPE='A':
DB2> SELECT AUDITPOLICYNAME, SYSADMINSTATUS, CONTEXTSTATUS, ERRORTYPE AS ERRORTYPE
FROM SYSCAT.AUDITPOLICIES
WHERE AUDITPOLICYID = <audit policy ID>
If the values for SYSADMINSTATUS and CONTEXTSTATUS are not 'B' (Both) or ERRORTYPE is not 'A' (Audit), this is a finding.
M
3161