Re: Extension pg_trgm, permissions and pg_dump order

From: Nathan Bossart <nathandbossart(at)gmail(dot)com>
To: Noah Misch <noah(at)leadboat(dot)com>
Cc: Michael Paquier <michael(at)paquier(dot)xyz>, pgsql-bugs(at)lists(dot)postgresql(dot)org, Färber, Franz-Josef (StMUK) <Franz-Josef(dot)Faerber(at)stmuk(dot)bayern(dot)de>, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Subject: Re: Extension pg_trgm, permissions and pg_dump order
Date: 2022-06-22 16:25:50
Message-ID: 20220622162550.GA95419@nathanxps13
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-bugs pgsql-general

On Tue, Jun 21, 2022 at 08:37:04PM -0700, Noah Misch wrote:
> On Tue, Jun 21, 2022 at 10:56:16AM -0700, Nathan Bossart wrote:
>> On Wed, Jun 15, 2022 at 10:42:18PM -0700, Noah Misch wrote:
>> > + * Identify the opclass to use. Use of ddl_userid is necessary due to
>> > + * ACL checks therein. This is safe despite opclasses containing
>> > + * opaque expressions (specifically, functions), because only
>> > + * superusers can define opclasses.
>>
>> It's not clear to me why the fact that only superusers can define opclasses
>> makes this safe.
>
> classOidP[attn] = ResolveOpClass(attribute->opclass,
> atttype,
> accessMethodName,
> accessMethodId);
>
> To write the comment, I pondered how those four arguments could conceivably
> lead ResolveOpClass() to locate Trojan code. Since only superusers can define
> opclasses, we can assume the catalog entries of an opclass do not point to
> Trojan code. (The superuser could just do the mischief directly, rather than
> going to extra trouble to set a trap for later.) If you see a hole in that
> thinking, please do share.

Thanks for clarifying. That makes sense to me.

--
Nathan Bossart
Amazon Web Services: https://aws.amazon.com

In response to

Browse pgsql-bugs by date

  From Date Subject
Next Message Jacob Champion 2022-06-22 16:28:56 Re: BUG #17522: While using --with-ssl=openssl and PG_TEST_EXTRA='ssl' options, SSL test fails on OpenBSD 7.1
Previous Message Tom Lane 2022-06-22 16:16:47 Re: BUG #17522: While using --with-ssl=openssl and PG_TEST_EXTRA='ssl' options, SSL test fails on OpenBSD 7.1

Browse pgsql-general by date

  From Date Subject
Next Message Tomas Pospisek 2022-06-22 19:17:18 ERROR: new collation (en_US.UTF-8) is incompatible with the collation of the template database (en_US.utf-8)
Previous Message Zb B 2022-06-22 14:58:55 PostgreSQL with Patroni not replicating to all nodes after adding 3rd node (another secondary)