Design and Implementation of the TrustedBSD MAC Framework

The TrustedBSD Project has extended FreeBSD to provide access to security features traditionally reserved for commercial and research trusted operating system products. As of FreeBSD 5.0, this includes support for Mandatory Access Control (MAC) in the base operating system. This is achieved through the use of a flexible extension framework permitting both compile-time and run-time extension of the kernel security policy through the use of kernel modules encapsulating security policies. This model permits the operating to be shipped with additional optional security policies, as well as allowing vendors to easily add new security policies to the system for their own distribution. Likewise, it permits easy localized policy extensions to the system, dramatically lowering the costs of developing, testing, deploying, and maintaining such policies. The TrustedBSD Project shipped a number of security policy modules with FreeBSD 5.0, including support for Multi-Level Security (MLS), Biba fixed-label and floating-label integrity policies, and several other BSD policy adaptions.

This tutorial provides a detailed exploration of the MAC framework and its security modules, including choices made during the design and implementation. Running approximately six hours, it explores a number of topics including:

This talk may be of interest to a variety of audiences, including FreeBSD users and developers, or those considering using BSD-derived operating systems as the basis for a secure computing environment. Background experience with use and development of operating systems will be helpful.