PostgreSQL 18.6 Fixed 28 Security Issues—When Will Amazon RDS Support It?

On August 13, 2026, the PostgreSQL Global Development Group shipped an update to every supported branch—18.6, 17.11, 16.15, 15.19, and 14.24—alongside PostgreSQL 19 Beta 3. The headline number: 28 security vulnerabilities closed and over 110 bugs fixed. If you run PostgreSQL on Amazon RDS, the obvious follow-up question is: my fleet is still on 18.4—when do I actually get these fixes?

Here’s what shipped, why several of the CVEs are serious, and a realistic read on the Amazon RDS timeline.


What “28 security issues” actually means

Most of this batch isn’t theoretical. A large share are arbitrary-code-execution bugs rated CVSS 8.8, reachable by any authenticated user with a normal SQL connection (AV:N/AC:L/PR:L/UI:N … C:H/I:H/A:H). That combination—low privileges required, no user interaction, full confidentiality/integrity/ availability impact—is exactly the profile that turns a shared multi-tenant database into a lateral-movement risk.

A selection of the higher-impact fixes:

CVEComponentCVSSSummary
CVE-2026-14664core server8.8Regexp heap buffer overflow → arbitrary code execution
CVE-2026-14669core server8.8to_char heap buffer overflow → arbitrary code execution
CVE-2026-14670core server8.8plperl tied-object heap buffer overflow → arbitrary code execution
CVE-2026-14671contrib (refint)8.8Plan-cache type confusion → arbitrary code execution
CVE-2026-14676contrib (pg_stat_statements)8.8Heap buffer overflow → arbitrary code execution
CVE-2026-14680core server8.8Type confusion via internal arguments
CVE-2026-14662core server8.8tsvector/tsquery undersized allocations via integer wraparound
CVE-2026-15741core server8.8Expression deparse allows SQL injection via EXTRACT argument
CVE-2026-15742contrib (fuzzystrmatch)8.8Writes effectively-arbitrary addresses via integer wraparound
CVE-2026-16238core server8.8Type confusion in pg_restore_attribute_stats() → arbitrary code
CVE-2026-16239core server8.8Type confusion in cursor CLOSE + DECLARE → arbitrary code
CVE-2026-19385client (pg_dump)8.8pg_dump heap buffer overflow → arbitrary code execution
CVE-2026-18408client (psql)8.8psql \unrestrict lets a malicious dump origin run code in the client
CVE-2026-6464client (psql)8.1COPY FROM STDIN early failure processes data lines as psql commands
CVE-2026-6471core server7.2Logical decoding can dlopen an arbitrary file

The full 28 also include lower-severity information-disclosure and privilege-check issues (e.g. CVE-2026-14663 pgcrypto silently encrypting to/from cleartext for OpenSSL-disabled ciphers, CVE-2026-14672 a SCRAM user-existence oracle, CVE-2026-14666 row-security caching ignoring role changes, and CVE-2026-6470 a missing type USAGE privilege check).

Two takeaways for RDS operators:

  1. Client-side CVEs matter even if the server is patched. pg_dumppsql, and pg_createsubscriber bugs (CVE-2026-19385, CVE-2026-18408, CVE-2026-6464) are exploited through your tooling. Update your local postgresql-client packages and any bastion/CI images regardless of when RDS moves.
  2. SET / low-privilege reachability means “we trust our app user” is not a mitigation. Any account that can run SQL can reach several of these paths.

Scheduling note: the community originally planned 18.5, but it was pulled due to a regression and never shipped—18.6 is the release that carries these fixes. If you see a CVE table listing “18.5,” read it as “18.6” for the PostgreSQL 18 branch.


A few bug fixes that need post-upgrade action

Independent of the CVEs, three fixes in 18.6 can require manual remediation after you upgrade—worth planning for now so it isn’t a surprise on RDS:

  • Parallel GIN index builds could leave reltuples set to a bogus value (Infinity/NaN), which silently stops autovacuum/autoanalyze on the table. Run ANALYZE on affected tables after upgrading.
  • btree_gist on float4/float8 (NaN) and bit/bit varying columns may need a REINDEX.
  • ltree btree indexes with very many labels (>~14,653) may be corrupt and need reindexing.

