From owner-p4-projects@FreeBSD.ORG Tue Oct 18 10:23:04 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id E6B8D16A421; Tue, 18 Oct 2005 10:23:03 +0000 (GMT) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 75B5116A41F; Tue, 18 Oct 2005 10:23:03 +0000 (GMT) (envelope-from rwatson@FreeBSD.org) Received: from cyrus.watson.org (cyrus.watson.org [209.31.154.42]) by mx1.FreeBSD.org (Postfix) with ESMTP id 29EE743D48; Tue, 18 Oct 2005 10:23:03 +0000 (GMT) (envelope-from rwatson@FreeBSD.org) Received: from fledge.watson.org (fledge.watson.org [209.31.154.41]) by cyrus.watson.org (Postfix) with ESMTP id 1923946BC5; Tue, 18 Oct 2005 06:23:02 -0400 (EDT) Date: Tue, 18 Oct 2005 11:23:01 +0100 (BST) From: Robert Watson X-X-Sender: robert@fledge.watson.org To: John Baldwin In-Reply-To: <200510171538.30876.jhb@freebsd.org> Message-ID: <20051018112150.S56080@fledge.watson.org> References: <200510171542.j9HFgRhI073994@repoman.freebsd.org> <200510171538.30876.jhb@freebsd.org> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed Cc: Perforce Change Reviews Subject: Re: PERFORCE change 85448 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Oct 2005 10:23:04 -0000 On Mon, 17 Oct 2005, John Baldwin wrote: > On Monday 17 October 2005 11:42 am, Robert Watson wrote: >> http://perforce.freebsd.org/chv.cgi?CH=85448 >> >> Change 85448 by rwatson@rwatson_zoo on 2005/10/17 15:41:26 >> >> In execve(), audit the path name being executed. Annotate that it >> would also be good to audit the pathname of the interpreter, if >> any. > > It's not a huge deal to do that you know, add the AUDITVNPATH1 flag to > the various name lookups in imgact_foo.c I'm not sure I fully understand how the lookups are managed in execve() -- if you look at the do_execve() code, you'll see that it iterates around and re-executes the same namei() for the interpreter label -- however, when I instrument it so that a second invocation audits as the second audit path, no second path appears, suggesting that in fact it is in the image activator. I'll have to do some more reading. Robert N M Watson > >> Affected files ... >> >> .. //depot/projects/trustedbsd/audit3/sys/kern/kern_exec.c#5 edit >> >> Differences ... >> >> ==== //depot/projects/trustedbsd/audit3/sys/kern/kern_exec.c#5 (text+ko) >> ==== >> >> @@ -350,10 +350,13 @@ >> /* >> * Translate the file name. namei() returns a vnode pointer >> * in ni_vp amoung other things. >> + * >> + * XXXAUDIT: It would be desirable to also audit the name of the >> + * interpreter if this is an interpreted binary. >> */ >> ndp = &nd; >> - NDINIT(ndp, LOOKUP, ISOPEN | LOCKLEAF | FOLLOW | SAVENAME | MPSAFE, >> - UIO_SYSSPACE, args->fname, td); >> + NDINIT(ndp, LOOKUP, ISOPEN | LOCKLEAF | FOLLOW | SAVENAME | MPSAFE | >> + AUDITVNPATH1, UIO_SYSSPACE, args->fname, td); >> >> interpret: >> error = namei(ndp); > > -- > John Baldwin <>< http://www.FreeBSD.org/~jhb/ > "Power Users Use the Power to Serve" = http://www.FreeBSD.org > To Unsubscribe: send mail to majordomo@trustedbsd.org > with "unsubscribe trustedbsd-cvs" in the body of the message >