Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1756113AbZLTVXy (ORCPT ); Sun, 20 Dec 2009 16:23:54 -0500 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1754621AbZLTVXx (ORCPT ); Sun, 20 Dec 2009 16:23:53 -0500 Received: from zeniv.linux.org.uk ([195.92.253.2]:48344 "EHLO ZenIV.linux.org.uk" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754516AbZLTVXw (ORCPT ); Sun, 20 Dec 2009 16:23:52 -0500 Date: Sun, 20 Dec 2009 21:23:40 +0000 From: Al Viro To: Pavel Machek Cc: Jeff Layton , Jamie Lokier , "Eric W. Biederman" , linux-fsdevel@vger.kernel.org, linux-kernel@vger.kernel.org, miklos@szeredi.hu Subject: Re: [PATCH 0/3] vfs: plug some holes involving LAST_BIND symlinks and file bind mounts (try #5) Message-ID: <20091220212340.GO18217@ZenIV.linux.org.uk> References: <1258998084-26797-1-git-send-email-jlayton@redhat.com> <20091123173616.75c3f600@tlielax.poochiereds.net> <20091123224948.GB5598@shareable.org> <20091123181545.05ad004d@tlielax.poochiereds.net> <20091216123143.GA15784@ZenIV.linux.org.uk> <20091220195903.GG23917@elf.ucw.cz> <20091220210404.GN18217@ZenIV.linux.org.uk> <20091220210619.GK23917@elf.ucw.cz> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20091220210619.GK23917@elf.ucw.cz> User-Agent: Mutt/1.5.18 (2008-05-17) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1339 Lines: 31 On Sun, Dec 20, 2009 at 10:06:19PM +0100, Pavel Machek wrote: > > > Consider FD passing over unix socket. Passing R/O file descriptor to > > > the other task, then having the task write to the file is certainly bad. > > > > You've omitted the "R/O file descriptor of a file that is writable for > > that other task" part... > > That is 666 for the other task. But the other task can't access it due > to directory being 700 or something. Your fchdir() argument does not > apply here. *snort* What you are advocating is a very limited class of setups that might be usable for protecting files if not for the existing behaviour on a shitload of systems. The thing is, that class *is* very limited. E.g. introduce links and it's fallen apart. Introduce bindings and the same will happen. Just try to extend it one level deeper and fchdir() will bite you, etc. All of that is not dependent on procfs even being there. Access rights belong to file, not to a pathname (and there's no such thing as _the_ pathname of a file). I'd buy that as a minor QoI issue; as a security one - no way. -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/