Lucene search
+L

Debian dsa-6438 : libecpg-compat3 - security update

🗓️ 13 Aug 2026 00:00:00Reported by TenableType 
nessus
 nessus
🔗 www.tenable.com👁 2 Views

PostgreSQL 17 libecpg-compat3 has multiple CVEs enabling arbitrary code execution, privilege escalation, and auth bypass.

Related
Refs
Code
#%NASL_MIN_LEVEL 80900
#
# (C) Tenable, Inc.
#
# The descriptive text and package checks in this plugin were
# extracted from Debian Security Advisory dsa-6438. The text
# itself is copyright (C) Software in the Public Interest, Inc.
#

include('compat.inc');

if (description)
{
  script_id(335238);
  script_version("1.1");
  script_set_attribute(attribute:"plugin_modification_date", value:"2026/08/13");

  script_cve_id(
    "CVE-2026-6464",
    "CVE-2026-6469",
    "CVE-2026-6470",
    "CVE-2026-6471",
    "CVE-2026-6473",
    "CVE-2026-14662",
    "CVE-2026-14663",
    "CVE-2026-14664",
    "CVE-2026-14666",
    "CVE-2026-14668",
    "CVE-2026-14669",
    "CVE-2026-14670",
    "CVE-2026-14671",
    "CVE-2026-14672",
    "CVE-2026-14673",
    "CVE-2026-14677",
    "CVE-2026-14678",
    "CVE-2026-14679",
    "CVE-2026-14680",
    "CVE-2026-14681",
    "CVE-2026-15741",
    "CVE-2026-15742",
    "CVE-2026-16239",
    "CVE-2026-16241",
    "CVE-2026-18024",
    "CVE-2026-18408",
    "CVE-2026-19385"
  );

  script_name(english:"Debian dsa-6438 : libecpg-compat3 - security update");

  script_set_attribute(attribute:"synopsis", value:
"The remote Debian host is missing one or more security-related updates.");
  script_set_attribute(attribute:"description", value:
"The remote Debian 13 host has packages installed that are affected by multiple vulnerabilities as referenced in the
dsa-6438 advisory.

    - -------------------------------------------------------------------------
    Debian Security Advisory DSA-6438-1                   [email protected]
    https://www.debian.org/security/                       Moritz Muehlenhoff
    August 13, 2026                       https://www.debian.org/security/faq
    - -------------------------------------------------------------------------

    Package        : postgresql-17
    CVE ID         : CVE-2026-6464 CVE-2026-6469 CVE-2026-6470 CVE-2026-6471
                     CVE-2026-6473 CVE-2026-14662 CVE-2026-14663 CVE-2026-14664
                     CVE-2026-14666 CVE-2026-14668 CVE-2026-14669 CVE-2026-14670
                     CVE-2026-14671 CVE-2026-14672 CVE-2026-14673 CVE-2026-14677
                     CVE-2026-14678 CVE-2026-14679 CVE-2026-14680 CVE-2026-14681
                     CVE-2026-15741 CVE-2026-15742 CVE-2026-16239 CVE-2026-16241
                     CVE-2026-18024 CVE-2026-18408 CVE-2026-19385

    Multiple security issues were discovered in PostgreSQL, which may
    result in execution of arbitrary code, incorrect authentication,
    information disclosure, or privilege escalation.

    The upstream fix to address CVE-2026-6471 requires additional changes
    to the configuration if some extensions are used. This affects the
    postgresql-17-wal2json, postgresql-17-squeeze, postgresql-17-pg-rewrite
    and postgresql-17-decoderbufs extensions included in Debian.
    Quoting from the changelog:

    | Restrict logical decoding output plugins to the set specified by
    | a new server parameter `output_plugin_libraries` (Jacob
    | Champion)
    | Previously, a replication user could select any loadable library
    |
    | Restrict logical decoding output plugins to the set specified by
    | a new server parameter `output_plugin_libraries` (Jacob
    | Champion)
    | Previously, a replication user could select any loadable library
    | for logical decoding, allowing exploits of various sorts. To
    | allow locking this down without breaking setups that worked
    | before, introduce a whitelist of allowed output plugins.
    |
    | By default, only the output plugins shipped as part of
    | PostgreSQL (`pgoutput` and `test_decoding`) are included in
    |`output_plugin_libraries`. Installations that rely on other
    | output plugins must add them after updating the server, for
    | example
    |
    | output_plugin_libraries = 'pgoutput, test_decoding, my_trusted_decoder'

    For the stable distribution (trixie), these problems have been fixed in
    version 17.11-0+deb13u1.

    We recommend that you upgrade your postgresql-17 packages.

    For the detailed security status of postgresql-17 please refer to
    its security tracker page at:
    https://security-tracker.debian.org/tracker/postgresql-17

    Further information about Debian Security Advisories, how to apply
    these updates to your system and frequently asked questions can be
    found at: https://www.debian.org/security/

    Mailing list: [email protected]

Tenable has extracted the preceding description block directly from the Debian security advisory.

Note that Nessus has not tested for these issues but has instead relied only on the application's self-reported version
number.");
  # https://security-tracker.debian.org/tracker/source-package/postgresql-17
  script_set_attribute(attribute:"see_also", value:"http://www.nessus.org/u?348128da");
  script_set_attribute(attribute:"see_also", value:"https://security-tracker.debian.org/tracker/CVE-2026-14662");
  script_set_attribute(attribute:"see_also", value:"https://security-tracker.debian.org/tracker/CVE-2026-14663");
  script_set_attribute(attribute:"see_also", value:"https://security-tracker.debian.org/tracker/CVE-2026-14664");
  script_set_attribute(attribute:"see_also", value:"https://security-tracker.debian.org/tracker/CVE-2026-14666");
  script_set_attribute(attribute:"see_also", value:"https://security-tracker.debian.org/tracker/CVE-2026-14668");
  script_set_attribute(attribute:"see_also", value:"https://security-tracker.debian.org/tracker/CVE-2026-14669");
  script_set_attribute(attribute:"see_also", value:"https://security-tracker.debian.org/tracker/CVE-2026-14670");
  script_set_attribute(attribute:"see_also", value:"https://security-tracker.debian.org/tracker/CVE-2026-14671");
  script_set_attribute(attribute:"see_also", value:"https://security-tracker.debian.org/tracker/CVE-2026-14672");
  script_set_attribute(attribute:"see_also", value:"https://security-tracker.debian.org/tracker/CVE-2026-14673");
  script_set_attribute(attribute:"see_also", value:"https://security-tracker.debian.org/tracker/CVE-2026-14677");
  script_set_attribute(attribute:"see_also", value:"https://security-tracker.debian.org/tracker/CVE-2026-14678");
  script_set_attribute(attribute:"see_also", value:"https://security-tracker.debian.org/tracker/CVE-2026-14679");
  script_set_attribute(attribute:"see_also", value:"https://security-tracker.debian.org/tracker/CVE-2026-14680");
  script_set_attribute(attribute:"see_also", value:"https://security-tracker.debian.org/tracker/CVE-2026-14681");
  script_set_attribute(attribute:"see_also", value:"https://security-tracker.debian.org/tracker/CVE-2026-15741");
  script_set_attribute(attribute:"see_also", value:"https://security-tracker.debian.org/tracker/CVE-2026-15742");
  script_set_attribute(attribute:"see_also", value:"https://security-tracker.debian.org/tracker/CVE-2026-16239");
  script_set_attribute(attribute:"see_also", value:"https://security-tracker.debian.org/tracker/CVE-2026-16241");
  script_set_attribute(attribute:"see_also", value:"https://security-tracker.debian.org/tracker/CVE-2026-18024");
  script_set_attribute(attribute:"see_also", value:"https://security-tracker.debian.org/tracker/CVE-2026-18408");
  script_set_attribute(attribute:"see_also", value:"https://security-tracker.debian.org/tracker/CVE-2026-19385");
  script_set_attribute(attribute:"see_also", value:"https://security-tracker.debian.org/tracker/CVE-2026-6464");
  script_set_attribute(attribute:"see_also", value:"https://security-tracker.debian.org/tracker/CVE-2026-6469");
  script_set_attribute(attribute:"see_also", value:"https://security-tracker.debian.org/tracker/CVE-2026-6470");
  script_set_attribute(attribute:"see_also", value:"https://security-tracker.debian.org/tracker/CVE-2026-6471");
  script_set_attribute(attribute:"see_also", value:"https://security-tracker.debian.org/tracker/CVE-2026-6473");
  script_set_attribute(attribute:"see_also", value:"https://packages.debian.org/source/trixie/postgresql-17");
  script_set_attribute(attribute:"solution", value:
"Upgrade the libecpg-compat3 packages.");
  script_set_cvss_base_vector("CVSS2#AV:N/AC:L/Au:N/C:C/I:C/A:C");
  script_set_cvss_temporal_vector("CVSS2#E:U/RL:OF/RC:C");
  script_set_cvss3_base_vector("CVSS:3.0/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H");
  script_set_cvss3_temporal_vector("CVSS:3.0/E:U/RL:O/RC:C");
  script_set_attribute(attribute:"cvss_score_source", value:"CVE-2026-18408");
  script_set_attribute(attribute:"cvss3_score_source", value:"CVE-2026-6473");

  script_set_attribute(attribute:"exploitability_ease", value:"No known exploits are available");
  script_set_attribute(attribute:"exploit_available", value:"false");

  script_set_attribute(attribute:"vuln_publication_date", value:"2026/05/14");
  script_set_attribute(attribute:"patch_publication_date", value:"2026/08/13");
  script_set_attribute(attribute:"plugin_publication_date", value:"2026/08/13");

  script_set_attribute(attribute:"plugin_type", value:"local");
  script_set_attribute(attribute:"cpe", value:"p-cpe:/a:debian:debian_linux:libecpg-compat3");
  script_set_attribute(attribute:"cpe", value:"p-cpe:/a:debian:debian_linux:libecpg-dev");
  script_set_attribute(attribute:"cpe", value:"p-cpe:/a:debian:debian_linux:libecpg6");
  script_set_attribute(attribute:"cpe", value:"p-cpe:/a:debian:debian_linux:libpgtypes3");
  script_set_attribute(attribute:"cpe", value:"p-cpe:/a:debian:debian_linux:libpq-dev");
  script_set_attribute(attribute:"cpe", value:"p-cpe:/a:debian:debian_linux:libpq5");
  script_set_attribute(attribute:"cpe", value:"p-cpe:/a:debian:debian_linux:postgresql-17");
  script_set_attribute(attribute:"cpe", value:"p-cpe:/a:debian:debian_linux:postgresql-client-17");
  script_set_attribute(attribute:"cpe", value:"p-cpe:/a:debian:debian_linux:postgresql-doc-17");
  script_set_attribute(attribute:"cpe", value:"p-cpe:/a:debian:debian_linux:postgresql-plperl-17");
  script_set_attribute(attribute:"cpe", value:"p-cpe:/a:debian:debian_linux:postgresql-plpython3-17");
  script_set_attribute(attribute:"cpe", value:"p-cpe:/a:debian:debian_linux:postgresql-pltcl-17");
  script_set_attribute(attribute:"cpe", value:"p-cpe:/a:debian:debian_linux:postgresql-server-dev-17");
  script_set_attribute(attribute:"cpe", value:"cpe:/o:debian:debian_linux:13.0");
  script_set_attribute(attribute:"generated_plugin", value:"current");
  script_end_attributes();

  script_category(ACT_GATHER_INFO);
  script_family(english:"Debian Local Security Checks");

  script_copyright(english:"This script is Copyright (C) 2026 and is owned by Tenable, Inc. or an Affiliate thereof.");

  script_dependencies("ssh_get_info.nasl");
  script_require_keys("Host/local_checks_enabled", "Host/Debian/release", "Host/Debian/dpkg-l");

  exit(0);
}

include('debian_package.inc');

if (!get_kb_item("Host/local_checks_enabled")) audit(AUDIT_LOCAL_CHECKS_NOT_ENABLED);
if (!get_kb_item("Host/Debian/dpkg-l")) audit(AUDIT_PACKAGE_LIST_MISSING);

var debian_release = get_kb_item('Host/Debian/release');
if ( isnull(debian_release) ) audit(AUDIT_OS_NOT, 'Debian');
debian_release = chomp(debian_release);
if (! preg(pattern:"^(13)\.[0-9]+", string:debian_release)) audit(AUDIT_OS_NOT, 'Debian 13.0', 'Debian ' + debian_release);
var cpu = get_kb_item('Host/cpu');
if (isnull(cpu)) audit(AUDIT_UNKNOWN_ARCH);
if ('x86_64' >!< cpu && cpu !~ "^i[3-6]86$" && 'aarch64' >!< cpu) audit(AUDIT_LOCAL_CHECKS_NOT_IMPLEMENTED, 'Debian', cpu);

var pkgs = [
    {'release': '13.0', 'prefix': 'libecpg-compat3', 'reference': '17.11-0+deb13u1'},
    {'release': '13.0', 'prefix': 'libecpg-dev', 'reference': '17.11-0+deb13u1'},
    {'release': '13.0', 'prefix': 'libecpg6', 'reference': '17.11-0+deb13u1'},
    {'release': '13.0', 'prefix': 'libpgtypes3', 'reference': '17.11-0+deb13u1'},
    {'release': '13.0', 'prefix': 'libpq-dev', 'reference': '17.11-0+deb13u1'},
    {'release': '13.0', 'prefix': 'libpq5', 'reference': '17.11-0+deb13u1'},
    {'release': '13.0', 'prefix': 'postgresql-17', 'reference': '17.11-0+deb13u1'},
    {'release': '13.0', 'prefix': 'postgresql-client-17', 'reference': '17.11-0+deb13u1'},
    {'release': '13.0', 'prefix': 'postgresql-doc-17', 'reference': '17.11-0+deb13u1'},
    {'release': '13.0', 'prefix': 'postgresql-plperl-17', 'reference': '17.11-0+deb13u1'},
    {'release': '13.0', 'prefix': 'postgresql-plpython3-17', 'reference': '17.11-0+deb13u1'},
    {'release': '13.0', 'prefix': 'postgresql-pltcl-17', 'reference': '17.11-0+deb13u1'},
    {'release': '13.0', 'prefix': 'postgresql-server-dev-17', 'reference': '17.11-0+deb13u1'}
];

var flag = 0;
foreach package_array ( pkgs ) {
  var _release = NULL;
  var prefix = NULL;
  var reference = NULL;
  if (!empty_or_null(package_array['release'])) _release = package_array['release'];
  if (!empty_or_null(package_array['prefix'])) prefix = package_array['prefix'];
  if (!empty_or_null(package_array['reference'])) reference = package_array['reference'];
  if (_release && prefix && reference) {
    if (deb_check(release:_release, prefix:prefix, reference:reference)) flag++;
  }
}

if (flag)
{
  security_report_v4(
    port       : 0,
    severity   : SECURITY_HOLE,
    extra      : deb_report_get()
  );
  exit(0);
}
else
{
  var tested = deb_pkg_tests_get();
  if (tested) audit(AUDIT_PACKAGE_NOT_AFFECTED, tested);
  else audit(AUDIT_PACKAGE_NOT_INSTALLED, 'libecpg-compat3 / libecpg-dev / libecpg6 / libpgtypes3 / libpq-dev / etc');
}

Data

Build on a solid foundation with Vulners data

We provide the essential building blocks for cybersecurity solutions with comprehensive, structured, and constantly updated vulnerability and exploits data

Api

Power your application with Vulners API

The Vulners REST API offers reliable, high-performance access to vulnerability intelligence, with 99.9% SLA uptime and CDN-backed data delivery for seamless global access

App

Assess and manage vulnerabilities with Vulners tools

Built on top of Vulners' database and SDK, end-user solutions give security professionals and developers lightweight and powerful tools for vulnerability remediation