Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtp (Exim 4.80) (envelope-from ) id 1VF5hn-0007vo-Nr for pgsql-hackers@arkaria.postgresql.org; Thu, 29 Aug 2013 17:08:23 +0000 Received: from localhost ([127.0.0.1] helo=postgresql.org) by malur.postgresql.org with smtp (Exim 4.80) (envelope-from ) id 1VF5hm-0002pX-Us for pgsql-hackers@arkaria.postgresql.org; Thu, 29 Aug 2013 17:08:22 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtp (Exim 4.80) (envelope-from ) id 1VF5hl-0002pH-AZ for pgsql-hackers@postgresql.org; Thu, 29 Aug 2013 17:08:21 +0000 Received: from tamriel.snowman.net ([2001:4830:167b::11]) by magus.postgresql.org with esmtp (Exim 4.80) (envelope-from ) id 1VF5hd-0008UY-LY for pgsql-hackers@postgresql.org; Thu, 29 Aug 2013 17:08:20 +0000 Received: by tamriel.snowman.net (Postfix, from userid 1000) id 8D8CB5F77B; Thu, 29 Aug 2013 13:09:59 -0400 (EDT) Date: Thu, 29 Aug 2013 13:09:59 -0400 From: Stephen Frost To: Kohei KaiGai Cc: "ktm@rice.edu" , Alexander Korotkov , Oleg Bartunov , Greg Smith , PgHacker Subject: Re: [v9.4] row level security Message-ID: <20130829170959.GU2706@tamriel.snowman.net> References: <51E8ADD9.5020600@2ndQuadrant.com> <521D1C2B.8090503@2ndQuadrant.com> <20130829142321.GA30496@aart.rice.edu> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="jd3i04tXUCH+oY1c" Content-Disposition: inline In-Reply-To: X-Editor: Vim http://www.vim.org/ X-Info: http://www.snowman.net X-Operating-System: Linux/3.8.0-25-generic (x86_64) X-Uptime: 11:10:54 up 47 days, 11:20, 6 users, load average: 0.02, 0.03, 0.05 User-Agent: Mutt/1.5.21 (2010-09-15) X-Pg-Spam-Score: -4.4 (----) 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 --jd3i04tXUCH+oY1c Content-Type: text/plain; charset=us-ascii Content-Disposition: inline * Kohei KaiGai (kaigai@kaigai.gr.jp) wrote: > Although I didn't touch this task by myself, my senior colleague said that we > calculated some possible bandwidth of leakage as an evident when we ship > supercomputer system with MAC feature for customer who worry about security. > I'm not sure how to measure it. However, if we assume a human can run up to > 5 query per seconds, he needs 2-3 seconds to identify a particular integer value > less than 10000, it means bandwidth of this covert channel is less than 5bps. > I'm not sure whether enterprise-grade dbms has to care about these amount > of covert channel. A human isn't necessary in this particular scenario- you're doing a simple binary search through the space, which computers can be awful good at. Using the type's bounds (eg: an 'integer' field is only 32bits) and forcing index scans, you could tell how many records exist and then break down how many exist in the first half, second half, and then split those.. Eventually, you could work out every value in the column. That could be applied to variable length values also, though it'd be more costly to get down to the exact values. I don't have a solution to these issues offhand except to suggest that, in such an environment, having a "don't allow these users to run EXPLAIN" and similar options would probably be welcome. Even then there are potential timing attacks, but that certainly increases the level of effort involved. Thanks, Stephen --jd3i04tXUCH+oY1c Content-Type: application/pgp-signature; name="signature.asc" Content-Description: Digital signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.12 (GNU/Linux) iEUEARECAAYFAlIfgGcACgkQrzgMPqB3kihe6gCWPPr5W6H07DMvE8YjhVdyZOV7 WACcDQ8z5cUaFAONxtdS2GiD6gR1VPU= =a65t -----END PGP SIGNATURE----- --jd3i04tXUCH+oY1c--