Flask: Flux Advanced Security Kernel
Flask is an operating system security architecture that
provides flexible support for security policies. The architecture was
prototyped in the Fluke research
operating system. Several of the Flask interfaces and components were
then ported from the Fluke prototype to the
OSKit.
The Flask architecture is now being implemented in the Linux operating system
(Security-Enhanced Linux) to transfer the
technology to a larger developer and user community.
The following papers are useful in understanding Flask and its
implementation in Fluke:
Three reports describe the implementation of the Flask architecture
in Fluke:
History of Flask
In 1992 and 1993, researchers at the National Security Agency (NSA)
and Secure Computing Corporation (SCC) worked on the design and
implementation of Distributed Trusted Mach [6] (DTMach), an
outgrowth of the TMach [4] project and the
LOCK [10] project. DTMach integrated a
generalization of type enforcement [3,1], a
flexible access control mechanism, into the Mach microkernel.
The DTMach project was continued in the
Distributed Trusted Operating System [8,9] (DTOS) project. The DTOS
project improved upon the earlier design and implementation work,
yielding a prototype that was released to universities for research
(e.g. Secure Transactional Resources [12],
DX [2]).
Furthermore, the DTOS project produced a
lessons learned report,
formal specifications of the system,
an analysis of security policies and their characteristics,
a study of composability techniques, and
a study of the security and assurability of a variety of microkernel-based systems. These reports are available here.
As the DTOS project approached its completion, a new joint effort was started
by the NSA, SCC, and the University of Utah's
Flux project
to transfer the DTOS security architecture into the
Fluke research operating system.
During the integration of the architecture into Fluke,
the architecture was enhanced to provide better support for dynamic
security policies. This enhanced architecture was named Flask
[11].
Several of the Flask interfaces and components were subsequently
ported from Fluke to the OSKit.
The architecture is now being implemented by the NSA in the
Linux operating system (Security-Enhanced Linux)
to transfer the technology to a larger developer and user community.
Other contributors to the Security-Enhanced Linux system include
NAI Labs, Secure Computing Corporation, and MITRE.
Up to Flux project home page
Stephen Smalley, National Security Agency
sds@epoch.ncsc.mil
Last modified Dec 26 2000