Multiple Independent Levels of Security
Multiple Independent Levels of Security/Safety (MILS) is a high-assurance security architecture based on the concepts of separation[1] and controlled information flow; implemented by separation mechanisms that support both untrusted and trustworthy components; ensuring that the total security solution is non-bypassable, evaluatable, always invoked and tamperproof.
A MILS solution allows for independent evaluation of security components and trusted composition.[2][3] MILS builds on the older Bell and La Padula theories on secure systems that represent the foundational theories of the DoD Orange Book.
A MILS system employs one or more separation mechanisms (e.g., Separation kernel, Partitioning Communication System, physical separation) to maintain assured data and process separation. A MILS system supports enforcement of one or more application/system specific security policies by authorizing information flow only between components in the same security domain or through trustworthy security monitors (e.g., access control guards, downgraders, crypto devices, etc.).
Properties:
- Non-bypassable: a component can not use another communication path, including lower level mechanisms to bypass the security monitor.
- Evaluatable: any trusted component can be evaluated to the level of assurance required of that component. This means the components are modular, well designed, well specified, well implemented, small, low complexity, etc.
- Always-invoked: each and every access/message is checked by the appropriate security monitors (i.e., a security monitor will not just check on a first access and then pass all subsequent accesses/messages through).
- Tamperproof: the system controls "modify" rights to the security monitor code, configuration and data; preventing unauthorized changes.
A convenient acronym for these characteristics is NEAT.
'Trustworthy' means that the component have been certified to satisfy well defined security policies to a level of assurance commensurate with the level of risk for that component (e.g., we can have single level access control guards evaluated at CC EAL4; separation mechanisms evaluated at High Robustness; two-level separation guards at EAL 5; and TYPE I crypto all in the same MILS system).
'Untrusted' means that we have no confidence that the system meets its specification with respect to the security policy.
The following companies have MILS separation kernel products:
- Green Hills Software
- LynuxWorks
- SYSGO
- Wind River Systems
- Bertin Technologies
- OK Labs[4][5]
Companies with other separation methods creating MILS products:
MILS Research & Technology
- The MILS Community
- Research Projects:
- EURO-MILS: Secure European Virtualisation for Trustworthy Applications in Critical Domains
- D-MILS: Distributed MILS for dependable information and communication infrastructures .
- certMILS: Compositional security certification for medium- to high-assurance COTS-based systems in environments with emerging threats
See also
- Multiple Levels of Security
References
- John Rushby (1981). "Design and Verification of Secure Systems" (PDF). Proc. 8th ACM Symposium on Operating System Principles. pp. 12–21.
- W. S. Harrison; N. Hanebutte; P. Oman; J. Alves-Foss (October 2005). "The MILS Architecture for a Secure Global Information Grid" (PDF). CrossTalk. 18 (10): 20–24.
- Alves-Foss, W. S. Harrison, P. Oman and C. Taylor (2007). "The MILS Architecture for High Assurance Embedded Systems" (PDF). International Journal of Embedded Systems.CS1 maint: multiple names: authors list (link)
- http://wiki.ok-labs.com/DevelopOKLinuxApp?highlight=%28oklinux%29
- http://ssrg.nicta.com.au/projects/seL4/
- https://www.thalesgroup.com/en/martello