Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtp (Exim 4.80) (envelope-from ) id 1VFSdD-0002hT-3I for pgsql-hackers@arkaria.postgresql.org; Fri, 30 Aug 2013 17:37:11 +0000 Received: from localhost ([127.0.0.1] helo=postgresql.org) by malur.postgresql.org with smtp (Exim 4.80) (envelope-from ) id 1VFSdC-0002n3-EL for pgsql-hackers@arkaria.postgresql.org; Fri, 30 Aug 2013 17:37:10 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtp (Exim 4.80) (envelope-from ) id 1VFSd9-0002mp-SQ for pgsql-hackers@postgresql.org; Fri, 30 Aug 2013 17:37:07 +0000 Received: from smtp.01.com ([199.36.142.181] helo=smtp-out-2.01.com) by magus.postgresql.org with esmtp (Exim 4.80) (envelope-from ) id 1VFSd1-0000fP-9A for pgsql-hackers@postgresql.org; Fri, 30 Aug 2013 17:37:07 +0000 Received: from localhost (localhost [127.0.0.1]) by smtp-out-2.01.com (Postfix) with ESMTP id 465A439006B; Fri, 30 Aug 2013 12:36:57 -0500 (CDT) X-Virus-Scanned: amavisd-new at smtp-out-2.01.com Received: from smtp-out-2.01.com ([127.0.0.1]) by localhost (smtp-out-2.01.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id hEsCf0rMNJjt; Fri, 30 Aug 2013 12:36:57 -0500 (CDT) Received: from smtp-out-2.01.com (localhost [127.0.0.1]) by smtp-out-2.01.com (Postfix) with ESMTP id 26534390228; Fri, 30 Aug 2013 12:36:57 -0500 (CDT) Received: from localhost (localhost [127.0.0.1]) by smtp-out-2.01.com (Postfix) with ESMTP id 0EB6F390220; Fri, 30 Aug 2013 12:36:57 -0500 (CDT) X-Virus-Scanned: amavisd-new at smtp-out-2.01.com Received: from smtp-out-2.01.com ([127.0.0.1]) by localhost (smtp-out-2.01.com [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id WmNxPtqSsaDL; Fri, 30 Aug 2013 12:36:56 -0500 (CDT) Received: from [172.47.23.103] (70-36-143-10.dsl.dynamic.sonic.net [70.36.143.10]) by smtp-out-2.01.com (Postfix) with ESMTPSA id 6D83539006B; Fri, 30 Aug 2013 12:36:54 -0500 (CDT) Message-ID: <5220D832.7090104@agliodbs.com> Date: Fri, 30 Aug 2013 10:36:50 -0700 From: Josh Berkus Organization: PostgreSQL Experts Inc. User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:17.0) Gecko/20130803 Thunderbird/17.0.8 MIME-Version: 1.0 To: Kohei KaiGai CC: "ktm@rice.edu" , Alexander Korotkov , Oleg Bartunov , Greg Smith , PgHacker Subject: Re: [v9.4] row level security References: <51E8A8C1.2050700@2ndQuadrant.com> <51E8ADD9.5020600@2ndQuadrant.com> <521D1C2B.8090503@2ndQuadrant.com> <20130829142321.GA30496@aart.rice.edu> <521F7DFB.8060602@agliodbs.com> In-Reply-To: X-Enigmail-Version: 1.5.2 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-Pg-Spam-Score: -1.9 (-) List-Archive: List-Help: List-ID: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: X-Mailing-List: pgsql-hackers Precedence: bulk Sender: pgsql-hackers-owner@postgresql.org On 08/30/2013 03:05 AM, Kohei KaiGai wrote: >> Surely someone in the security community has discussed this? >> > Security community considers covert channel is a hard to solve problem; > nearly impossible to eliminate. > Let's see the summary in wikipedia: > http://en.wikipedia.org/wiki/Covert_channel Well, in each of the cases covered in that article, the given technology (OSI, TCP, etc.) takes specific provisions to limit the ability of attackers to discover information via the covert channel. However, we have yet to talk about taking any such provisions with Postgres. If we commit this patch, arguably we'll have a row-level security feature which only protects data from well-behaved users, which seems counterproductive. So, arguments in favor of this patch: a) it's as good as Oracle's security features, giving us "check-box compliance". b) it allows securing individual rows against attackers with limited technical knowledge or limited database access, and could be very hardened in combination with intelligent access control. c) it is an improvement on techniques like Veil (is it)? d) we plan to continue improving it and closing covert channels, or limiting their bandwidth. Arguments against: m) covert channels are currently broad enough to make it trivially circumventable (are they?) n) overhead and code maintenance required is substantial So, determinative questions: 1) are the security mechanisms supplied by this patch superior in some way to approaches like Veil for multi-tenant applications? (this is a serious question, as multi-tenant applications are far less concerned about covert channels) 2) do we plan to reduce the accessibility of data via covert channels over successive releases? How? 3) will accepting this patch allow our users in the Government space to more freely adopt PostgreSQL? -- Josh Berkus PostgreSQL Experts Inc. http://pgexperts.com -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers