Critical Security Update for PostgreSQL: Addressing Multiple Vulnerabilities
Summary
ALSA-2024:10788: Important: postgresql:16 security update. Affects pg_repack across 2 version ranges.
< 1.5.1-1.module_el9.5.0+127+50ff03a9
< 1.5.1-1.module_el9.5.0+128+1095dce2
Fixed in 1.5.1-1.module_el9.5.0+127+50ff03a9 or 1.5.1-1.module_el9.5.0+128+1095dce2, depending on the release line you run. How to fix ↓
Check if this vulnerability affects your application
Upload a manifest or SBOM and we'll show whether you're affected, plus every other risky package in the same scan.
No signup required · Results in about 60 seconds
Background
PostgreSQL is an advanced object-relational database management system (DBMS) known for its robustness, extensibility, and compliance with SQL standards. It supports a wide variety of data types and offers features such as transactions, subselects, triggers, views, and stored procedures. However, recent vulnerabilities have been identified that could potentially compromise the security of applications relying on PostgreSQL.
Vulnerability Detail
The vulnerabilities in PostgreSQL include issues with the SET ROLE and SET SESSION AUTHORIZATION commands, which can reset to the wrong user ID (CVE-2024-10978). Additionally, changes to PL/Perl environment variables can lead to arbitrary code execution (CVE-2024-10979). Furthermore, row security mechanisms may disregard user ID changes in subqueries (CVE-2024-10976). These vulnerabilities can lead to unauthorized access and execution of malicious code, posing significant risks to data integrity and confidentiality.
How To Fix
Fixed versions by release line
The minimum fixed version depends on the release line you run.
sudo dnf update pg_repack
-
< 1.5.1-1.module_el9.5.0+127+50ff03a91.5.1-1.module_el9.5.0+127+50ff03a9 -
< 1.5.1-1.module_el9.5.0+128+1095dce21.5.1-1.module_el9.5.0+128+1095dce2
Tip — Not sure which release line you're on? Vulert can find the fix for the version you are using. Scan free →
Workaround
As a temporary measure, consider restricting access to the affected PostgreSQL features until the update can be applied. This may involve modifying user roles and permissions to limit exposure to the vulnerabilities.
Conclusion
The identified vulnerabilities in PostgreSQL pose significant risks to database security. It is crucial for users to update their installations to the latest patched versions to mitigate these risks. Additionally, utilizing tools like Vulert can help in monitoring and managing vulnerabilities effectively.
See every vulnerability recorded for pg_repack →
FAQ
The main vulnerabilities include incorrect user ID resets during role changes, arbitrary code execution via PL/Perl environment variables, and row security issues in subqueries.
You can use the Vulert platform to monitor and alert for open-source vulnerabilities in your software. Visit Vulert Scanner to check if your application is affected without requiring any installation.
If immediate updates are not possible, consider implementing access restrictions and monitoring for unusual activity as a temporary workaround.
While specific exploits may not be publicly disclosed, the nature of these vulnerabilities suggests that they could be leveraged for unauthorized access and code execution.
Detailed information about the vulnerabilities can be found on the respective CVE pages: CVE-2024-10976, CVE-2024-10978, and CVE-2024-10979.
Related vulnerabilities
Recent vulnerabilities recorded for pg_repack.