Schema Usage Patterns vs. dbowner or CREATEROLE
Noah Misch <[email protected]> Sat, 12 Oct 2019 18:35:12 -0700
| Newsgroups | gmane.comp.db.postgresql.devel.documentation |
|---|---|
| Message-ID | <[email protected]> |
When I updated https://www.postgresql.org/docs/devel/ddl-schemas.html#DDL-SCHEMAS-PATTERNS for CVE-2018-1058, I wrote that some schema usage patterns are secure against CREATEROLE users and database owners. That was incorrect. Even with the first pattern, a database owner can attack the database's users via "CREATE SCHEMA trojan; ALTER DATABASE $mydb SET search_path = trojan, public;". A CREATEROLE user can issue "GRANT $dbowner TO $me" and then use the database owner attack. I plan to update this section to assert that all three usage patterns are equally vulnerable to dbowner and CREATEROLE attack. (The technique described under "If untrusted users have access to a database ..." in libpq.sgml remains secure.)