Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754624Ab1BJCpK (ORCPT ); Wed, 9 Feb 2011 21:45:10 -0500 Received: from tundra.namei.org ([65.99.196.166]:57013 "EHLO tundra.namei.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750946Ab1BJCpI (ORCPT ); Wed, 9 Feb 2011 21:45:08 -0500 Date: Thu, 10 Feb 2011 13:44:58 +1100 (EST) From: James Morris To: "Eric W. Biederman" cc: Kees Cook , linux-kernel@vger.kernel.org, Al Viro , Stephen Smalley , linux-security-module@vger.kernel.org Subject: Re: [SECURITY] /proc/$pid/ leaks contents across setuid exec In-Reply-To: Message-ID: References: <20110207231416.GD1457@outflux.net> <20110208011445.GF1457@outflux.net> <20110208042708.GG1457@outflux.net> User-Agent: Alpine 2.00 (LRH 1167 2008-08-23) MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1251 Lines: 35 On Tue, 8 Feb 2011, Eric W. Biederman wrote: > Kees Cook writes: > > > On Tue, Feb 08, 2011 at 02:43:15PM +1100, James Morris wrote: > >> > I don't think /proc/$pid/* needs to stay open across execs, does it? Or at > >> > least the non-0444 files should be handled separately. > >> > >> Actually, this seems like a more general kind of bug in proc rather than a > >> leaked fd. Each child task should only see its own /proc/[pid] data. > > > > Right, that's precisely the problem. The unprivileged process can read > > the setuid process's /proc files. > > If these are things that we actually care about we should sprinkle in a > few more ptrace_may_access calls into implementations of the relevant > proc files. This seems to be papering over a bug. It is plainly broken to return an access error to a task which is legitimately accessing a file. The task should not receive the wrong information from /proc/[pid]/* . - James -- James Morris -- 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/