Tom Lane
3af35f8d40
Make standard maintenance operations (including VACUUM, ANALYZE, REINDEX,
...
and CLUSTER) execute as the table owner rather than the calling user, using
the same privilege-switching mechanism already used for SECURITY DEFINER
functions. The purpose of this change is to ensure that user-defined
functions used in index definitions cannot acquire the privileges of a
superuser account that is performing routine maintenance. While a function
used in an index is supposed to be IMMUTABLE and thus not able to do anything
very interesting, there are several easy ways around that restriction; and
even if we could plug them all, there would remain a risk of reading sensitive
information and broadcasting it through a covert channel such as CPU usage.
To prevent bypassing this security measure, execution of SET SESSION
AUTHORIZATION and SET ROLE is now forbidden within a SECURITY DEFINER context.
Thanks to Itagaki Takahiro for reporting this vulnerability.
Security: CVE-2007-6600
2008-01-03 21:23:45 +00:00
..
2006-09-16 00:30:20 +00:00
2006-09-18 19:54:01 +00:00
2006-09-16 00:30:20 +00:00
2006-09-16 00:30:20 +00:00
2006-09-16 00:30:20 +00:00
2007-05-11 20:18:21 +00:00
2006-09-16 00:30:20 +00:00
2006-09-16 00:30:20 +00:00
2006-09-16 00:30:20 +00:00
2006-09-16 00:30:20 +00:00
2006-09-16 00:30:20 +00:00
2006-09-16 00:30:20 +00:00
2007-05-15 19:43:59 +00:00
2006-09-16 00:30:20 +00:00
2006-09-16 00:30:20 +00:00
2006-10-23 18:10:32 +00:00
2006-09-16 00:30:20 +00:00
2006-09-16 00:30:20 +00:00
2006-09-16 00:30:20 +00:00
2007-05-15 19:43:59 +00:00
2006-09-16 00:30:20 +00:00
2007-05-15 19:43:59 +00:00
2006-09-16 00:30:20 +00:00
2006-09-16 00:30:20 +00:00
2007-05-13 16:04:40 +00:00
2007-03-26 17:23:45 +00:00
2006-10-23 18:10:32 +00:00
2006-09-16 00:30:20 +00:00
2006-09-16 00:30:20 +00:00
2007-04-18 02:29:39 +00:00
2006-09-16 00:30:20 +00:00
2006-09-16 00:30:20 +00:00
2006-10-17 12:53:03 +00:00
2006-09-16 00:30:20 +00:00
2006-09-16 00:30:20 +00:00
2006-09-16 00:30:20 +00:00
2007-04-23 16:52:56 +00:00
2007-05-15 19:43:59 +00:00
2006-09-16 00:30:20 +00:00
2006-09-16 00:30:20 +00:00
2006-10-16 17:28:03 +00:00
2006-09-16 00:30:20 +00:00
2006-09-16 00:30:20 +00:00
2006-09-16 00:30:20 +00:00
2006-09-16 00:30:20 +00:00
2006-09-16 00:30:20 +00:00
2006-09-18 19:54:01 +00:00
2006-09-16 00:30:20 +00:00
2006-10-31 01:52:31 +00:00
2006-10-23 18:10:32 +00:00
2006-09-16 00:30:20 +00:00
2007-05-15 19:43:59 +00:00
2006-09-18 19:54:01 +00:00
2007-03-26 17:23:45 +00:00
2007-05-15 19:43:59 +00:00
2007-03-26 17:23:45 +00:00
2006-09-16 00:30:20 +00:00
2006-09-18 19:54:01 +00:00
2006-09-16 00:30:20 +00:00
2006-09-16 00:30:20 +00:00
2006-09-16 00:30:20 +00:00
2006-09-16 00:30:20 +00:00
2006-09-16 00:30:20 +00:00
2006-09-16 00:30:20 +00:00
2006-09-16 00:30:20 +00:00
2007-05-15 19:43:59 +00:00
2006-09-16 00:30:20 +00:00
2006-09-16 00:30:20 +00:00
2006-09-16 00:30:20 +00:00
2006-09-16 00:30:20 +00:00
2006-09-18 21:19:29 +00:00
2006-09-16 00:30:20 +00:00
2006-09-16 00:30:20 +00:00
2006-09-16 00:30:20 +00:00
2006-09-16 00:30:20 +00:00
2006-09-16 00:30:20 +00:00
2006-10-31 01:52:31 +00:00
2006-09-16 00:30:20 +00:00
2006-10-23 18:10:32 +00:00
2007-05-15 19:43:59 +00:00
2006-09-16 00:30:20 +00:00
2007-03-26 17:23:45 +00:00
2007-03-26 17:23:45 +00:00
2007-03-26 17:23:45 +00:00
2006-09-16 00:30:20 +00:00
2006-09-16 00:30:20 +00:00
2006-09-16 00:30:20 +00:00
2006-09-18 19:54:01 +00:00
2006-09-16 00:30:20 +00:00
2006-09-16 00:30:20 +00:00
2007-03-26 17:23:45 +00:00
2006-10-23 18:10:32 +00:00
2006-09-16 00:30:20 +00:00
2006-09-16 00:30:20 +00:00
2006-09-16 00:30:20 +00:00
2006-09-16 00:30:20 +00:00
2006-09-16 00:30:20 +00:00
2006-09-16 00:30:20 +00:00
2006-10-23 18:10:32 +00:00
2007-02-20 18:11:17 +00:00
2007-03-26 17:23:45 +00:00
2007-03-26 17:23:45 +00:00
2007-03-26 17:23:45 +00:00
2006-09-16 00:30:20 +00:00
2007-03-26 17:23:45 +00:00
2007-01-04 00:58:01 +00:00
2006-06-18 15:38:37 +00:00
2006-09-16 00:30:20 +00:00
2006-09-18 19:54:01 +00:00
2007-03-26 17:23:45 +00:00
2006-09-16 00:30:20 +00:00
2007-01-05 01:19:04 +00:00
2007-03-26 17:23:45 +00:00
2006-09-16 00:30:20 +00:00
2006-09-16 00:30:20 +00:00
2006-09-16 00:30:20 +00:00
2006-09-16 00:30:20 +00:00
2006-09-16 00:30:20 +00:00
2006-09-16 00:30:20 +00:00
2006-09-16 00:30:20 +00:00
2006-09-16 00:30:20 +00:00
2006-12-01 20:49:53 +00:00
2006-09-16 00:30:20 +00:00
2008-01-03 21:23:45 +00:00
2008-01-03 21:23:45 +00:00
2006-09-16 00:30:20 +00:00
2006-09-22 16:20:00 +00:00
2008-01-03 21:23:45 +00:00
2006-09-16 00:30:20 +00:00
2006-09-16 00:30:20 +00:00
2006-09-16 00:30:20 +00:00
2006-09-16 00:30:20 +00:00
2007-01-31 04:13:28 +00:00
2007-03-26 17:23:45 +00:00
2006-10-23 18:10:32 +00:00