There’s also a notable non-18 fix highlighted for its severity: a WAL-replay self-deadlock affecting standbys on PostgreSQL 14/15/16 following a primary on an older minor version.


Where Amazon RDS stands today

As of this writing, the newest Amazon RDS for PostgreSQL 18 minor version is 18.4. Community 18.5 (pulled) and 18.6 have not yet landed on RDS. PostgreSQL 19 Beta 3 exists only in the RDS Preview environment and is not for production.

See also: Mastering the Linux Command Line — Your Complete Free Training Guide

So the fixes above are, for now, ahead of what RDS offers on the 18 branch.

When will RDS ship 18.6?

Amazon doesn’t pre-announce exact per-minor-version dates, but the historical pattern is consistent enough to plan around:

  • RDS delivers community security fixes through its own minor-version updates. It typically trails an upstream PostgreSQL minor release by roughly a few weeks to about two months, because AWS rebuilds the engine, revalidates its large catalog of managed extensions (PostGIS, pgvectorpgauditpgactiveplv8, etc.), and stages a phased rollout across Regions.
  • Expect an “-R” revision. RDS frequently publishes a follow-up build (e.g. 18.6-R2) that bundles extension-level security fixes on top of the community engine. If any of your extensions carry their own advisories, the -R2 is the one to watch.
  • PostgreSQL 14 EOL is approaching. Community support for PostgreSQL 14 ends November 12, 2026. If you’re on RDS 14.x, fold “get onto a supported major version” into the same planning cycle.

Given the August 13, 2026 upstream release, a reasonable expectation is RDS availability of the 18.6-equivalent engine in roughly the September–October 2026 window—but treat that as an estimate, not a commitment. Confirm against the authoritative source below.


What to do while you wait

  1. Check your current engine version and whether auto minor upgrades are on:SHOW server_version;aws rds describe-db-instances \ --query "DBInstances[].[DBInstanceIdentifier,EngineVersion,AutoMinorVersionUpgrade]" \ --output table
  2. Confirm the target is available in your Region before scheduling:aws rds describe-db-engine-versions --engine postgres \ --query "DBEngineVersions[?starts_with(EngineVersion,'18.')].EngineVersion" \ --output table
  3. Enable AutoMinorVersionUpgrade (or plan a maintenance window) so the fix applies as soon as AWS publishes it. Minor upgrades don’t require a dump/reload, but they do cause a brief restart—use Multi-AZ to minimize impact.
  4. Patch your clients now. Update pg_dump/psql/libpq on laptops, bastions, and CI runners to close the client-side CVEs (CVE-2026-19385, CVE-2026-18408, CVE-2026-6464) independent of the RDS timeline.
  5. Reduce blast radius today. Audit which roles can run arbitrary SQL and which contrib modules (pg_stat_statementsfuzzystrmatchpgcryptorefintpg_trgm) are actually installed—several CVEs are only reachable if the module is present.
  6. Pre-stage the post-upgrade steps for GIN reltuplesbtree_gist, and ltree so remediation is scripted before the maintenance window.

Bottom line

PostgreSQL 18.6 is a meaningful security release—28 CVEs, many of them low-barrier remote-code-execution paths, plus 110+ bug fixes. Amazon RDS is currently at 18.4 and will pick up the 18.6-equivalent engine on its usual few-weeks-to-two-months cadence, most likely via a minor update (and possibly an -R2 revision). Turn on auto minor upgrades, patch your client tooling now, and watch the RDS release notes for the exact date.

Authoritative sources

Avatar photo
David Cao

David is a Cloud & DevOps Enthusiast. He has years of experience as a Linux engineer. He had working experience in AMD, EMC. He likes Linux, Python, bash, and more. He is a technical blogger and a Software Engineer. He enjoys sharing his learning and contributing to open-source.

Articles: 703

Leave a Reply

Your email address will not be published. Required fields are marked *