head 1.22; access; symbols; locks; strict; comment @# @; 1.22 date 2006.02.13.14.26.31; author rwatson; state dead; branches; next 1.21; 1.21 date 2005.04.29.10.25.02; author rwatson; state Exp; branches; next 1.20; 1.20 date 2003.12.07.23.43.54; author rwatson; state Exp; branches; next 1.19; 1.19 date 2003.12.07.23.41.53; author rwatson; state Exp; branches; next 1.18; 1.18 date 2003.12.07.23.23.08; author rwatson; state Exp; branches; next 1.17; 1.17 date 2003.09.22.16.06.51; author rwatson; state Exp; branches; next 1.16; 1.16 date 2003.08.01.14.36.43; author rwatson; state Exp; branches; next 1.15; 1.15 date 2003.08.01.14.32.53; author rwatson; state Exp; branches; next 1.14; 1.14 date 2003.04.20.16.02.06; author rwatson; state Exp; branches; next 1.13; 1.13 date 2002.12.23.22.34.04; author rwatson; state Exp; branches; next 1.12; 1.12 date 2002.11.30.14.35.24; author rwatson; state Exp; branches; next 1.11; 1.11 date 2002.11.22.22.53.02; author chris; state Exp; branches; next 1.10; 1.10 date 2002.11.11.04.56.10; author rwatson; state Exp; branches; next 1.9; 1.9 date 2002.11.05.17.09.22; author rwatson; state Exp; branches; next 1.8; 1.8 date 2002.07.03.00.56.57; author rwatson; state Exp; branches; next 1.7; 1.7 date 2002.07.01.04.08.38; author chris; state Exp; branches; next 1.6; 1.6 date 2002.06.23.01.51.24; author chris; state Exp; branches; next 1.5; 1.5 date 2002.05.22.11.30.08; author rwatson; state Exp; branches; next 1.4; 1.4 date 2002.05.22.11.23.06; author rwatson; state Exp; branches; next 1.3; 1.3 date 2002.05.16.01.27.02; author rwatson; state Exp; branches; next 1.2; 1.2 date 2002.05.02.22.23.43; author chris; state Exp; branches; next 1.1; 1.1 date 2002.05.02.00.31.14; author chris; state Exp; branches; next ; desc @@ 1.22 log @Remove TrustedBSD web page from CVS -- it's now being maintained in P4 so that non-committers can help maintain it. The new path is: //depot/projects/trustedbsd/www/... @ text @ Components $FreeBSD: projects/trustedbsd/www/components.page,v 1.21 2005/04/29 10:25:02 rwatson Exp $
Components

Code associated with the TrustedBSD Project is generally under a two-clause BSD-style license, permitting broad open source, closed source, non-commercial, and commercial reuse. For more information on licensing, see Legal Information. All code currently available for download on this page is extremely experimental, and not intended for use by those who are not experienced kernel programmers. Comments on code, as well as on new features and bug fixes, are welcome.

TrustedBSD is developed in a Perforce repository, and is made available via CVSup server cvsup10.FreeBSD.org. A sample supfile is available. See the list below for information on the collection names associated with the various development branches. As features reach maturity, the are merged into the main FreeBSD development tree, and in some cases, have also been adopted into the OpenBSD and Darwin development trees.

To subscribe to the trustedbsd-cvs mailing list, see the instructions on the mailing lists page. This provides access to CVS and Perforce commit messages associated with development occuring in the TrustedBSD development trees, including the Base (vendor) branch, Capabilities branch, Audit branch, MAC branch, SEBSD branch, and SEDarwin branch.

There are seven main branches of TrustedBSD development:

Access Control Lists

Access control lists allow more fine-grained discretionary access controls to be placed on files and directories. Currently, ACLs are backed to extended attributes on UFS file systems. An extended attribute implementation was layered onto UFS1, and a native implementation is available as part of UFS2. The finished ACL implementation has been available as part of FreeBSD since the 5.0 release. Some further application adaptation work is on-going, and is taking place in the FreeBSD development tree.

Event Auditing and OpenBSM

Collection: p4-cvs-trustedbsd-audit3

Event auditing permits the selective logging of security-relevant system events for the purposes of analysis. Several experimental implementations of audit for FreeBSD have been explored; the current implementation is based on OpenBSM, an open source implementation of Sun's Basic Security Module (BSM) API and file format donated by Apple Computer, Inc.

Extended Attributes

Extended attributes allow the kernel and userland processes to tag files with arbitrary named data. This provides a location to store the extensive security data required for the various TrustedBSD security extensions, including ACLs, capabilities and MAC labels. Extended attribute support has been developed for FreeBSD's UFS1 file system and integrated with the FreeBSD development tree, and was included in FreeBSD 5.0. UFS2 was implemented to provide improved performance and reliability for extended attributes, and has been available since FreeBSD 5.0. UFS2 became the default in FreeBSD 5.1, and is the recommended file system for TrustedBSD functionality.

Fine-Grained Capabilities

Collection: p4-cvs-trustedbsd-cap

Capabilities provide support for fine-grained process capabilities to authorize non-root processes to access privileged system resources, reducing requirements for a superuser account, and reducing risk in the event of compromise. The capabilities development branch is largely complete, but is based on an older FreeBSD 5.0-CURRENT snapshot. Elements of this implementation are being updated for FreeBSD 5.2 and will be available in 2003Q3 as part of the MAC Framework.

Mandatory Access Control

Collection: p4-cvs-trustedbsd-mac

Mandatory access controls extend discretionary access controls by allowing administrators to enforce additional security for all subjects (e.g. processes or sockets) and objects (e.g. sockets, file system objects, sysctl nodes) in the system. Development of those new access control models is facilitated by the development of a flexible kernel access control extension framework, the TrustedBSD MAC Framework. This permits new access control models to be introduced as kernel modules.

More information on the TrustedBSD MAC Framework and available policy modules, including Biba integrity, Multi-Level Security (MLS), and a port of NSA's FLASK architecture and Type Enforcement to FreeBSD, may be found on the MAC page.

Security-Enhanced BSD (SEBSD)

Collection: p4-cvs-trustedbsd-sebsd

More information on the port of NSA's FLASK/TE implementation in SELinux to run on FreeBSD as a plug-in module to the MAC Framework may be found on the SEBSD page.

Security-Enhanced Darwin (SEDarwin)

Collection: p4-cvs-trustedbsd-sedarwin

More information on the port of the TrustedBSD MAC Framework, sample policy modules, and SEBSD policy module to Apple's Darwin operating system may be found on the SEDarwin page.

@ 1.21 log @Update audit P4 pointer, dates, and add a pointer to OpenBSM. @ text @d40 1 a40 1 $FreeBSD: projects/trustedbsd/www/components.page,v 1.20 2003/12/07 23:43:54 rwatson Exp $ @ 1.20 log @s/six/seven/ for the number of branches. @ text @d2 1 a2 1 Copyright (c) 2000, 2001 Robert N. M. Watson d40 1 a40 1 $FreeBSD: projects/trustedbsd/www/components.page,v 1.19 2003/12/07 23:41:53 rwatson Exp $ d96 1 a96 1

Event Auditing

d102 1 a102 1 p4-cvs-trustedbsd-audit d108 4 a111 4 for FreeBSD have been explored, but currently there is no production-track implementation under active development. We hope to remedy this problem in 2003Q3.

@ 1.19 log @Break out the page on the TrustedBSD MAC Framework into a seperate web page from the Components page, and reference it appopriately. Attempt to consistently refer to it with "TrustedBSD" in front. @ text @d40 1 a40 1 $FreeBSD: projects/trustedbsd/www/components.page,v 1.18 2003/12/07 23:23:08 rwatson Exp $ d77 1 a77 1

There are six main branches of TrustedBSD development:

@ 1.18 log @Add sedarwin.page, a description of the experimental port of the MAC Framework and SEBSD policy module to Apple's Darwin operating system, as well as a reference on the Components web page. Obtained from: TrustedBSD Project Sponsored by: DARPA, McAfee Research @ text @d40 1 a40 1 $FreeBSD: projects/trustedbsd/www/components.page,v 1.17 2003/09/22 16:06:51 rwatson Exp $ d174 5 a178 27

