PostgreSQL PostgreSQL

Do you want an email whenever new security vulnerabilities are reported in any PostgreSQL product?

Products by PostgreSQL Sorted by Most Security Vulnerabilities since 2018

PostgreSQL25 vulnerabilities

Postgresql Jdbc Driver2 vulnerabilities

Postgresql Common1 vulnerability

@postgresql Tweets

Book your room for PGConf NYC soon, the discount rate will expire on November 9th! https://t.co/1vsLzdUGvZ
Thu Oct 21 16:22:15 +0000 2021

News: pgAdmin 4 v6.1 Released https://t.co/grvLMslJUv
Thu Oct 21 14:30:33 +0000 2021

News: pgexporter 0.2.0 https://t.co/SB8nzJlAyo
Thu Oct 21 14:30:03 +0000 2021

News: PostgreSQL JDBC 42.3.0 released https://t.co/oSGfz3Ysft
Wed Oct 20 12:00:03 +0000 2021

News: pgmetrics 1.12 released https://t.co/wRAcevCpr2
Tue Oct 19 12:45:02 +0000 2021

By the Year

In 2021 there have been 5 vulnerabilities in PostgreSQL with an average score of 6.1 out of ten. Last year PostgreSQL had 8 security vulnerabilities published. Right now, PostgreSQL is on track to have less security vulnerabilities in 2021 than it did last year. Last year, the average CVE base score was greater by 1.46

Year Vulnerabilities Average Score
2021 5 6.08
2020 8 7.54
2019 7 6.51
2018 8 8.11

It may take a day or so for new PostgreSQL vulnerabilities to show up in the stats or in the list of recent security vulnerabilties. Additionally vulnerabilities may be tagged under a different product or component name.

Recent PostgreSQL Security Vulnerabilities

A flaw was found in postgresql

CVE-2021-32028 6.5 - Medium - October 11, 2021

A flaw was found in postgresql. Using an INSERT ... ON CONFLICT ... DO UPDATE command on a purpose-crafted table, an authenticated database user could read arbitrary bytes of server memory. The highest threat from this vulnerability is to data confidentiality.

Information Disclosure

A flaw was found in postgresql

CVE-2021-32029 6.5 - Medium - October 08, 2021

A flaw was found in postgresql. Using an UPDATE ... RETURNING command on a purpose-crafted table, an authenticated database user could read arbitrary bytes of server memory. The highest threat from this vulnerability is to data confidentiality.

A flaw was found in postgresql in versions before 13.3, before 12.7, before 11.12, before 10.17 and before 9.6.22

CVE-2021-32027 8.8 - High - June 01, 2021

A flaw was found in postgresql in versions before 13.3, before 12.7, before 11.12, before 10.17 and before 9.6.22. While modifying certain SQL array values, missing bounds checks let authenticated database users write arbitrary bytes to a wide area of server memory. The highest threat from this vulnerability is to data confidentiality and integrity as well as system availability.

Buffer Overflow

An information leak was discovered in postgresql in versions before 13.2, before 12.6 and before 11.11

CVE-2021-3393 4.3 - Medium - April 01, 2021

An information leak was discovered in postgresql in versions before 13.2, before 12.6 and before 11.11. A user having UPDATE permission but not SELECT permission to a particular column could craft queries which, under some circumstances, might disclose values from that column in error messages. An attacker could use this flaw to obtain information stored in a column they are allowed to write but not read.

Generation of Error Message Containing Sensitive Information

A flaw was found in PostgreSQL in versions before 13.2

CVE-2021-20229 4.3 - Medium - February 23, 2021

A flaw was found in PostgreSQL in versions before 13.2. This flaw allows a user with SELECT privilege on one column to craft a special query that returns all columns of the table. The highest threat from this vulnerability is to confidentiality.

AuthZ

A flaw was found in the psql interactive terminal of PostgreSQL in versions before 13.1

CVE-2020-25696 7.5 - High - November 23, 2020

