CVE Vulnerabilities

CVE-2024-10979

External Control of System or Configuration Setting

Published: Nov 14, 2024 | Modified: Nov 03, 2025
CVSS 3.x
8.8
HIGH
Source:
NVD
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
CVSS 2.x
RedHat/V2
RedHat/V3
8.8 IMPORTANT
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
Ubuntu
MEDIUM
root.io logo minimus.io logo echo.ai logo

Incorrect control of environment variables in PostgreSQL PL/Perl allows an unprivileged database user to change sensitive process environment variables (e.g. PATH). That often suffices to enable arbitrary code execution, even if the attacker lacks a database server operating system user. Versions before PostgreSQL 17.1, 16.5, 15.9, 14.14, 13.17, and 12.21 are affected.

Weakness

One or more system settings or configuration elements can be externally controlled by a user.

Affected Software

NameVendorStart VersionEnd Version
PostgresqlPostgresql12.0 (including)12.21 (excluding)
PostgresqlPostgresql13.0 (including)13.17 (excluding)
PostgresqlPostgresql14.0 (including)14.14 (excluding)
PostgresqlPostgresql15.0 (including)15.9 (excluding)
PostgresqlPostgresql16.0 (including)16.5 (excluding)
PostgresqlPostgresql17.0 (including)17.1 (excluding)
Red Hat Enterprise Linux 7 Extended Lifecycle SupportRedHatpostgresql-0:9.2.24-9.el7_9.2*
Red Hat Enterprise Linux 8RedHatpostgresql:12-8100020241122084405.489197e6*
Red Hat Enterprise Linux 8RedHatpostgresql:15-8100020241122084744.489197e6*
Red Hat Enterprise Linux 8RedHatpostgresql:16-8100020241122085009.489197e6*
Red Hat Enterprise Linux 8RedHatpostgresql:13-8100020241122084628.489197e6*
Red Hat Enterprise Linux 8.2 Advanced Update SupportRedHatpostgresql:12-8020020241126122642.4cda2c84*
Red Hat Enterprise Linux 8.4 Advanced Mission Critical Update SupportRedHatpostgresql:12-8040020241129070850.522a0ee4*
Red Hat Enterprise Linux 8.4 Advanced Mission Critical Update SupportRedHatpostgresql:13-8040020241127111253.522a0ee4*
Red Hat Enterprise Linux 8.4 Telecommunications Update ServiceRedHatpostgresql:12-8040020241129070850.522a0ee4*
Red Hat Enterprise Linux 8.4 Telecommunications Update ServiceRedHatpostgresql:13-8040020241127111253.522a0ee4*
Red Hat Enterprise Linux 8.4 Update Services for SAP SolutionsRedHatpostgresql:12-8040020241129070850.522a0ee4*
Red Hat Enterprise Linux 8.4 Update Services for SAP SolutionsRedHatpostgresql:13-8040020241127111253.522a0ee4*
Red Hat Enterprise Linux 8.6 Advanced Mission Critical Update SupportRedHatpostgresql:13-8060020241128071428.ad008a3a*
Red Hat Enterprise Linux 8.6 Advanced Mission Critical Update SupportRedHatpostgresql:12-8060020241128124027.ad008a3a*
Red Hat Enterprise Linux 8.6 Telecommunications Update ServiceRedHatpostgresql:13-8060020241128071428.ad008a3a*
Red Hat Enterprise Linux 8.6 Telecommunications Update ServiceRedHatpostgresql:12-8060020241128124027.ad008a3a*
Red Hat Enterprise Linux 8.6 Update Services for SAP SolutionsRedHatpostgresql:13-8060020241128071428.ad008a3a*
Red Hat Enterprise Linux 8.6 Update Services for SAP SolutionsRedHatpostgresql:12-8060020241128124027.ad008a3a*
Red Hat Enterprise Linux 8.8 Extended Update SupportRedHatpostgresql:12-8080020241128093923.63b34585*
Red Hat Enterprise Linux 8.8 Extended Update SupportRedHatpostgresql:13-8080020241201154729.63b34585*
Red Hat Enterprise Linux 8.8 Extended Update SupportRedHatpostgresql:15-8080020241201160004.63b34585*
Red Hat Enterprise Linux 9RedHatpostgresql:15-9050020241122141928.rhel9*
Red Hat Enterprise Linux 9RedHatpostgresql:16-9050020241122142517.rhel9*
Red Hat Enterprise Linux 9RedHatpostgresql-0:13.18-1.el9_5*
Red Hat Enterprise Linux 9.0 Update Services for SAP SolutionsRedHatpostgresql-0:13.18-1.el9_0*
Red Hat Enterprise Linux 9.2 Extended Update SupportRedHatpostgresql:15-9020020241122142614.rhel9*
Red Hat Enterprise Linux 9.2 Extended Update SupportRedHatpostgresql-0:13.18-1.el9_2*
Red Hat Enterprise Linux 9.4 Extended Update SupportRedHatpostgresql:16-9040020241125115314.rhel9*
Red Hat Enterprise Linux 9.4 Extended Update SupportRedHatpostgresql-0:13.18-1.el9_4*
Red Hat Enterprise Linux 9.4 Extended Update SupportRedHatpostgresql:15-9040020241121160342.rhel9*
Postgresql-10Ubuntuupstream*
Postgresql-12Ubuntuesm-infra/focal*
Postgresql-12Ubuntufocal*
Postgresql-12Ubuntuupstream*
Postgresql-14Ubuntujammy*
Postgresql-14Ubuntuupstream*
Postgresql-16Ubuntunoble*
Postgresql-16Ubuntuoracular*
Postgresql-16Ubuntuupstream*
Postgresql-17Ubuntuupstream*
Postgresql-9.3Ubuntutrusty/esm*
Postgresql-9.3Ubuntuupstream*
Postgresql-9.5Ubuntuesm-infra/xenial*
Postgresql-9.5Ubuntuupstream*

Potential Mitigations

  • Compartmentalize the system to have “safe” areas where trust boundaries can be unambiguously drawn. Do not allow sensitive data to go outside of the trust boundary and always be careful when interfacing with a compartment outside of the safe area.
  • Ensure that appropriate compartmentalization is built into the system design, and the compartmentalization allows for and reinforces privilege separation functionality. Architects and designers should rely on the principle of least privilege to decide the appropriate time to use privileges and the time to drop privileges.

References