Currently, modules exist that implement MLS (Multi-Level Security), a fixed-label Biba integrity policy, Type Enforcement, and several other security policies that reflect common requirements of typical FreeBSD deployment environments, such as mandatory limits on inter-user visibility in multi-user environments. The current implementation of Low-Watermark MAC (LOMAC) will also be ported to use the module framework. In addition, the DARPA-funded Network Associates Laboratories' CBOSS Project is porting the NSA FLASK/SELinux implementation (SEBSD) to run as an extension model over the TrustedBSD MAC Framework.

This work is primarily occuring in a TrustedBSD Perforce branch, but much of the framework has been merged to the main FreeBSD development tree and was included in FreeBSD 5.0 and forwards. The current implementation is appropriate for experimental or limited production use; both internal and exposed MAC APIs will not be frozen until 5.2-RELEASE. All policy modules with the exception of the SEBSD implementation have been merged into the FreeBSD tree at this point.

Work has also recently begun on an experimental port of the TrustedBSD MAC Framework from FreeBSD to Apple's Darwin operating system. Information on this port may be found below.

@ 1.17 log @Break the SEBSD description out onto its own page, since we'll be posting a fair amount more information there over the next few weeks. Improve the description of the status of the SEBSD MAC module work, as well as document that we (NAI Labs) intend to do a snapshot release of the SEBSD work in October, 2003. Update the sidebar to take these changes into account. @ text @d40 1 a40 1 $FreeBSD: projects/trustedbsd/www/components.page,v 1.16 2003/08/01 14:36:43 rwatson Exp $ d75 1 a75 1 branch, and SEBSD branch.

d196 5 d217 16 @ 1.16 log @Add

in
headings to make them their own paragraphs. @ text @d40 1 a40 1 $FreeBSD: projects/trustedbsd/www/components.page,v 1.15 2003/08/01 14:32:53 rwatson Exp $ d208 4 a211 18

SEBSD is a port of NSA's FLASK/TE implementation in SELinux to run on FreeBSD as a plug-in module to the MAC Framework, as well as the policy files and necessary adaptations of FreeBSD's userland applications. At the time of this writing, the SEBSD module can be attached to the kernel and run in enforcing mode using a sample policy; many but not all relevant userland applications have been updated to properly interact with FLASK security contexts, including the login program. The FLASK implementation provides access to Type Enforcement (TE), as well as RBAC and a second MLS policy implementation.

The FLASK/TE implementation provided by NSA, SCC, and Network Associates Laboratories, is licensed under the GNU Public License (GPL), and will be distributed seperately from the remainder of the TrustedBSD components. However, these components are available as source code module that plugs into the MAC Framework.

@ 1.15 log @Update components page with FreeBSD release information; expand on some definitions and text. Add reference to the ongoing SEBSD port of the NSA SELinux FLASK/TE/... implementation to FreeBSD using the TrustedBSD MAC Framework, with checkout instructions. @ text @d4 1 a4 1 Copyright (c) 2002 Networks Associates Technology, Inc. d40 1 a40 1 $FreeBSD: projects/trustedbsd/www/components.page,v 1.14 2003/04/20 16:02:06 rwatson Exp $ d81 1 a81 1
Access Control Lists
d96 1 a96 1
Event Auditing
d115 1 a115 1
Extended Attributes
d134 1 a134 1
Fine-Grained Capabilities
d155 1 a155 1
Mandatory Access Control
d199 1 a199 1
Security-Enhanced BSD (SEBSD)
@ 1.14 log @Update status of various components with respect to FreeBSD 5.0-RELEASE. @ text @d40 1 a40 1 $FreeBSD: projects/trustedbsd/www/components.page,v 1.13 2002/12/23 22:34:04 rwatson Exp $ d49 9 a57 7 a two-clause BSD-style license, meaning that it is about as free as it can be. For more information on licensing, see Legal Information. All code currently available for download on this page is extremely experimental, and not intended for use by those who are not experienced kernel programmers. Comments on code, as well as on new features and bug fixes, are welcome.

d62 1 a62 1 server cvsup10.FreeBSD.org. A There are five main branches of TrustedBSD development:

d86 1 a86 1 Currently, ACLs are backed to extended attributes on FFS file d89 4 a92 4 of UFS2. All ACL development now takes place in the standard FreeBSD 5.x-CURRENT development branch. This work is fairly mature, and has been available for production use in FreeBSD 5.0 since 2003Q1.

