Security Information

If you wish to report a new security vulnerability in PostgreSQL, please send an email to security@postgresql.org. For reporting non-security bugs, please see the Report a Bug page.

The PostgreSQL Global Development Group (PGDG) takes security seriously, allowing our users to place their trust in the web sites and applications built around PostgreSQL. Our approach covers fail-safe configuration options, a secure and robust database server as well as good integration with other security infrastructure software.

PostgreSQL security updates are primarily made available as minor version upgrades. You are always advised to use the latest minor version available, as it will likely also contain other non-security related fixes. All known security issues are always fixed in the next major release, when it comes out.

PGDG believes that accuracy, completeness and availability of security information is essential for our users. We choose to pool all information on this one page, allowing easy searching for vulnerabilities by a range of criteria.

Vulnerabilities list which major releases they were present in, and which version they are fixed in for each. If the vulnerability was exploitable without a valid login, this is also stated. They also list a vulnerability class, but we urge all users to read the description to determine if the bug affects specific installations or not.

Known security issues in all supported versions

You can filter the view of patches to show just patches for version:
10 - 9.6 - 9.5 - 9.4 - 9.3 - all

Reference Affected Fixed Component & CVSS v3 Base Score Description
CVE-2014-0066
8.4, 9.0, 9.1, 9.2, 9.3 8.4.20, 9.0.16, 9.1.12, 9.2.7, 9.3.3 contrib module
0.0
AV:N/AC:H/PR:L/UI:N/S:U/C:N/I:N/A:N
Potential null pointer dereference crash when crypt(3) returns NULL.

more details
CVE-2014-0065
8.4, 9.0, 9.1, 9.2, 9.3 8.4.20, 9.0.16, 9.1.12, 9.2.7, 9.3.3 core server
0.0
AV:N/AC:H/PR:L/UI:N/S:U/C:N/I:N/A:N
Potential buffer overruns of fixed-size buffers.

more details
CVE-2014-0064
8.4, 9.0, 9.1, 9.2, 9.3 8.4.20, 9.0.16, 9.1.12, 9.2.7, 9.3.3 core server
6.5
AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:L/A:H
Potential buffer overruns due to integer overflow in size calculations.

more details
CVE-2014-0063
8.4, 9.0, 9.1, 9.2, 9.3 8.4.20, 9.0.16, 9.1.12, 9.2.7, 9.3.3 core server
4.3
AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:L/A:N
Potential buffer overruns in datetime input/output.

more details
CVE-2014-0062
8.4, 9.0, 9.1, 9.2, 9.3 8.4.20, 9.0.16, 9.1.12, 9.2.7, 9.3.3 core server
8.8
AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
Race condition in CREATE INDEX allows for privilege escalation.

more details
CVE-2014-0061
8.4, 9.0, 9.1, 9.2, 9.3 8.4.20, 9.0.16, 9.1.12, 9.2.7, 9.3.3 core server
7.5
AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H
Privilege escalation via calls to validator functions.

more details
CVE-2014-0060
8.4, 9.0, 9.1, 9.2, 9.3 8.4.20, 9.0.16, 9.1.12, 9.2.7, 9.3.3 core server
3.1
AV:N/AC:H/PR:L/UI:N/S:U/C:N/I:N/A:L
SET ROLE bypasses lack of ADMIN OPTION.

more details
CVE-2013-1900
8.4, 9.0, 9.1, 9.2 8.4.17, 9.0.13, 9.1.9, 9.2.4 contrib module
Legacy: C
Random numbers generated by contrib/pgcrypto functions may be easy for another database user to guess
CVE-2013-0255
8.3, 8.4, 9.0, 9.1, 9.2 8.3.23, 8.4.16, 9.0.12, 9.1.8, 9.2.3 core server
Legacy: D
executing enum_recv() with wrong parameters crashes server
CVE-2012-3489
8.3, 8.4, 9.0, 9.1 8.3.20, 8.4.13, 9.0.9, 9.1.5 core server
Legacy: C
xml_parse() DTD validation can be used to read arbitrary files
CVE-2012-3488
8.3, 8.4, 9.0, 9.1 8.3.20, 8.4.13, 9.0.9, 9.1.5 contrib module
Legacy: C
contrib/xml2's xslt_process() can be used to read and write arbitrary files
CVE-2012-2655
8.3, 8.4, 9.0, 9.1 8.3.19, 8.4.12, 9.0.8, 9.1.4 core server
Legacy: D
SECURITY DEFINER and SET attributes on procedural call handlers are not ignored and can be used to crash the server
CVE-2012-2143
8.3, 8.4, 9.0, 9.1 8.3.19, 8.4.12, 9.0.8, 9.1.4 contrib module
Legacy: C
Passwords containing the byte 0x80 passed to the crypt() function in pgcrypto are incorrectly truncated if DES encryption was used
CVE-2012-0868
8.3, 8.4, 9.0, 9.1 8.3.18, 8.4.11, 9.0.7, 9.1.3 core server
Legacy: C
Line breaks in object names can be exploited to execute arbitrary SQL when reloading a pg_dump file.
CVE-2012-0867
8.4, 9.0, 9.1 8.4.11, 9.0.7, 9.1.3 core server
Legacy: A
SSL certificate name checks are truncated to 32 characters, allowing connection spoofing under some circumstances when using third party certificate authorities.
CVE-2012-0866
8.3, 8.4, 9.0, 9.1 8.3.18, 8.4.11, 9.0.7, 9.1.3 core server
Legacy: C
Permissions on a function called by a trigger are not properly checked.
CVE-2010-4015
8.2, 8.3, 8.4, 9.0 8.2.20, 8.3.14, 8.4.7, 9.0.3 contrib module
Legacy: C
An authenticated database user can cause a buffer overrun by calling functions from the intarray optional module with certain parameters.
CVE-2010-3433
7.4, 8.0, 8.1, 8.2, 8.3, 8.4, 9.0 7.4.30, 8.0.26, 8.1.22, 8.2.18, 8.3.12, 8.4.5, 9.0.1 core server
Legacy: C
An authenticated database user can manipulate modules and tied variables in some external procedural languages to execute code with enhanced privileges.Details

