STIGhubSTIGhub
STIGsSearchCompareAbout

STIGhub

A free tool to search and browse the entire DISA STIG library. Saves up to 75% in security compliance research time.

Navigation

  • Browse STIGs
  • Search
  • Compare Versions

Resources

  • About
  • VPAT
  • DISA STIG Library
Powered by Pylon
© 2026 Beacon Cloud Solutions, Inc. All rights reserved.
← Back to STIGs

PostgreSQL 9.x Security Technical Implementation Guide

Version

V2R5

Benchmark ID

PostgreSQL_9-x_STIG

Total Checks

110

Tags

database
CAT I: 14CAT II: 96CAT III: 0

This Security Technical Implementation Guide is published as a tool to improve the security of Department of Defense (DOD) information systems. The requirements are derived from the National Institute of Standards and Technology (NIST) 800-53 and related documents. Comments or proposed revisions to this document should be sent via email to the following address: disa.stig_spt@mail.mil.

Export CKLExport CSVExport JSON

Checks (110)

V-214048MEDIUMPostgreSQL 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.V-214049MEDIUMPostgreSQL must produce audit records containing sufficient information to establish the outcome (success or failure) of the events.V-214050HIGHSecurity-relevant software updates to PostgreSQL must be installed within the time period directed by an authoritative source (e.g., IAVM, CTOs, DTMs, and STIGs).V-214051MEDIUMThe audit information produced by PostgreSQL must be protected from unauthorized modification.V-214052HIGHPostgreSQL must integrate with an organization-level authentication/access mechanism providing account management and automation for all users, groups, roles, and any other principals.V-214053MEDIUMPostgreSQL must provide non-privileged users with error messages that provide information necessary for corrective actions without revealing information that could be exploited by adversaries.V-214054MEDIUMPrivileges to change PostgreSQL software modules must be limited.V-214055MEDIUMPostgreSQL must limit privileges to change functions and triggers, and links to software external to PostgreSQL.V-214056HIGHIf passwords are used for authentication, PostgreSQL must transmit only encrypted representations of passwords.V-214057HIGHPostgreSQL must enforce approved authorizations for logical access to information and system resources in accordance with applicable access control policies.V-214058MEDIUMPostgreSQL must associate organization-defined types of security labels having organization-defined security label values with information in transmission.V-214059MEDIUMPostgreSQL must limit the number of concurrent sessions to an organization-defined number per user for all accounts and/or account types.V-214060MEDIUMThe role(s)/group(s) used to modify database structure (including but not necessarily limited to tables, indexes, storage, etc.) and logic modules (functions, trigger procedures, links to software external to PostgreSQL, etc.) must be restricted to authorized users.V-214061MEDIUMPostgreSQL must uniquely identify and authenticate non-organizational users (or processes acting on behalf of non-organizational users).V-214062MEDIUMPostgreSQL must associate organization-defined types of security labels having organization-defined security label values with information in storage.V-214063MEDIUMPostgreSQL must check the validity of all data inputs except those specifically identified by the organization.V-214064MEDIUMPostgreSQL and associated applications must reserve the use of dynamic code execution for situations that require it.V-214065MEDIUMPostgreSQL and associated applications, when making use of dynamic code execution, must scan input data for invalid values that may indicate a code injection attack.V-214066MEDIUMPostgreSQL must allocate audit record storage capacity in accordance with organization-defined audit record storage requirements.V-214067MEDIUMPostgreSQL must enforce discretionary access control policies, as defined by the data owner, over defined subjects and objects.V-214068MEDIUMThe audit information produced by PostgreSQL must be protected from unauthorized deletion.V-214069MEDIUMPostgreSQL must record time stamps, in audit records and application data, that can be mapped to Coordinated Universal Time (UTC, formerly GMT).V-214070MEDIUMPostgreSQL must reveal detailed error messages only to the ISSO, ISSM, SA and DBA.V-214071MEDIUMPostgreSQL must allow only the ISSM (or individuals or roles appointed by the ISSM) to select which auditable events are to be audited.V-214072MEDIUMPostgreSQL must provide an immediate real-time alert to appropriate support staff of all audit log failures.V-214073MEDIUMPostgreSQL must maintain the confidentiality and integrity of information during reception.V-214074MEDIUMDatabase 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.V-214075HIGHThe PostgreSQL software installation account must be restricted to authorized users.V-214076MEDIUMDatabase software, including PostgreSQL configuration files, must be stored in dedicated directories separate from the host OS and other applications.V-214077MEDIUMPostgreSQL must include additional, more detailed, organization-defined information in the audit records for audit events identified by type, location, or subject.V-214078MEDIUMExecution of software modules (to include functions and trigger procedures) with elevated privileges must be restricted to necessary cases only.V-214079MEDIUMWhen invalid inputs are received, PostgreSQL must behave in a predictable and documented manner that reflects organizational and system objectives.V-214080MEDIUMPostgreSQL must utilize centralized management of the content captured in audit records generated by all components of PostgreSQL.V-214081MEDIUMPostgreSQL must isolate security functions from non-security functions.V-214082MEDIUMPostgreSQL must produce audit records of its enforcement of access restrictions associated with changes to the configuration of PostgreSQL or database(s).V-214083MEDIUMThe audit information produced by PostgreSQL must be protected from unauthorized read access.V-214084MEDIUMWhen updates are applied to PostgreSQL software, any software components that have been replaced or made unnecessary must be removed.V-214085MEDIUMPostgreSQL must generate audit records when categorized information (e.g., classification levels/security levels) is accessed.V-214086MEDIUMPostgreSQL must generate audit records when unsuccessful attempts to access security objects occur.V-214087MEDIUMPostgreSQL must generate audit records when unsuccessful logons or connection attempts occur.V-214088MEDIUMPostgreSQL must generate audit records showing starting and ending time for user access to the database(s).V-214089MEDIUMPostgreSQL must generate audit records when unsuccessful attempts to modify security objects occur.V-214090MEDIUMPostgreSQL must generate audit records when privileges/permissions are added.V-214091MEDIUMPostgreSQL must generate audit records when unsuccessful attempts to delete categorized information (e.g., classification levels/security levels) occur.V-214092MEDIUMPostgreSQL must generate audit records when successful logons or connections occur.V-214093MEDIUMPostgreSQL must generate audit records when security objects are deleted.V-214094MEDIUMPostgreSQL must generate audit records when unsuccessful attempts to retrieve privileges/permissions occur.V-214095MEDIUMPostgreSQL must generate audit records when unsuccessful attempts to delete privileges/permissions occur.V-214096MEDIUMPostgreSQL must be able to generate audit records when privileges/permissions are retrieved.V-214097MEDIUMPostgreSQL must generate audit records when unsuccessful attempts to modify categorized information (e.g., classification levels/security levels) occur.V-214098MEDIUMPostgreSQL must generate audit records when unsuccessful accesses to objects occur.V-214099MEDIUMPostgreSQL must generate audit records for all privileged activities or other system-level access.V-214100MEDIUMPostgreSQL must generate audit records when unsuccessful attempts to access categorized information (e.g., classification levels/security levels) occur.V-214101MEDIUMPostgreSQL must be able to generate audit records when security objects are accessed.V-214102MEDIUMPostgreSQL must generate audit records when privileges/permissions are deleted.V-214103MEDIUMPostgreSQL must generate audit records when concurrent logons/connections by the same user from different workstations occur.V-214104MEDIUMPostgreSQL must generate audit records when unsuccessful attempts to delete security objects occur.V-214105MEDIUMPostgreSQL must generate audit records when privileges/permissions are modified.V-214106MEDIUMPostgreSQL must generate audit records when unsuccessful attempts to execute privileged activities or other system-level access occur.V-214107MEDIUMPostgreSQL must generate audit records when security objects are modified.V-214108MEDIUMPostgreSQL must generate audit records when categorized information (e.g., classification levels/security levels) is modified.V-214109MEDIUMPostgreSQL must generate audit records when unsuccessful attempts to modify privileges/permissions occur.V-214110MEDIUMPostgreSQL must generate audit records when unsuccessful attempts to add privileges/permissions occur.V-214111MEDIUMPostgreSQL, when utilizing PKI-based authentication, must validate certificates by performing RFC 5280-compliant certification path validation.V-214112MEDIUMPostgreSQL must produce audit records containing sufficient information to establish where the events occurred.V-214113MEDIUMPostgreSQL must maintain the confidentiality and integrity of information during preparation for transmission.V-214114MEDIUMPostgreSQL must provide audit record generation capability for DoD-defined auditable events within all DBMS/database components.V-214115MEDIUMPostgreSQL must generate time stamps, for audit records and application data, with a minimum granularity of one second.V-214116MEDIUMPostgreSQL must produce audit records containing sufficient information to establish the identity of any user/subject or process associated with the event.V-214117HIGHPostgreSQL must implement NIST FIPS 140-2 or 140-3 validated cryptographic modules to generate and validate cryptographic hashes.V-214119HIGHPostgreSQL must implement NIST FIPS 140-2 or 140-3 validated cryptographic modules to protect unclassified information requiring confidentiality and cryptographic protection, in accordance with the data owners requirements.V-214120HIGHPostgreSQL must protect the confidentiality and integrity of all information at rest.V-214121MEDIUMPostgreSQL must prohibit user installation of logic modules (functions, trigger procedures, views, etc.) without explicit privileged status.V-214122MEDIUMPostgreSQL must separate user functionality (including user interface services) from database management functionality.V-214123MEDIUMPostgreSQL must initiate session auditing upon startup.V-214124MEDIUMPostgreSQL must implement cryptographic mechanisms to prevent unauthorized modification of organization-defined information at rest (to include, at a minimum, PII and classified information) on organization-defined information system components.V-214125MEDIUMPostgreSQL must produce audit records containing sufficient information to establish the sources (origins) of the events.V-214126MEDIUMUnused database components, PostgreSQL software, and database objects must be removed.V-214127MEDIUMAccess to external executables must be disabled or restricted.V-214128MEDIUMUnused database components which are integrated in PostgreSQL and cannot be uninstalled must be disabled.V-214129MEDIUMPostgreSQL must associate organization-defined types of security labels having organization-defined security label values with information in process.V-214130HIGHIf passwords are used for authentication, PostgreSQL must store only hashed, salted representations of passwords.V-214131MEDIUMPostgreSQL must enforce access restrictions associated with changes to the configuration of PostgreSQL or database(s).V-214132MEDIUMPostgreSQL must protect against a user falsely repudiating having performed organization-defined actions.V-214133MEDIUMThe system must provide a warning to appropriate support staff when allocated audit record storage volume reaches 75% of maximum audit record storage capacity.V-214135MEDIUMPostgreSQL must require users to reauthenticate when organization-defined circumstances or situations require reauthentication.V-214136HIGHPostgreSQL must enforce authorized access to all PKI private keys stored/utilized by PostgreSQL.V-214137MEDIUMPostgreSQL must only accept end entity certificates issued by DoD PKI or DoD-approved PKI Certification Authorities (CAs) for the establishment of all encrypted sessions.V-214138MEDIUMPostgreSQL must produce audit records containing sufficient information to establish what type of events occurred.V-214139MEDIUMPostgreSQL must implement cryptographic mechanisms preventing the unauthorized disclosure of organization-defined information at rest on organization-defined information system components.V-214140MEDIUMPostgreSQL must invalidate session identifiers upon user logout or other session termination.V-214141MEDIUMPostgreSQL must protect its audit features from unauthorized access.V-214142MEDIUMPostgreSQL must produce audit records containing time stamps to establish when the events occurred.V-214143MEDIUMPostgreSQL must protect its audit features from unauthorized removal.V-214144MEDIUMPostgreSQL must off-load audit data to a separate log management facility; this must be continuous and in near real time for systems with a network connection to the storage facility and weekly or more often for stand-alone systems.V-214145MEDIUMPostgreSQL must maintain the authenticity of communications sessions by guarding against man-in-the-middle attacks that guess at Session ID values.V-214146MEDIUMPostgreSQL must uniquely identify and authenticate organizational users (or processes acting on behalf of organizational users).V-214147MEDIUMPostgreSQL must automatically terminate a user session after organization-defined conditions or trigger events requiring session disconnect.V-214148HIGHPostgreSQL must prevent non-privileged users from executing privileged functions, to include disabling, circumventing, or altering implemented security safeguards/countermeasures.V-214149MEDIUMPostgreSQL must map the PKI-authenticated identity to an associated user account.V-214150MEDIUMDatabase contents must be protected from unauthorized and unintended information transfer by enforcement of a data-transfer policy.V-214151MEDIUMAccess to database files must be limited to relevant processes and to authorized, administrative users.V-214152MEDIUMPostgreSQL must protect its audit configuration from unauthorized modification.V-214153HIGHPostgreSQL must use NIST FIPS 140-2 or 140-3 validated cryptographic modules for cryptographic operations.V-214154MEDIUMAudit records must be generated when categorized information (e.g., classification levels/security levels) is deleted.V-214155MEDIUMPostgreSQL must generate audit records when successful accesses to objects occur.V-214156MEDIUMPostgreSQL must generate audit records for all direct access to the database(s).V-214157HIGHThe DBMS must be configured on a platform that has a NIST certified FIPS 140-2 or 140-3 installation of OpenSSL.V-220321MEDIUMPostgreSQL must use NSA-approved cryptography to protect classified information in accordance with the data owners requirements.V-265877HIGHPostgreSQL products must be a version supported by the vendor.