d123 8 a130 8 attribute development now takes place in the standard FreeBSD 5.0-CURRENT development branch. This work now includes the development of UFS2 as part of the DARPA-funded Network Associates Laboratories' CBOSS Project. UFS2 will provide improved performance and reliability for EA-backed services, including ACLs, Capabilities, and MAC. This work is fairly mature, and will be appropriate for production use following FreeBSD 5.0-RELEASE.

d143 9 a151 11

Capabilities provide support for fine-grained process capabilities to authorize non-root processes to access privileged system resources, reducing requirements for a superuser account, and reducing risk in the event of compromise. Available code provides an initial framework for managing capabilities, and backing of capabilities for executable files in extended attributes is fully supported, but not all capabilities are fully implemented. An integration plan for the main tree has not yet been developed, although elements of this work are making their way into the MAC implementation.

d185 3 a187 1 This work is primarily occuring in a TrustedBSD Perforce d189 7 a195 7 main FreeBSD development tree for inclusion in FreeBSD 5.0-RELEASE. The implementation present in 5.0-RELEASE will be appropriate for experimental or limited production use; both internal and exposed MAC APIs will not be frozen until 5.2-RELEASE. Most current features of the MAC Framework, with the exception of SEBSD, have been merged to the main FreeBSD tree at this point.

d197 30 a230 1 @ 1.13 log @Generally spell NAI Labs as Network Associates Laboratories for consistency; remove third clause of license per NETA permission. @ text @d40 1 a40 1 $FreeBSD: projects/trustedbsd/www/components.page,v 1.12 2002/11/30 14:35:24 rwatson Exp $ d81 3 a83 3 FreeBSD 5.0-CURRENT development branch. This work is fairly mature, and will be appropriate for production use following FreeBSD 5.0-RELEASE in 2002Q3.

d101 1 a101 1 We hope to remedy this problem in 2003Q1.

@ 1.12 log @Remove clause 3 from NETA license, per approval of NETA. Assert my copyright for the web page text created 2000-2001. Assert Leigh Denault's copyright for 2001 for the page layout. @ text @d8 4 a11 4 Costello at Safeport Network Services and NAI Labs, the Security Research Division of Network Associates, Inc. under DARPA/SPAWAR contract N66001-01-C-8035 ("CBOSS"), as part of the DARPA CHATS research program. d40 1 a40 1 $FreeBSD: projects/trustedbsd/www/components.page,v 1.11 2002/11/22 22:53:02 chris Exp $ d116 6 a121 6 the development of UFS2 as part of the DARPA-funded NAI Labs CBOSS Project. UFS2 will provide improved performance and reliability for EA-backed services, including ACLs, Capabilities, and MAC. This work is fairly mature, and will be appropriate for production use following FreeBSD 5.0-RELEASE.

d175 12 a186 12 DARPA-funded NAI Labs CBOSS Project is porting the NSA FLASK/SELinux implementation (SEBSD) to run as an extension model over the TrustedBSD MAC Framework. This work is primarily occuring in a TrustedBSD Perforce branch, but much of the framework has been merged to the main FreeBSD development tree for inclusion in FreeBSD 5.0-RELEASE. The implementation present in 5.0-RELEASE will be appropriate for experimental or limited production use; both internal and exposed MAC APIs will not be frozen until 5.2-RELEASE. Most current features of the MAC Framework, with the exception of SEBSD, have been merged to the main FreeBSD tree at this point.

@ 1.11 log @"UFS2 will provided ..." -> "... will provide" @ text @d2 2 a20 3 3. The names of the authors may not be used to endorse or promote products derived from this software without specific prior written permission. d40 1 a40 1 $FreeBSD: projects/trustedbsd/www/components.page,v 1.10 2002/11/11 04:56:10 rwatson Exp $ @ 1.10 log @Consistently sort collection label information and the component description. @ text @d41 1 a41 1 $FreeBSD: projects/trustedbsd/www/components.page,v 1.9 2002/11/05 17:09:22 rwatson Exp $ d118 1 a118 1 CBOSS Project. UFS2 will provided improved performance @ 1.9 log @Status updates of various TrustedBSD project components. @ text @d41 1 a41 1 $FreeBSD: projects/trustedbsd/www/components.page,v 1.8 2002/07/03 00:56:57 rwatson Exp $ d91 6 a103 5

Collection: p4-cvs-trustedbsd-audit