more details
CVE-2010-1975
7.4, 8.0, 8.1, 8.2, 8.3, 8.4 7.4.29, 8.0.25, 8.1.21, 8.2.17, 8.3.11, 8.4.4 core server
Legacy: C
An unprivileged database user can remove superuser-only settings that were applied to his account with ALTER USER by a superuser, thus bypassing settings that should be enforced.
CVE-2010-1170
7.4, 8.0, 8.1, 8.2, 8.3, 8.4 7.4.29, 8.0.25, 8.1.21, 8.2.17, 8.3.11, 8.4.4 core server
Legacy: C
Insecure permissions on the pltcl_modules table could allow an authenticated user to run arbitrary Tcl code on the database server if PL/Tcl is installed and enabled.
CVE-2010-1169
7.4, 8.0, 8.1, 8.2, 8.3, 8.4 7.4.29, 8.0.25, 8.1.21, 8.2.17, 8.3.11, 8.4.4 core server
Legacy: C
A vulnerability in Safe.pm and PL/Perl can allow an authenticated user to run arbitrary Perl code on the database server if PL/Perl is installed and enabled.
CVE-2009-4136
7.4, 8.0, 8.1, 8.2, 8.3, 8.4 7.4.27, 8.0.23, 8.1.19, 8.2.15, 8.3.9, 8.4.2 core server
Legacy: C
Privilege escalation via changing session state in an index function. This closes a corner case related to vulnerabilities CVE-2009-3230 and CVE-2007-6600 (below).
CVE-2009-4034
7.4, 8.0, 8.1, 8.2, 8.3, 8.4 7.4.27, 8.0.23, 8.1.19, 8.2.15, 8.3.9, 8.4.2 core server
Legacy: A
NULL Bytes in SSL Certificates can be used to falsify client or server authentication. This only affects users who have SSL enabled, perform certificate name validation or client certificate authentication, and where the Certificate Authority (CA) has been tricked into issuing invalid certificates. The use of a CA that can be trusted to always issue valid certificates is recommended to ensure you are not vulnerable to this issue.
CVE-2009-3230
7.4, 8.0, 8.1, 8.2, 8.3, 8.4 7.4.26, 8.0.22, 8.1.18, 8.2.14, 8.3.8, 8.4.1 core server
Legacy: C
The fix for issue CVE-2007-6600 (below) failed to include protection against misuse of RESET SESSION AUTHORIZATION.
CVE-2009-3229
8.2, 8.3, 8.4 8.2.14, 8.3.8, 8.4.1 core server
Legacy: D
Authenticated non-superusers can shut down the backend server by re-LOAD-ing libraries in $libdir/plugins, if any libraries are present there.

Unsupported versions

You can also view archived security patches for unsupported versions. Note that no further security patches are made available for these versions as they are end of life.
9.2 - 9.1 - 9.0 - 8.4 - 8.3 - 8.2 - 8.1 - 8.0 - 7.4 - 7.3

Components

The following component references are used in the above table:

Component Description
core server This vulnerability exists in the core server product.
client This vulnerability exists in a client library or client application only.
contrib module This vulnerability exists in a contrib module. Contrib modules are not installed by default when PostgreSQL is installed from source. They may be installed by binary packages.
client contrib module This vulnerability exists in a contrib module used on the client only.
packaging This vulnerability exists in PostgreSQL binary packaging, e.g. an installer or RPM.