<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:webfeeds="http://webfeeds.org/rss/1.0"><channel><title>PostgreSQL (9.4 - 18.2) - CraftedSignal Threat Feed</title><link>https://feed.craftedsignal.io/products/postgresql-9.4---18.2/</link><description>Trending threats, MITRE ATT&amp;CK coverage, and detection metadata. Fed continuously.</description><generator>Hugo</generator><language>en</language><managingEditor>hello@craftedsignal.io</managingEditor><webMaster>hello@craftedsignal.io</webMaster><lastBuildDate>Fri, 04 Sep 2026 13:06:40 +0000</lastBuildDate><atom:link href="https://feed.craftedsignal.io/products/postgresql-9.4---18.2/feed.xml" rel="self" type="application/rss+xml"/><image><url>https://feed.craftedsignal.io/favicon-32x32.png</url><title>CraftedSignal Threat Feed</title><link>https://feed.craftedsignal.io/</link><width>32</width><height>32</height></image><webfeeds:icon>https://feed.craftedsignal.io/favicon.svg</webfeeds:icon><item><title>CVE-2026-6471 PostGREShell PostgreSQL Replication Vulnerability</title><link>https://feed.craftedsignal.io/briefs/2026-09-postgreshell/</link><pubDate>Fri, 04 Sep 2026 13:06:40 +0000</pubDate><author>hello@craftedsignal.io</author><guid isPermaLink="true">https://feed.craftedsignal.io/briefs/2026-09-postgreshell/</guid><description>CVE-2026-6471, dubbed PostGREShell, allows attackers with Replication privileges to achieve remote code execution and escalate to superuser by abusing the logical decoding plugin loader.</description><content:encoded><![CDATA[<p>CVE-2026-6471, known as PostGREShell, is a critical vulnerability affecting PostgreSQL versions 9.4 through 18.2. The vulnerability resides in the database's logical decoding mechanism, which allows external tools to read database events via replication slots and output plugins. An attacker with 'Replication' privileges can provide an arbitrary, unvalidated filesystem path to the plugin loader. Because the PostgreSQL plugin loader fails to sanitize the plugin name before passing it to the dlopen() function, an attacker can force the database to execute arbitrary shared libraries. This code runs with the privileges of the postgres system user, bypassing intended directory restrictions for non-superuser accounts. Once executed, the malicious code can gain full superuser privileges, modify the pg_authid catalog table, and establish persistent backdoors, such as passwordless access or automatic re-injection of the malicious payload. Given that logical replication is a standard feature for backups and monitoring, the attack surface is significant across production environments.</p>
<h2 id="attack-chain">Attack Chain</h2>
<ol>
<li>The attacker gains access to a credential with 'Replication' privileges, commonly provided to backup or monitoring utilities.</li>
<li>The attacker connects to the target PostgreSQL instance using the replication protocol.</li>
<li>The attacker creates a logical replication slot and specifies a malicious path or library file as the output plugin name.</li>
<li>The PostgreSQL server processes the malicious plugin name, failing to validate the path, and passes it to the dlopen() C function.</li>
<li>The attacker-controlled library file is loaded into the server process address space and executed as the postgres system user.</li>
<li>The executed code invokes internal PostgreSQL functions to elevate the current session to 'bootstrap superuser' status.</li>
<li>The attacker modifies the pg_authid system catalog table to assign permanent superuser flags to their account.</li>
<li>The attacker deploys a persistent backdoor by registering the malicious plugin to be re-loaded on new sessions or by modifying authentication settings for passwordless access.</li>
</ol>
<h2 id="impact">Impact</h2>
<p>Successful exploitation allows for full database takeover, including the ability to read private data, modify all tables, read configuration files, and execute arbitrary operating system commands. This impacts any enterprise organization utilizing PostgreSQL for mission-critical databases where 'Replication' privileges are distributed to external tools. The attacker achieves persistence, potentially remaining undetected while exfiltrating data or using the database server as a pivot point in the internal network.</p>
<h2 id="recommendation">Recommendation</h2>
<ol>
<li>Upgrade all PostgreSQL instances to the patched versions immediately: 18.6, 17.11, 16.15, 15.19, or 14.24.</li>
<li>Audit all accounts currently holding the 'Replication' attribute and remove it from any account or utility that does not strictly require it for replication or backup operations.</li>
<li>Implement strict filesystem access controls for the user account running the PostgreSQL service to limit the files accessible to the dlopen() function.</li>
<li>Monitor database logs for unusual logical replication slot creation events, particularly those referencing non-standard or unexpected plugin file paths.</li>
</ol>
]]></content:encoded><category domain="severity">high</category><category domain="type">advisory</category><category>vulnerability</category><category>remote-code-execution</category><category>privilege-escalation</category><category>database</category></item></channel></rss>