Check: CD16-00-001100
Crunchy Data Postgres 16 STIG:
CD16-00-001100
(in version v1 r1)
Title
PostgreSQL must produce audit records containing time stamps to establish when the events occurred. (Cat II impact)
Discussion
Information system auditing capability is critical for accurate forensic analysis. Without establishing when events occurred, it is impossible to establish, correlate, and investigate the events relating to an incident. To compile an accurate risk assessment and provide forensic analysis, it is essential for security personnel to know the date and time when events occurred. Associating the date and time with detected events in the application and audit logs provides a means of investigating an attack; recognizing resource utilization or capacity thresholds; or identifying an improperly configured application. PostgreSQL is capable of a range of actions on data stored within the database. It is important, for accurate forensic analysis, to know exactly when specific actions were performed. This requires the date and time an audit record is referring to. If date and time information is not recorded and stored with the audit record, the record itself is of very limited use.
Check Content
As the database administrator (usually postgres), run the following SQL: $ sudo su - postgres $ psql -c "SHOW log_line_prefix" If the query result does not contain "%m", this is a finding.
Fix Text
Note: The following instructions use the PGDATA and PGVER environment variables. Refer to APPENDIX-F for instructions on configuring PGDATA and APPENDIX-H for PGVER. Logging must be enabled to capture timestamps. To ensure logging is enabled, see the instructions in the supplementary content APPENDIX-C. If logging is enabled, the following configurations must be made to log events with timestamps: As the database administrator (shown here as "postgres"), edit postgresql.conf: $ sudo su - postgres $ vi ${PGDATA?}/postgresql.conf Add %m to log_line_prefix to enable timestamps with milliseconds: log_line_prefix = '< %m >' As the system administrator, reload the server with the new configuration: $ sudo systemctl reload postgresql-${PGVER?}
Additional Identifiers
Rule ID: SV-261867r1000955_rule
Vulnerability ID: V-261867
Group Title: SRG-APP-000096-DB-000040
Expert Comments
CCIs
Number | Definition |
---|---|
CCI-000131 |
Ensure that audit records containing information that establishes when the event occurred. |
Controls
Number | Title |
---|---|
AU-3 |
Content of Audit Records |