A flaw was found in the psql interactive terminal of PostgreSQL in versions before 13.1, before 12.5, before 11.10, before 10.15, before 9.6.20 and before 9.5.24. If an interactive psql session uses \gset when querying a compromised server, the attacker can execute arbitrary code as the operating system account running psql. The highest threat from this vulnerability is to data confidentiality and integrity as well as system availability.

Incorrect Comparison

A flaw was found in PostgreSQL versions before 13.1, before 12.5, before 11.10, before 10.15, before 9.6.20 and before 9.5.24

CVE-2020-25695 8.8 - High - November 16, 2020

A flaw was found in PostgreSQL versions before 13.1, before 12.5, before 11.10, before 10.15, before 9.6.20 and before 9.5.24. An attacker having permission to create non-temporary objects in at least one schema can execute arbitrary SQL functions under the identity of a superuser. The highest threat from this vulnerability is to data confidentiality and integrity as well as system availability.

SQL Injection

A flaw was found in PostgreSQL versions before 13.1, before 12.5, before 11.10, before 10.15, before 9.6.20 and before 9.5.24

CVE-2020-25694 8.1 - High - November 16, 2020

A flaw was found in PostgreSQL versions before 13.1, before 12.5, before 11.10, before 10.15, before 9.6.20 and before 9.5.24. If a client application that creates additional database connections only reuses the basic connection parameters while dropping security-relevant parameters, an opportunity for a man-in-the-middle attack, or the ability to observe clear-text transmissions, could exist. The highest threat from this vulnerability is to data confidentiality and integrity as well as system availability.

Use of a Broken or Risky Cryptographic Algorithm

The Windows installer for PostgreSQL 9.5 - 12 invokes system-provided executables that do not have fully-qualified paths

CVE-2020-10733 7.3 - High - September 16, 2020

The Windows installer for PostgreSQL 9.5 - 12 invokes system-provided executables that do not have fully-qualified paths. Executables in the directory where the installer loads or the current working directory take precedence over the intended executables. An attacker having permission to add files into one of those directories can use this to execute arbitrary code with the installer's administrative rights.

Untrusted Path

It was found that PostgreSQL versions before 12.4

CVE-2020-14349 7.1 - High - August 24, 2020

It was found that PostgreSQL versions before 12.4, before 11.9 and before 10.14 did not properly sanitize the search_path during logical replication. An authenticated attacker could use this flaw in an attack similar to CVE-2018-1058, in order to execute arbitrary SQL command in the context of the user used for replication.

SQL Injection

It was found that some PostgreSQL extensions did not use search_path safely in their installation script

CVE-2020-14350 7.3 - High - August 24, 2020

It was found that some PostgreSQL extensions did not use search_path safely in their installation script. An attacker with sufficient privileges could use this flaw to trick an administrator into executing a specially crafted script, during the installation or update of such extension. This affects PostgreSQL versions before 12.4, before 11.9, before 10.14, before 9.6.19, and before 9.5.23.

Untrusted Path

PostgreSQL JDBC Driver (aka PgJDBC) before 42.2.13

CVE-2020-13692 7.7 - High - June 04, 2020

PostgreSQL JDBC Driver (aka PgJDBC) before 42.2.13 allows XXE.

XXE

A flaw was found in PostgreSQL's "ALTER

CVE-2020-1720 6.5 - Medium - March 17, 2020

A flaw was found in PostgreSQL's "ALTER ... DEPENDS ON EXTENSION", where sub-commands did not perform authorization checks. An authenticated attacker could use this flaw in certain configurations to perform drop objects such as function, triggers, et al., leading to database corruption. This issue affects PostgreSQL versions before 12.2, before 11.7, before 10.12 and before 9.6.17.

AuthZ

The pg_ctlcluster script in postgresql-common in versions prior to 210 didn't drop privileges when creating socket/statistics temporary directories

CVE-2019-3466 7.8 - High - November 20, 2019

The pg_ctlcluster script in postgresql-common in versions prior to 210 didn't drop privileges when creating socket/statistics temporary directories, which could result in local privilege escalation.

Improper Privilege Management

