Crunchy Data PostgreSQL Security Technical Implementation Guide
Rules, Groups, and Values defined within the XCCDF Benchmark
-
SRG-APP-000374-DB-000322
<GroupDescription></GroupDescription>Group -
PostgreSQL must record time stamps, in audit records and application data that can be mapped to Coordinated Universal Time (UTC, formerly GMT).
<VulnDiscussion>If time stamps are not consistently applied and there is no common time reference, it is difficult to perform forensic analys...Rule Medium Severity -
SRG-APP-000267-DB-000163
<GroupDescription></GroupDescription>Group -
PostgreSQL must reveal detailed error messages only to the ISSO, ISSM, SA, and DBA.
<VulnDiscussion>If PostgreSQL provides too much information in error logs and administrative messages to the screen, this could lead to compr...Rule Medium Severity -
PostgreSQL must allow only the Information System Security Manager (ISSM), or individuals or roles appointed by the ISSM, to select which auditable events are to be audited.
<VulnDiscussion>Without the capability to restrict which roles and individuals can select which events are audited, unauthorized personnel ma...Rule Medium Severity -
SRG-APP-000360-DB-000320
<GroupDescription></GroupDescription>Group -
PostgreSQL must provide an immediate alert to appropriate support staff of all audit log failures.
<VulnDiscussion>It is critical for the appropriate personnel to be aware if a system is at risk of failing to process audit logs as required....Rule Medium Severity -
SRG-APP-000109-DB-000321
<GroupDescription></GroupDescription>Group -
PostgreSQL must be configurable to overwrite audit log records, oldest first (First-In-First-Out [FIFO]), in the event of unavailability of space for more audit log records.
<VulnDiscussion>It is critical that when PostgreSQL is at risk of failing to process audit logs as required, it take action to mitigate the f...Rule Low Severity -
SRG-APP-000109-DB-000049
<GroupDescription></GroupDescription>Group -
PostgreSQL must by default shut down upon audit failure, to include the unavailability of space for more audit log records; or must be configurable to shut down upon audit failure.
<VulnDiscussion>It is critical that when PostgreSQL is at risk of failing to process audit logs as required, it take action to mitigate the f...Rule Medium Severity -
SRG-APP-000442-DB-000379
<GroupDescription></GroupDescription>Group -
PostgreSQL must maintain the confidentiality and integrity of information during reception.
<VulnDiscussion>Information can be either unintentionally or maliciously disclosed or modified during reception, including, for example, duri...Rule Medium Severity -
SRG-APP-000133-DB-000200
<GroupDescription></GroupDescription>Group -
Database objects (including but not limited to tables, indexes, storage, trigger procedures, functions, links to software external to PostgreSQL, etc.) must be owned by database/DBMS principals authorized for ownership.
<VulnDiscussion>Within the database, object ownership implies full privileges to the owned object, including the privilege to assign access t...Rule Medium Severity -
SRG-APP-000133-DB-000198
<GroupDescription></GroupDescription>Group -
The PostgreSQL software installation account must be restricted to authorized users.
<VulnDiscussion>When dealing with change control issues, it should be noted any changes to the hardware, software, and/or firmware components...Rule High Severity -
SRG-APP-000133-DB-000199
<GroupDescription></GroupDescription>Group -
Database software, including PostgreSQL configuration files, must be stored in dedicated directories separate from the host OS and other applications.
<VulnDiscussion>When dealing with change control issues, it should be noted, any changes to the hardware, software, and/or firmware component...Rule Medium Severity -
SRG-APP-000101-DB-000044
<GroupDescription></GroupDescription>Group -
PostgreSQL must include additional, more detailed, organization-defined information in the audit records for audit events identified by type, location, or subject.
<VulnDiscussion>Information system auditing capability is critical for accurate forensic analysis. Reconstruction of harmful events or forens...Rule Medium Severity -
SRG-APP-000342-DB-000302
<GroupDescription></GroupDescription>Group -
Execution of software modules (to include functions and trigger procedures) with elevated privileges must be restricted to necessary cases only.
<VulnDiscussion>In certain situations, to provide required functionality, PostgreSQL needs to execute internal logic (stored procedures, func...Rule Medium Severity -
SRG-APP-000447-DB-000393
<GroupDescription></GroupDescription>Group -
When invalid inputs are received, PostgreSQL must behave in a predictable and documented manner that reflects organizational and system objectives.
<VulnDiscussion>A common vulnerability is unplanned behavior when invalid inputs are received. This requirement guards against adverse or uni...Rule Medium Severity -
SRG-APP-000233-DB-000124
<GroupDescription></GroupDescription>Group -
PostgreSQL must isolate security functions from non-security functions.
<VulnDiscussion>An isolation boundary provides access control and protects the integrity of the hardware, software, and firmware that perform...Rule Medium Severity -
SRG-APP-000381-DB-000361
<GroupDescription></GroupDescription>Group -
PostgreSQL must produce audit records of its enforcement of access restrictions associated with changes to the configuration of PostgreSQL or database(s).
<VulnDiscussion>Without auditing the enforcement of access restrictions against changes to configuration, it would be difficult to identify a...Rule Medium Severity -
SRG-APP-000383-DB-000364
<GroupDescription></GroupDescription>Group -
PostgreSQL must disable network functions, ports, protocols, and services deemed by the organization to be nonsecure, in accord with the Ports, Protocols, and Services Management (PPSM) guidance.
<VulnDiscussion>Use of nonsecure network functions, ports, protocols, and services exposes the system to avoidable threats.</VulnDiscussio...Rule Medium Severity -
SRG-APP-000118-DB-000059
<GroupDescription></GroupDescription>Group -
The audit information produced by PostgreSQL must be protected from unauthorized read access.
<VulnDiscussion>If audit data were to become compromised, then competent forensic analysis and discovery of the true source of potentially ma...Rule Medium Severity -
SRG-APP-000454-DB-000389
<GroupDescription></GroupDescription>Group -
When updates are applied to PostgreSQL software, any software components that have been replaced or made unnecessary must be removed.
<VulnDiscussion>Previous versions of PostgreSQL components that are not removed from the information system after updates have been installed...Rule Medium Severity -
SRG-APP-000494-DB-000344
<GroupDescription></GroupDescription>Group -
PostgreSQL must generate audit records when categorized information (e.g., classification levels/security levels) is accessed.
<VulnDiscussion>Changes in categories of information must be tracked. Without an audit trail, unauthorized access to protected data could go ...Rule Medium Severity -
SRG-APP-000492-DB-000333
<GroupDescription></GroupDescription>Group -
PostgreSQL must generate audit records when unsuccessful attempts to delete privileges/permissions occur.
<VulnDiscussion>Failed attempts to change the permissions, privileges, and roles granted to users and roles must be tracked. Without an audit...Rule Medium Severity -
PostgreSQL must generate audit records when unsuccessful attempts to access security objects occur.
<VulnDiscussion>Changes to the security configuration must be tracked. This requirement applies to situations where security data is retriev...Rule Medium Severity -
SRG-APP-000503-DB-000351
<GroupDescription></GroupDescription>Group -
PostgreSQL must generate audit records when unsuccessful logons or connection attempts occur.
<VulnDiscussion>For completeness of forensic analysis, it is necessary to track failed attempts to log on to PostgreSQL. While positive ident...Rule Medium Severity -
SRG-APP-000505-DB-000352
<GroupDescription></GroupDescription>Group -
PostgreSQL must generate audit records showing starting and ending time for user access to the database(s).
<VulnDiscussion>For completeness of forensic analysis, it is necessary to know how long a user's (or other principal's) connection to Postgre...Rule Medium Severity -
SRG-APP-000496-DB-000335
<GroupDescription></GroupDescription>Group -
PostgreSQL must generate audit records when unsuccessful attempts to modify security objects occur.
<VulnDiscussion>Changes in the database objects (tables, views, procedures, functions) that record and control permissions, privileges, and r...Rule Medium Severity -
SRG-APP-000495-DB-000326
<GroupDescription></GroupDescription>Group -
PostgreSQL must generate audit records when privileges/permissions are added.
<VulnDiscussion>Changes in the permissions, privileges, and roles granted to users and roles must be tracked. Without an audit trail, unautho...Rule Medium Severity -
SRG-APP-000502-DB-000349
<GroupDescription></GroupDescription>Group -
PostgreSQL must generate audit records when unsuccessful attempts to delete categorized information (e.g., classification levels/security levels) occur.
<VulnDiscussion>Changes in categorized information must be tracked. Without an audit trail, unauthorized access to protected data could go un...Rule Medium Severity
Node 2
The content of the drawer really is up to you. It could have form fields, definition lists, text lists, labels, charts, progress bars, etc. Spacing recommendation is 24px margins. You can put tabs in here, and can also make the drawer scrollable.