Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1755045AbZFCTqR (ORCPT ); Wed, 3 Jun 2009 15:46:17 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1752527AbZFCTqE (ORCPT ); Wed, 3 Jun 2009 15:46:04 -0400 Received: from smtp3.ultrahosting.com ([74.213.175.254]:54924 "EHLO smtp.ultrahosting.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1751583AbZFCTqD (ORCPT ); Wed, 3 Jun 2009 15:46:03 -0400 Date: Wed, 3 Jun 2009 15:45:57 -0400 (EDT) From: Christoph Lameter X-X-Sender: cl@gentwo.org To: Alan Cox cc: Linus Torvalds , "Larry H." , linux-mm@kvack.org, Rik van Riel , linux-kernel@vger.kernel.org, pageexec@freemail.hu Subject: Re: Security fix for remapping of page 0 (was [PATCH] Change ZERO_SIZE_PTR to point at unmapped space) In-Reply-To: <20090603202117.39b070d5@lxorguk.ukuu.org.uk> Message-ID: References: <20090530230022.GO6535@oblivion.subreption.com> <20090531022158.GA9033@oblivion.subreption.com> <20090602203405.GC6701@oblivion.subreption.com> <20090603182949.5328d411@lxorguk.ukuu.org.uk> <20090603180037.GB18561@oblivion.subreption.com> <20090603183939.GC18561@oblivion.subreption.com> <20090603202117.39b070d5@lxorguk.ukuu.org.uk> User-Agent: Alpine 1.10 (DEB 962 2008-03-14) 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: 1122 Lines: 35 On Wed, 3 Jun 2009, Alan Cox wrote: > This appears to break the security models as they can no longer replace > the CAP_SYS_RAWIO check with something based on the security model. Right it would be fixed like CAP_SYS_NICE. > > > @@ -1043,6 +1046,9 @@ unsigned long do_mmap_pgoff(struct file > > } > > } > > > > + if ((addr < mmap_min_addr) && !capable(CAP_SYS_RAWIO)) > > + return -EACCES; > > + > > You can't move this bit here The same code is executed in security_file_mmap right now which is the next function called at this spot. > > error = security_file_mmap(file, reqprot, prot, flags, addr, 0); > > You need it in the default (no security) version of security_file_mmap() > in security.h not hard coded into do_mmap_pgoff, and leave the one in > cap_* alone. But that would still leave it up to the security "models" to check for basic security issues. -- 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/