@ 1.8 log @Spell June as July for beginning the MAC integration: we held off for KSE integration to take place, and in a week or two once that's stabilized, we'll start integrating. @ text @d41 1 a41 1 $FreeBSD: projects/trustedbsd/www/components.page,v 1.7 2002/07/01 04:08:38 chris Exp $ d53 4 a56 4 available for download is extremely experimental, and not intended for use by those who are not experienced kernel programmers. Comments on code, as well as on new features and bug fixes, are welcome.

d64 4 a67 1 the various development branches.

d78 7 a84 3 Currently, ACLs are backed to extended attributes on ffs file systems. All ACL development now takes place in the standard FreeBSD 5.0-CURRENT development branch.

d90 8 a97 1
d119 3 a121 1 Capabilities, and MAC.

d142 3 a144 1 for the main tree has not yet been developed.

d176 11 a186 5 FLASK/SELinux implementation to run as an extension model over the TrustedBSD MAC Framework. This work is currently taking place in a Perforce branch, but the MAC framework will be merged into the main FreeBSD development tree during July of 2002.

@ 1.7 log @o Add in and link to a sample supfile. o Be sure to only install ${DATA} and ${IMGS} if they're set. Sponsored by: DARPA, NAI Labs @ text @d41 1 a41 1 $FreeBSD: projects/trustedbsd/www/components.page,v 1.6 2002/06/23 01:51:24 chris Exp $ d162 1 a162 1 June of 2002.

@ 1.6 log @o Remove sidebar entry for Developers; the information is duplicated at the top of developers.page and that's the best place for it. o Add anchors for the sidebar links to components.page o Add a link to the "Event Auditing" information to the Components section of the sidebar. Sponsored by: DARPA, NAI Labs @ text @d41 1 a41 1 $FreeBSD: projects/trustedbsd/www/components.page,v 1.5 2002/05/22 11:30:08 rwatson Exp $ d61 4 a64 3 server cvsup10.FreeBSD.org. See the list below for information on the collection names associated with the various development branches.

@ 1.5 log @Note that UFS2 will improve EA performance and reliability, benefiting ACLs, Capabilities, and MAC. Also that Adam Migus is working on MAC as well as application adaptation. @ text @d41 1 a41 1 $FreeBSD: projects/trustedbsd/www/components.page,v 1.4 2002/05/22 11:23:06 rwatson Exp $ d68 1 d79 1 d90 1 d107 1 d128 1 @ 1.4 log @Wording and content improvements. Five branches instead of six. Capabilities are currently in the Cap tree not the main tree, and we don't have material integration plans. Extended description of the MAC work. Mention UFS2 in the EA section. @ text @d41 1 a41 1 $FreeBSD: projects/trustedbsd/www/components.page,v 1.3 2002/05/16 01:27:02 rwatson Exp $ d99 3 a101 1 CBOSS Project.

@ 1.3 log @Include collection name for the Capabilities implementation. Obtained from: TrustedBSD Project Sponsored by: DARPA, NAI Labs @ text @d41 1 a41 1 $FreeBSD: projects/trustedbsd/www/components.page,v 1.2 2002/05/02 22:23:43 chris Exp $ d65 1 a65 1

There are six main branches of TrustedBSD development:

d97 3 a99 1 5.0-CURRENT development branch.

d118 2 a119 3 capabilities are fully implemented Capability development now takes place in the standard FreeBSD 5.0-CURRENT development branch.

d135 20 a154 5 the system. Currently the TrustedBSD MAC implementation provides support for four MAC models: the MLS (Multi-Level Security) confidentiality policy, the Biba integrity policy, and the Type Enforcement policy.

@ 1.2 log @o Mark up CVS metadata using the `' namespace used in the FreeBSD Web site. o Include the CVS ID tag in HTML output. Sponsored by: DARPA, NAI Labs @ text @d41 1 a41 1 $FreeBSD$ d102 7 a108 1
@ 1.1 log @Welcome the TrustedBSD Web site code. This is being kept here because it is the best place for FreeBSD Doc. Project people to have access to it, and because it can be easily mirrored. It fulfills the requirement that it is directly related to FreeBSD. Sponsored by: DARPA, NAI Labs Obtained from: TrustedBSD Project @ text @a33 2 $FreeBSD$ d38 6 @