
Cloud Vulnerability DB
A community-led vulnerabilities database
CVE-2026-6471 is a missing authorization vulnerability in PostgreSQL's logical decoding subsystem that allows a non-superuser holding the REPLICATION privilege to load arbitrary shared libraries (via dlopen) by specifying a malicious logical decoding plugin, resulting in arbitrary code execution as the OS account running the PostgreSQL server. Affected versions span PostgreSQL 14.x before 14.24, 15.x before 15.19, 16.x before 16.15, 17.x before 17.11, and 18.x before 18.5. The vulnerability was published on August 13, 2026, with patches released the same day. It carries a CVSS v3.1 base score of 7.2 (High) (PostgreSQL Advisory).
The root cause is CWE-862 (Missing Authorization): PostgreSQL's logical decoding framework does not sufficiently restrict which shared library files a user with REPLICATION privilege can load as a decoding plugin, even when that user is not a superuser. An attacker exploits this by initiating a replication connection and specifying a path to a malicious .so (or equivalent) file visible to the OS account running the server; PostgreSQL calls dlopen() on that file, executing its initialization code with the server process's privileges. The attack vector is network-accessible (the attacker connects via the PostgreSQL replication protocol), requires no user interaction, but does require the REPLICATION privilege to be granted to the attacker's account (PostgreSQL Advisory).
Successful exploitation grants the attacker arbitrary code execution as the operating system account running the PostgreSQL server (typically postgres), resulting in full compromise of confidentiality, integrity, and availability of the database server and any data it holds. An attacker could exfiltrate all database contents, modify or destroy data, install persistent backdoors, or pivot to other systems accessible from the database host. The scope is limited to the server's OS account, but that account typically has broad access to database files and potentially other local resources (PostgreSQL Advisory).
As of the time of disclosure, there is no public proof-of-concept exploit and no evidence of in-the-wild exploitation (PostgreSQL Advisory). The EPSS score is approximately 0.51%, reflecting a currently low but non-negligible probability of exploitation in the near term. The vulnerability is not listed in the CISA KEV catalog. Exploitation requires the attacker to already hold the REPLICATION privilege, which limits the attack surface to privileged database accounts, though misconfigurations granting this privilege broadly are not uncommon in practice.
SELECT version(); after connecting..so on Linux, .dll on Windows) containing an initialization function (e.g., _PG_output_plugin_init) that executes attacker-controlled code (e.g., a reverse shell or file write). Place this file in a location readable by the PostgreSQL server OS account.psql "replication=database" or pg_recvlogical) with the compromised REPLICATION-privileged account.CREATE_REPLICATION_SLOT or START_REPLICATION command specifying the path to the malicious shared library as the logical decoding plugin name.dlopen() on the specified file, loading and executing the malicious library's initialization code as the server OS account, granting the attacker their desired access (PostgreSQL Advisory).replication=database in the connection string) from unfamiliar client IPs; unusual pg_recvlogical or pg_basebackup connections from non-standard hosts.postgresql.log) showing CREATE_REPLICATION_SLOT or START_REPLICATION commands referencing non-standard or absolute file paths as plugin names; authentication events for accounts with REPLICATION privilege from unexpected sources..so or shared library files in directories accessible to the postgres OS account; new files written to the PostgreSQL data directory or temp directories by the server process.bash, sh, curl, wget, python) that are not part of normal database operations; unexpected outbound network connections from the postgres OS account.Upgrade PostgreSQL to the patched versions: 14.24, 15.19, 16.15, 17.11, or 18.5 (or later), depending on the major version in use (PostgreSQL Advisory, PostgreSQL Release). As an interim workaround, audit and revoke the REPLICATION privilege from any accounts that do not strictly require it (REVOKE REPLICATION FROM <role>;), limiting the attack surface to only trusted users. Additionally, consider restricting network access to the PostgreSQL replication port to known, trusted hosts using firewall rules or pg_hba.conf entries.
Debian issued a security advisory (DSA-6438-1) covering this vulnerability for its PostgreSQL 17 packages, and a Debian LTS announcement was also published (Debian Security). Ubuntu released security notice USN-8653-1 addressing the issue. Tenable published Nessus detection plugins (IDs 335238, 335950) for the vulnerability. HeroDevs noted the vulnerability in the context of PostgreSQL 14 approaching end-of-life in November 2026, highlighting the importance of upgrading (HeroDevs Blog).
Source: This report was generated using AI
Free Vulnerability Assessment
Evaluate your cloud security practices across 9 security domains to benchmark your risk level and identify gaps in your defenses.
Get a personalized demo
"Best User Experience I have ever seen, provides full visibility to cloud workloads."
"Wiz provides a single pane of glass to see what is going on in our cloud environments."
"We know that if Wiz identifies something as critical, it actually is."