A flaw was discovered in postgresql versions 9.4.x before 9.4.24, 9.5.x before 9.5.19, 9.6.x before 9.6.15, 10.x before 10.10 and 11.x before 11.5 where arbitrary SQL statements

CVE-2019-10208 8.8 - High - October 29, 2019

A flaw was discovered in postgresql versions 9.4.x before 9.4.24, 9.5.x before 9.5.19, 9.6.x before 9.6.15, 10.x before 10.10 and 11.x before 11.5 where arbitrary SQL statements can be executed given a suitable SECURITY DEFINER function. An attacker, with EXECUTE permission on the function, can execute arbitrary SQL as the owner of the function.

SQL Injection

Postgresql

CVE-2019-10209 2.2 - Low - October 29, 2019

Postgresql, versions 11.x before 11.5, is vulnerable to a memory disclosure in cross-type comparison for hashed subplan.

Information Disclosure

A vulnerability was found in postgresql versions 11.x prior to 11.3

CVE-2019-10129 6.5 - Medium - July 30, 2019

A vulnerability was found in postgresql versions 11.x prior to 11.3. Using a purpose-crafted insert to a partitioned table, an attacker can read arbitrary bytes of server memory. In the default configuration, any user can create a partitioned table suitable for this attack. (Exploit prerequisites are the same as for CVE-2018-1052).

Information Disclosure

A vulnerability was found in PostgreSQL versions 11.x up to excluding 11.3

CVE-2019-10130 4.3 - Medium - July 30, 2019

A vulnerability was found in PostgreSQL versions 11.x up to excluding 11.3, 10.x up to excluding 10.8, 9.6.x up to, excluding 9.6.13, 9.5.x up to, excluding 9.5.17. PostgreSQL maintains column statistics for tables. Certain statistics, such as histograms and lists of most common values, contain values taken from the column. PostgreSQL does not evaluate row security policies before consulting those statistics during query planning; an attacker can exploit this to read the most common values of certain columns. Affected columns are those for which the attacker has SELECT privilege and for which, in an ordinary query, row-level security prunes the set of rows visible to the attacker.

Authorization

PostgreSQL versions 10.x before 10.9 and versions 11.x before 11.4 are vulnerable to a stack-based buffer overflow

CVE-2019-10164 8.8 - High - June 26, 2019

PostgreSQL versions 10.x before 10.9 and versions 11.x before 11.4 are vulnerable to a stack-based buffer overflow. Any authenticated user can overflow a stack-based buffer by changing the user's own password to a purpose-crafted value. This often suffices to execute arbitrary code as the PostgreSQL operating system account.

Buffer Overflow

** DISPUTED ** In PostgreSQL 9.3 through 11.2, the "COPY TO/FROM PROGRAM" function

CVE-2019-9193 7.2 - High - April 01, 2019

** DISPUTED ** In PostgreSQL 9.3 through 11.2, the "COPY TO/FROM PROGRAM" function allows superusers and users in the 'pg_execute_server_program' group to execute arbitrary code in the context of the database's operating system user. This functionality is enabled by default and can be abused to run arbitrary operating system commands on Windows, Linux, and macOS. NOTE: Third parties claim/state this is not an issue because PostgreSQL functionality for COPY TO/FROM PROGRAM is acting as intended. References state that in PostgreSQL, a superuser can execute commands as the server user without using the COPY FROM PROGRAM.

Shell injection

Built by Foundeo Inc., with data from the National Vulnerability Database (NVD), Icons by Icons8. Privacy Policy. Use of this site is governed by the Legal Terms
Disclaimer
CONTENT ON THIS WEBSITE IS PROVIDED ON AN "AS IS" BASIS AND DOES NOT IMPLY ANY KIND OF GUARANTEE OR WARRANTY, INCLUDING THE WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR USE. YOUR USE OF THE INFORMATION ON THE DOCUMENT OR MATERIALS LINKED FROM THE DOCUMENT IS AT YOUR OWN RISK. Always check with your vendor for the most up to date, and accurate information.