Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752733AbZL2VPM (ORCPT ); Tue, 29 Dec 2009 16:15:12 -0500 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1752125AbZL2VPL (ORCPT ); Tue, 29 Dec 2009 16:15:11 -0500 Received: from mail-ew0-f219.google.com ([209.85.219.219]:43846 "EHLO mail-ew0-f219.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751934AbZL2VPJ (ORCPT ); Tue, 29 Dec 2009 16:15:09 -0500 DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc:content-type; b=fDrkibZwTAOmlZAksqDuyEfNqOsLc9YXNiQ9/a21gsykXFKv9HmdBH+CuipFlSkQIa 32X9MjaOJOuxtfE8rcuXFkXRFkceBzQZb/Dj9+kOqRS3/NL6568+k4eJwl7pQiT5Tmj7 CJWirWNWl4FzCtHyLCBJOfniriGJ2ZoVNedl0= MIME-Version: 1.0 In-Reply-To: <20091229211139.0732a0c1@lxorguk.ukuu.org.uk> References: <20091229050114.GC14362@heat> <20091229151146.GA32153@us.ibm.com> <3e8340490912290805s103fb789y13acea4a84669b20@mail.gmail.com> <20091229211139.0732a0c1@lxorguk.ukuu.org.uk> From: Bryan Donlan Date: Tue, 29 Dec 2009 16:14:46 -0500 Message-ID: <3e8340490912291314m5e1b72e6s6e394d0a8cf95d00@mail.gmail.com> Subject: Re: RFC: disablenetwork facility. (v4) To: Alan Cox Cc: "Eric W. Biederman" , Benny Amorsen , "Serge E. Hallyn" , Michael Stone , linux-kernel@vger.kernel.org, netdev@vger.kernel.org, linux-security-module@vger.kernel.org, Andi Kleen , David Lang , Oliver Hartkopp , Herbert Xu , Valdis Kletnieks , Evgeniy Polyakov , "C. Scott Ananian" , James Morris , Bernie Innocenti , Mark Seaborn , Randy Dunlap , =?ISO-8859-1?Q?Am=E9rico_Wang?= , Tetsuo Handa , Samir Bellabes , Casey Schaufler , Pavel Machek , Al Viro Content-Type: text/plain; charset=ISO-8859-1 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1802 Lines: 38 2009/12/29 Alan Cox : >> > Execute != read. The executable file may contain secrets which must not >> > be available to the user running the setuid program. If you fail the >> > setuid, the user will be able to ptrace() and then the secret is >> > revealed. >> > >> > It's amazing how many security holes appear from what seems like a very >> > simple request. >> >> Do we have a security hole in nosuid mount option? >> Can someone write a patch to fix it? > > If a setuid app can read a key when its erroneously not set setuid then > the user can read it too. > > Anything you can do with ptrace you can do yourself ! The security hole is that secrets in a setuid application with other-exec but no other-read permission can be read when the filesystem is mounted nosuid. Normally the user would be unable to ptrace the program, and unable to read the executable, so the secret would not be divulged; when nosuid is set, the user is now able to ptrace the program - ie, they gain abilities from nosuid. Whether this is a severe issue is debatable, of course; it's unlikely that the administrator will create a setuid program with weird permissions and then go and mount the fs it's on with nosuid. However with the proposed 'drop suiding abilities' API, this becomes a bigger issue, since if we reuse the nosuid semantics, any user can trigger it, without needing to get root to mount things nosuid. That said, I do tend to agree that relying on the _presence_ of a suid mode to protect your secrets is probably a bad idea... -- 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/