Skip to content

Crunchy Data Postgres 16 Security Technical Implementation Guide

Rules, Groups, and Values defined within the XCCDF Benchmark

  • PostgreSQL must provide audit record generation capability for DOD-defined auditable events within all DBMS/database components.

    Without the capability to generate audit records, it would be difficult to establish, correlate, and investigate the events relating to an incident or identify those responsible for one. Audit rec...
    Rule Medium Severity
  • SRG-APP-000090-DB-000065

    Group
  • PostgreSQL must allow only the information system security manager (ISSM), or individuals or roles appointed by the ISSM, to select which events are to be audited.

    Without the capability to restrict which roles and individuals can select which events are audited, unauthorized personnel may be able to prevent or interfere with the auditing of critical events. ...
    Rule Medium Severity
  • SRG-APP-000091-DB-000066

    Group
  • PostgreSQL must be able to generate audit records when privileges/permissions are retrieved.

    Under some circumstances, it may be useful to monitor who/what is reading privilege/permission/role information. Therefore, it must be possible to configure auditing to do this. PostgreSQLs typical...
    Rule Medium Severity
  • SRG-APP-000091-DB-000325

    Group
  • PostgreSQL must generate audit records when unsuccessful attempts to retrieve privileges/permissions occur.

    Under some circumstances, it may be useful to monitor who/what is reading privilege/permission/role information. Therefore, it must be possible to configure auditing to do this. PostgreSQLs typical...
    Rule Medium Severity
  • SRG-APP-000092-DB-000208

    Group
  • SRG-APP-000096-DB-000040

    Group
  • PostgreSQL must produce audit records containing time stamps to establish when the events occurred.

    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 re...
    Rule Medium Severity
  • SRG-APP-000097-DB-000041

    Group
  • PostgreSQL must produce audit records containing sufficient information to establish where the events occurred.

    Information system auditing capability is critical for accurate forensic analysis. Without establishing where events occurred, it is impossible to establish, correlate, and investigate the events r...
    Rule Medium Severity
  • SRG-APP-000098-DB-000042

    Group
  • SRG-APP-000099-DB-000043

    Group
  • SRG-APP-000100-DB-000201

    Group
  • PostgreSQL must produce audit records containing sufficient information to establish the identity of any user/subject or process associated with the event.

    Information system auditing capability is critical for accurate forensic analysis. Without information that establishes the identity of the subjects (i.e., users or processes acting on behalf of us...
    Rule Medium Severity
  • SRG-APP-000101-DB-000044

    Group
  • PostgreSQL must include additional, more detailed, organization-defined information in the audit records for audit events identified by type, location, or subject.

    Information system auditing capability is critical for accurate forensic analysis. Reconstruction of harmful events or forensic analysis is not possible if audit records do not contain enough infor...
    Rule Medium Severity
  • SRG-APP-000109-DB-000049

    Group
  • SRG-APP-000109-DB-000321

    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.

    It is critical that when PostgreSQL is at risk of failing to process audit logs as required, it take action to mitigate the failure. Audit processing failures include software/hardware errors; fail...
    Rule Medium Severity
  • SRG-APP-000119-DB-000060

    Group
  • The audit information produced by PostgreSQL must be protected from unauthorized modification.

    If audit data were to become compromised, competent forensic analysis and discovery of the true source of potentially malicious system activity would be impossible to achieve. To ensure the verac...
    Rule Medium Severity
  • SRG-APP-000120-DB-000061

    Group
  • The audit information produced by PostgreSQL must be protected from unauthorized deletion.

    If audit data were to become compromised, then competent forensic analysis and discovery of the true source of potentially malicious system activity is impossible to achieve. To ensure the veracit...
    Rule Medium Severity
  • SRG-APP-000121-DB-000202

    Group
  • PostgreSQL must protect its audit features from unauthorized access.

    Protecting audit data also includes identifying and protecting the tools used to view and manipulate log data. Depending upon the log format and application, system and application log tools may ...
    Rule Medium Severity
  • SRG-APP-000123-DB-000204

    Group
  • PostgreSQL must protect its audit features from unauthorized removal.

    Protecting audit data also includes identifying and protecting the tools used to view and manipulate log data. Therefore, protecting audit tools is necessary to prevent unauthorized operation on au...
    Rule Medium Severity
  • SRG-APP-000133-DB-000179

    Group
  • PostgreSQL must limit privileges to change software modules, to include stored procedures, functions and triggers, and links to software external to PostgreSQL.

    If the system were to allow any user to make changes to software libraries, then those changes might be implemented without undergoing the appropriate testing and approvals that are part of a robus...
    Rule Medium Severity
  • SRG-APP-000133-DB-000198

    Group
  • SRG-APP-000133-DB-000199

    Group
  • If passwords are used for authentication, PostgreSQL must transmit only encrypted representations of passwords.

    The DOD standard for authentication is DOD-approved PKI certificates. Authentication based on User ID and Password may be used only when it is not possible to employ a PKI certificate, and require...
    Rule High Severity
  • SRG-APP-000175-DB-000067

    Group
  • SRG-APP-000133-DB-000200

    Group
  • Database objects (including but not limited to tables, indexes, storage, stored procedures, functions, triggers, links to software external to the DBMS, etc.) must be owned by database/PostgreSQL principals authorized for ownership.

    Within the database, object ownership implies full privileges to the owned object, including the privilege to assign access to the owned objects to other subjects. Database functions and procedures...
    Rule Medium Severity
  • SRG-APP-000133-DB-000362

    Group
  • The role(s)/group(s) used to modify database structure (including but not necessarily limited to tables, indexes, storage, etc.) and logic modules (stored procedures, functions, triggers, links to software external to PostgreSQL, etc.) must be restricted to authorized users.

    If PostgreSQL were to allow any user to make changes to database structure or logic, then those changes might be implemented without undergoing the appropriate testing and approvals that are part o...
    Rule Medium Severity
  • SRG-APP-000141-DB-000091

    Group
  • Unused database components, PostgreSQL software, and database objects must be removed.

    Information systems are capable of providing a wide variety of functions and services. Some of the functions and services, provided by default, may not be necessary to support essential organizatio...
    Rule Medium Severity
  • SRG-APP-000141-DB-000092

    Group
  • PostgreSQL must generate audit records when unsuccessful attempts to access categories of information (e.g., classification levels/security levels) occur.

    Changes in categories of information must be tracked. Without an audit trail, unauthorized access to protected data could go undetected. To aid in diagnosis, it is necessary to keep track of faile...
    Rule Medium Severity
  • SRG-APP-000141-DB-000093

    Group
  • Access to external executables must be disabled or restricted.

    Information systems are capable of providing a wide variety of functions and services. Some of the functions and services, provided by default, may not be necessary to support essential organizatio...
    Rule Medium Severity
  • SRG-APP-000142-DB-000094

    Group
  • PostgreSQL must be configured to prohibit or restrict the use of organization-defined functions, ports, protocols, and/or services, as defined in the PPSM CAL and vulnerability assessments.

    In order to prevent unauthorized connection of devices, unauthorized transfer of information, or unauthorized tunneling (i.e., embedding of data types within data types), organizations must disable...
    Rule Medium Severity
  • SRG-APP-000148-DB-000103

    Group
  • PostgreSQL must uniquely identify and authenticate organizational users (or processes acting on behalf of organizational users).

    To assure accountability and prevent unauthenticated access, organizational users must be identified and authenticated to prevent potential misuse and compromise of the system. Organizational user...
    Rule Medium Severity
  • SRG-APP-000171-DB-000074

    Group

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.

Capacity
Modules