PostgreSQL -- PL/Perl environment variable changes execute arbitrary code
· CVE-2024-10979 · VuXML entry
PostgreSQL project reports: 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.
Affected versions
- postgresql17-plperl < 17.1
- postgresql16-plperl < 16.5
- postgresql15-plperl < 15.9
- postgresql14-plperl < 14.14
- postgresql13-plperl < 13.17
- postgresql12-plperl < 12.21
By system
0 still vulnerable, 8 fixed. Where VuXML applies (FreeBSD, DragonFly, FreeBSD's derivatives) a port is vulnerable while its version is in a range; pkgsrc says itself whether it lists a CVE of this advisory; OpenBSD and MidnightBSD keep no list this site reads, so their row is only an estimate: FreeBSD's ranges applied to upstream's version.
| System | Port | Version | State | Fixed |
|---|---|---|---|---|
| FreeBSD | databases/postgresql17-plperl | 17.11 | fixed | |
| NetBSD | databases/postgresql17-plperl | 17.11 | not listed | |
| MidnightBSD | databases/postgresql17-plperl | in range, by version | ||
| FreeBSD | databases/postgresql16-plperl | 16.15 | fixed | |
| NetBSD | databases/postgresql16-plperl | 16.15 | not listed | |
| MidnightBSD | databases/postgresql16-plperl | in range, by version | ||
| DragonFly | databases/postgresql16-plperl | 16.9 | fixed | |
| FreeBSD | databases/postgresql15-plperl | 15.19 | fixed | |
| NetBSD | databases/postgresql15-plperl | 15.19 | not listed | |
| MidnightBSD | databases/postgresql15-plperl | in range, by version | ||
| DragonFly | databases/postgresql15-plperl | 15.13 | fixed | |
| FreeBSD | databases/postgresql14-plperl | 14.24 | fixed | |
| NetBSD | databases/postgresql14-plperl | 14.24 | not listed | |
| MidnightBSD | databases/postgresql14-plperl | in range, by version | ||
| DragonFly | databases/postgresql14-plperl | 14.18 | fixed | |
| DragonFly | databases/postgresql13-plperl | 13.21 | fixed |