From owner-freebsd-hackers@FreeBSD.ORG Thu Nov 8 03:20:54 2007 Return-Path: Delivered-To: freebsd-hackers@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 4CC3916A420 for ; Thu, 8 Nov 2007 03:20:54 +0000 (UTC) (envelope-from dexterclarke@Safe-mail.net) Received: from tapuz.safe-mail.net (tapuz.safe-mail.net [213.8.161.230]) by mx1.freebsd.org (Postfix) with ESMTP id B44E513C4B2 for ; Thu, 8 Nov 2007 03:20:53 +0000 (UTC) (envelope-from dexterclarke@Safe-mail.net) Received: by tapuz.safe-mail.net with Safe-mail (Exim 4.52) id 1IpxwT-0002ma-3p; Wed, 07 Nov 2007 22:20:29 -0500 DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=N1-0105; d=Safe-mail.net; b=zSMTtO8ZtvERLJbsjmq2q0nxjvx2IdaSO2HrzojvzAw/HP+87yur4EY7xWGH5adB 65QXRqZjvbRdEX6kLxqNa+i6ZqqXnHx8U0vPEdCprqvCURO9pPCagr7rR2Do7HDj HBATBuuYw5vOmfW1p281xfB/3KKZFmPbQaYDPseZfBg=; Received: from pc ([81.86.41.187]) by Safe-mail.net with https Date: Wed, 7 Nov 2007 22:20:28 -0500 From: dexterclarke@Safe-mail.net To: freebsd-hackers@freebsd.org X-SMType: Regular X-SMRef: N1-_PYrd0nIeB Message-Id: MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-SMSignature: oEqF6kpRn7ckCrL5q+G+kitXdHsTQ/V54fnE13kkIywzCZHAqqbYDjlo9t7aGaoP 6pMEmir1TLI4B61d2HznEb+TIHXFP+hUcCoeIulDgQhPiKKyh5OzPYdCj02cmJOG FANvKHlA+mp3fjkZB8ZQO7K4n541Oc4iNRsiVSxHldo= Cc: trustedbsd-discuss@freebsd.org Subject: A TrustedBSD "voluntary sandbox" policy. X-BeenThere: freebsd-hackers@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Technical Discussions relating to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 08 Nov 2007 03:20:54 -0000 I'm considering developing a policy/module for TrustedBSD loosely based on the systrace concept - A process loads a policy and then executes another program in a sandbox with fine grained control over what that program can do. I'm aiming for a much simpler implementation, however. No interaction. No privilege elevation (only restriction). No system call rewriting, only access control. The interface will look something like this: (cat <