Crunchy Data PostgreSQL Security Technical Implementation Guide
Rules, Groups, and Values defined within the XCCDF Benchmark
-
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-000356-DB-000314
<GroupDescription></GroupDescription>Group -
PostgreSQL must utilize centralized management of the content captured in audit records generated by all components of PostgreSQL.
<VulnDiscussion>Without the ability to centrally manage the content captured in the audit records, identification, troubleshooting, and corre...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 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 -
SRG-APP-000503-DB-000350
<GroupDescription></GroupDescription>Group -
PostgreSQL must generate audit records when successful logons or connections occur.
<VulnDiscussion>For completeness of forensic analysis, it is necessary to track who/what (a user or other principal) logs on to PostgreSQL.&l...Rule Medium Severity -
SRG-APP-000501-DB-000336
<GroupDescription></GroupDescription>Group -
PostgreSQL must generate audit records when security objects are deleted.
<VulnDiscussion>The removal of security objects from the database/PostgreSQL would seriously degrade a system's information assurance posture...Rule Medium Severity -
SRG-APP-000091-DB-000325
<GroupDescription></GroupDescription>Group -
PostgreSQL must generate audit records when unsuccessful attempts to retrieve privileges/permissions occur.
<VulnDiscussion>Under some circumstances, it may be useful to monitor who/what is reading privilege/permission/role information. Therefore, i...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.