Visit NES for PostgreSQL Home Page
NES for PostgreSQL 14 Release Notes
Release notes for NES for PostgreSQL 14. Each release lists the upstream PostgreSQL version, the bundled component versions, and the security fixes applied in that release.
30 Patched Vulnerabilities
VEX Statements
Release notes for NES for PostgreSQL 14. Each release lists the upstream PostgreSQL version, the bundled component versions, and the security fixes applied in that release.
14.24
- Based on upstream PostgreSQL
14.24. - Bundled OpenSSL
3.5.7with the OpenSSL3.1.2FIPS provider (CMVP cert #4985). - Available in standard and minimal builds across Linux, AIX, Solaris, and Windows.
- Security fixes in the PostgreSQL server:
- CVE-2026-6471 Logical decoding allowed a replication user to load any library as an output plugin, enabling exploits of various sorts; plugins are now restricted to the set named by the new
output_plugin_librariesserver parameter. - CVE-2026-16239
EXECUTEandFETCHrun through two portals whose declared row types could be made to disagree, corrupting the returned data; the output row type is now cross-checked between them. - CVE-2026-14669 A buffer overrun in
to_char()with a long time zone abbreviation could crash the server, with reported exploits reaching arbitrary code execution. - CVE-2026-14664 The regexp match and split functions could write past the end of their conversion buffer when passed invalidly-encoded data.
- CVE-2026-18024 The
ascii()function could be coaxed with invalidly-encoded input into reading and returning bytes it should not. - CVE-2026-16238
pg_restore_attribute_stats()treated multirange types like their underlying range type, which was wrong for every statistics kind except the bounds histogram. - CVE-2026-14668 The
scalarineqsel()selectivity estimator trusted that its constant was of typetid; a maliciously-constructed operator could violate that, leading to a crash or server memory disclosure. The type is now checked. - CVE-2026-14662 The documented length limits on
tsvectorandtsqueryvalues (individual lexemes and total size) were not enforced on every code path; they are now. - CVE-2026-14679 Several places assumed no more than
FUNC_MAX_ARGSfunction arguments; notably the parser failed to enforce the aggregate-function limit ofFUNC_MAX_ARGS - 1. - CVE-2026-14680 Calls from SQL to functions taking or returning type
internalare now rejected with explicit checks, the prior defenses having been shown insufficient. - CVE-2026-6469 Extended statistics objects rebuilt by
ALTER TABLEchanged ownership to the role running the command; ownership is now preserved. - CVE-2026-6470
CREATE TYPE AS RANGE,ALTER TABLE OF, and commands creating stored expressions did not checkUSAGEprivilege on the data types involved, letting roles without that privilege use them anyway. - CVE-2026-14666 Cached plans were not invalidated after role membership, role attribute, or database ownership changes, so row-level security could keep applying a stale policy decision.
- CVE-2026-14681 After a direct TLS connection was established, the server still accepted a
GSSEncRequest, producing a connection that used TLS but matchedpg_hba.confas a GSS connection; the request is now rejected. - CVE-2026-14672 The mock SCRAM secrets generated for nonexistent roles were distinguishable from real ones, weakening the defense against user enumeration; they are now more plausible.
- CVE-2026-15741
EXTRACT()field names were deparsed without quoting, so a stored call with a crafted field name could inject SQL into dump output; field names are now quoted when needed.
- CVE-2026-6471 Logical decoding allowed a replication user to load any library as an output plugin, enabling exploits of various sorts; plugins are now restricted to the set named by the new
- Security fixes in the client tools (
psql,pg_dump,ecpg):- CVE-2026-6464 When a scripted
COPY ... FROM STDINfailed at startup,psqlexecuted the in-line data that followed as SQL commands; that data is now skipped. - CVE-2026-18408
psqlapplied backquote expansion to the argument of\unrestrict, letting a malicious server inject shell commands into plain-text dump output that run at restore time — the exact scenario CVE-2025-8714 was meant to prevent. - CVE-2026-16241
ecpgassumed abyteavalue from the server begins with\x; a broken or malicious server sending a shorter string caused out-of-bounds writes in client applications. - CVE-2026-19385
pg_dumpassumedpg_proc.protrftypescannot exceedFUNC_MAX_ARGSentries, which a crafted catalog could violate.
- CVE-2026-6464 When a scripted
- Security fixes in the procedural languages:
- CVE-2026-14670 PL/Perl is hardened against tied Perl arrays and hashes, which could cause memory overwrite or a corrupt result array.
- CVE-2026-14677 Integer overflows in memory-allocation calculations in PL/Perl and PL/Tcl (the same class of problem as CVE-2026-6473, in a different part of the code).
- Security fixes in contrib modules:
- CVE-2026-14663
pgcrypto's PGP encryption did not notice when OpenSSL rejected the requested cipher (for example in FIPS mode), and silently produced output that was not encrypted with that cipher; unsupported ciphers are now detected and reported. - CVE-2026-14673
amcheckfunctions now restrictsearch_pathbefore executing index expressions, closing a path for a caller to run arbitrary code as the table owner. - CVE-2026-15742 Integer overflows in
fuzzystrmatch'slevenshtein()functions with large cost values produced nonsensical results and could cause out-of-bounds writes. - CVE-2026-14676
pg_stat_statementsquery normalization under-counted the space the normalized string requires, causing a buffer overrun. - CVE-2026-14678 A datatype error in
pg_trgm's GiST picksplit function read past the end of a buffer, typically causing bad split decisions and occasionally a crash. - CVE-2026-14671
refint's plan cache is removed:check_foreign_key()embedded the originally-seen key values in cached cascade-UPDATE queries, so reused plans updated the wrong rows.
- CVE-2026-14663
14.23
- Based on upstream PostgreSQL
14.23. - Bundled OpenSSL
3.5.7with the OpenSSL3.1.2FIPS provider (CMVP cert #4985). - Available in standard and minimal builds across Linux, AIX, Solaris, and Windows.