vulnerability
FreeBSD: VID-9de4c1c1-b9ee-11e9-82aa-6cc21735f730 (CVE-2019-10208): PostgresSQL -- TYPE in pg_temp execute arbitrary SQL during `SECURITY DEFINER` execution
| Severity | CVSS | Published | Added | Modified |
|---|---|---|---|---|
| 7 | (AV:N/AC:L/Au:S/C:P/I:P/A:P) | Aug 8, 2019 | Aug 9, 2019 | Dec 10, 2025 |
Severity
7
CVSS
(AV:N/AC:L/Au:S/C:P/I:P/A:P)
Published
Aug 8, 2019
Added
Aug 9, 2019
Modified
Dec 10, 2025
Description
The PostgreSQL project reports: Versions Affected: 9.4 - 11 Given a suitable `SECURITY DEFINER` function, an attacker can execute arbitrary SQL under the identity of the function owner. An attack requires `EXECUTE` permission on the function, which must itself contain a function call having inexact argument type match. For example, `length('foo'::varchar)` and `length('foo')` are inexact, while `length('foo'::text)` is exact. As part of exploiting this vulnerability, the attacker uses `CREATE DOMAIN` to create a type in a `pg_temp` schema. The attack pattern and fix are similar to that for CVE-2007-2138. Writing `SECURITY DEFINER` functions continues to require following the considerations noted in the documentation: https://www.postgresql.org/docs/devel/sql-createfunction.html#SQL-CREATEFUNCTION-SECURITY Versions Affected: 11 In a database containing hypothetical, user-defined hash equality operators, an attacker could read arbitrary bytes of server memory. For an attack to become possible, a superuser would need to create unusual operators. It is possible for operators not purpose-crafted for attack to have the properties that enable an attack, but we are not aware of specific examples.
Solutions
freebsd-upgrade-package-postgresql11-serverfreebsd-upgrade-package-postgresql10-serverfreebsd-upgrade-package-postgresql96-serverfreebsd-upgrade-package-postgresql95-serverfreebsd-upgrade-package-postgresql94-server
NEW
Explore Exposure Command
Confidently identify and prioritize exposures from endpoint to cloud with full attack surface visibility and threat-aware risk context.