The MILS Component Integration Approach To Secure Information Sharing



Similar documents
Compositional Security Evaluation: The MILS approach

Raytheon Secure Systems and Networks

Virtual Machine Security

A Data Centric Approach for Modular Assurance. Workshop on Real-time, Embedded and Enterprise-Scale Time-Critical Systems 23 March 2011

ISOLATING UNTRUSTED SOFTWARE ON SECURE SYSTEMS HYPERVISOR CASE STUDY

System Component Deployment in a Realtime Embedded Software Defined Radio (SDR) Architecture

CHAPTER 1: OPERATING SYSTEM FUNDAMENTALS

Notes and terms of conditions. Vendor shall note the following terms and conditions/ information before they submit their quote.

Formal Foundations for Security Architecture

The Service Availability Forum Specification for High Availability Middleware

Virtualization for Cloud Computing

Service Oriented Architecture

SECURITY: THE KEY TO AFFORDABLE UNMANNED AIRCRAFT SYSTEMS. By Alex Wilson, Director of Business Development, Aerospace and Defense

Connecting your Coffee-Shop Laptop to a Life-critical System

Hypervisors. Introduction. Introduction. Introduction. Introduction. Introduction. Credits:

SECURE IMPLEMENTATIONS OF CONTENT PROTECTION (DRM) SCHEMES ON CONSUMER ELECTRONIC DEVICES

Certification Authorities Software Team (CAST) Position Paper CAST-13

Common Criteria Security Target For XenApp 6.0 for Windows Server 2008 R2 Platinum Edition

Patterns for Secure Boot and Secure Storage in Computer Systems

WIND RIVER SECURE ANDROID CAPABILITY

Chapter 14 Virtual Machines

Flight Processor Virtualization

SCADE System Technical Data Sheet. System Requirements Analysis. Technical Data Sheet SCADE System

Open Source Software

EECatalog SPECIAL FEATURE

High Assurance Security/Safety for Deeply Embedded, Real-time Systems

The Integration Between EAI and SOA - Part I

MultiPARTES. Virtualization on Heterogeneous Multicore Platforms. 2012/7/18 Slides by TU Wien, UPV, fentiss, UPM

Joint Interpretation Library

Common Criteria for Information Technology Security Evaluation Protection Profile. General-Purpose Operating System Protection Profile

Technical Data Sheet SCADE R17 Solutions for ARINC 661 Compliant Systems Design Environment for Aircraft Manufacturers, CDS and UA Suppliers

Open Source Implementation of Hierarchical Scheduling for Integrated Modular Avionics

Analysis on Virtualization Technologies in Cloud

System Software Integration: An Expansive View. Overview

Real-time Operating Systems. VO Embedded Systems Engineering Armin Wasicek

Best Practices on monitoring Solaris Global/Local Zones using IBM Tivoli Monitoring

Building Robust Security Solutions Using Layering And Independence

How do Users and Processes interact with the Operating System? Services for Processes. OS Structure with Services. Services for the OS Itself

ECU State Manager Module Development and Design for Automotive Platform Software Based on AUTOSAR 4.0

Security in SCADA solutions

Software Verification and System Assurance

SYSTEMS SECURITY ENGINEERING

GoodData Corporation Security White Paper

Parameters for Efficient Software Certification

Security Overview of the Integrity Virtual Machines Architecture

Objectives. Chapter 2: Operating-System Structures. Operating System Services (Cont.) Operating System Services. Operating System Services (Cont.

Leveraging Thin Hypervisors for Security on Embedded Systems

Virtualization for Hard Real-Time Applications Partition where you can Virtualize where you have to

Common Criteria Evaluation Challenges for SELinux. Doc Shankar IBM Linux Technology Center

LSN 10 Linux Overview

vsphere Client Hardware Health Monitoring VMware vsphere 4.1

What can DDS do for You? Learn how dynamic publish-subscribe messaging can improve the flexibility and scalability of your applications.

Agent Languages. Overview. Requirements. Java. Tcl/Tk. Telescript. Evaluation. Artificial Intelligence Intelligent Agents

New Challenges In Certification For Aircraft Software

Security Domain Separation as Prerequisite for Business Flexibility. Igor Furgel T-Systems

Embedded Java & Secure Element for high security in IoT systems

IO Visor: Programmable and Flexible Data Plane for Datacenter s I/O

Computer Science. About PaaS Security. Donghoon Kim Henry E. Schaffer Mladen A. Vouk

Ways to Use USB in Embedded Systems

Digital Rights Management Demonstrator

evm Virtualization Platform for Windows

Achieve Automated, End-to-End Firmware Management with Cisco UCS Manager

ASCETiC Whitepaper. Motivation. ASCETiC Toolbox Business Goals. Approach

9/26/2011. What is Virtualization? What are the different types of virtualization.

Deeply Embedded Real-Time Hypervisors for the Automotive Domain Dr. Gary Morgan, ETAS/ESC

A M D DA S 1. 0 For the Manageability, Virtualization and Security of Embedded Solutions

How To Build A Financial Messaging And Enterprise Service Bus (Esb)

Chapter 3: Operating-System Structures. Common System Components

Secuware Virtual System (SVS)

Decomposition into Parts. Software Engineering, Lecture 4. Data and Function Cohesion. Allocation of Functions and Data. Component Interfaces

System Structures. Services Interface Structure

SECUDE AG. FinallySecure Enterprise Cryptographic Module. FIPS Security Policy

sel4: from Security to Safety Gernot Heiser, Anna Lyons NICTA and UNSW Australia

Commercial Software Licensing

Secure Network Communications FIPS Non Proprietary Security Policy

Boeing B Introduction Background. Michael J. Morgan

ETERNUS CS High End Unified Data Protection

Managing a Fibre Channel Storage Area Network

Rigorous Methods for Software Engineering (F21RS1) High Integrity Software Development

Stateful Inspection Technology

A Project Document of the Advanced Transportation Controller Joint Committee. APIVS CONOPS v02.04

Supporting Document Guidance. Security Architecture requirements (ADV_ARC) for smart cards and similar devices. April Version 2.

Virtualization. Dr. Yingwu Zhu

A standards-based approach to application integration

ARINC 653. An Avionics Standard for Safe, Partitioned Systems

The evolving ARINC 653 standard and it s application to IMA

Ensim VoIP White Paper

VMware and CPU Virtualization Technology. Jack Lo Sr. Director, R&D

On-board Software Reference Architecture for Payloads

Establishing Great Software Development Process(es) for Your Organization. By Dale Mayes

Transcription:

The MILS Component Integration Approach To Secure Information Sharing Carolyn Boettcher, Raytheon, El Segundo CA Rance DeLong, LynuxWorks, San Jose CA John Rushby, SRI International, Menlo Park CA Wilmar Sifre, AFRL/RITB, Rome NY Boettcher, DeLong, Rushby, Sifre Component Security Integration: 1

MILS Is a security architecture adopted for F22, F35, FCS, JTRS, DDG-1000, CDS among others We are talking about security as a critical property So need to provide strong assurance that it is achieved We build systems from components And we d like critical properties and assurance to compose component-wise as well That s the topic of this talk I also want to persuade you the approach might work for safety (i.e., IMA) as well as security And for enterprise (e.g., ground) and commercial systems, as well as embedded Boettcher, DeLong, Rushby, Sifre Component Security Integration: 2

The MILS Idea Traditionally presented as three layers Separation kernel, middleware, applications Physical Display, Keyboard & Mouse S TS S, TS Trusted Path (SL) (SL) (MLS) Console Manager (MLS) E-Mail (MLS) File Sys. Driver (MLS) Web Browser IPv6 (MLS) PCS (MLS) RT CORBA/ DDS/WEB Full OS / Run-Time Libraries RT CORBA/ DDS/WEB Full OS / Run-Time Libraries Minimal Middleware Minimum Run-Time Library Separation Kernel Automatic Reload/Restart from Secure File System Processor Somewhat similar to IMA Boettcher, DeLong, Rushby, Sifre Component Security Integration: 3

The MILS Idea (ctd) Problem is, that doesn t compose i.e., it s not clear how you get a certified MILS system out of certified MILS components and subsystems Without opening everything up IMA has a similar problem I ll present a MILS Component Security Integration approach based on two levels That is compositional Boettcher, DeLong, Rushby, Sifre Component Security Integration: 4

Component Security Integration We build systems from components And we d like security properties and assurance/certification to compose That is, assurance for the whole is built on assurance for the components Seldom happens: assurance dives into everything The system security assurance argument may not decompose on architectural lines (Ibrahim Habli & Tim Kelly) So what is architecture? A good one simplifies the assurance case Boettcher, DeLong, Rushby, Sifre Component Security Integration: 5

The MILS Idea (Two-Level Version) Construct an architecture so that security assurance does decompose along structural lines Two issues in security: Enforce the security policy Manage shared resources securely The MILS idea is to handle these separately Focus the system architecture on simplifying the argument that policy is enforced correctly Hence policy architecture The policy architecture becomes the interface between the two issues Boettcher, DeLong, Rushby, Sifre Component Security Integration: 6

Policy Architecture Intuitively, a boxes and arrows diagram There is a formal model for this Boxes encapsulate data, information, control Access only local state, incoming communications i.e., they are state machines Arrows are channels for information flow Strictly unidirectional Absence of arrows is often crucial Some boxes are trusted to enforce local security policies Want the trusted boxes to be as simple as possible Decompose the policy architecture to achieve this Assume boxes and arrows are free Boettcher, DeLong, Rushby, Sifre Component Security Integration: 7

Crypto Controller Example: Step 1 Policy: no plaintext on black network header data red side header bypass encryption black side header encrypted data network stacks utilities compiler runtime operating system No architecture, everything trusted Boettcher, DeLong, Rushby, Sifre Component Security Integration: 8

Crypto Controller Example: Step 2 Good policy architecture: fewer things trusted bypass minimal runtime red operating system black operating system crypto hardware Local policies (notice these are intransitive): Header bypass: low bandwidth, data looks like headers Crypto: all output encrypted Boettcher, DeLong, Rushby, Sifre Component Security Integration: 9

Policy Architecture: Compositional Assurance Construct assurance for each trusted component individually i.e., each component enforces its local policy Then provide an argument that the local policies In the context of the policy architecture Combine to achieve the overall system policy Medium robustness: this is done informally High robustness: this is done formally Compositional verification Boettcher, DeLong, Rushby, Sifre Component Security Integration: 10

Compositional Verification for Policy Integration Need to specify what it means for a component to satisfy a policy under assumptions about its environment Then show how these compose (policy of one component becomes the assumptions of anther) Fairly standard Computer Science MILS is agnostic on the exact approach used Policies/assumptions as properties Or as abstract components Boettcher, DeLong, Rushby, Sifre Component Security Integration: 11

Resource Sharing Next, we need to implement the logical components and the communications of the policy architecture in an affordable manner Allow different components and communications to share resources Need to be sure the sharing does not violate the policy architecture Flaws might add new communications paths Might blur the separation between components Boettcher, DeLong, Rushby, Sifre Component Security Integration: 12

Poorly Controlled Resource Sharing red bypass crypto black Naive sharing could allow direct red to black information flow, or could blur the integrity of the components Boettcher, DeLong, Rushby, Sifre Component Security Integration: 13

Unintended Communications Paths bypass minimal runtime red operating system black operating system crypto hardware Boettcher, DeLong, Rushby, Sifre Component Security Integration: 14

Blurred Separation Between Components bypass minimal runtime red operating system black operating system crypto hardware Boettcher, DeLong, Rushby, Sifre Component Security Integration: 15

Secure Resource Sharing For broadly useful classes of resources e.g., file systems, networks, consoles, processors Provide implementations that can be shared securely Start by defining what it means to partition specific kinds of resource into separate logical components Definition in the form of a protection profile (PP) e.g., separation kernel protection profile (SKPP) or network subsystem PP, filesystem PP, etc. Then build and evaluate to the appropriate PP Boettcher, DeLong, Rushby, Sifre Component Security Integration: 16

Crypto Controller Example: Step 3 Separation kernel securely partitions the processor resource red bypass black device driver for crypto runtime or operating system minimal runtime runtime or operating system separation kernel crypto h/w The integrity of the policy architecture is preserved Boettcher, DeLong, Rushby, Sifre Component Security Integration: 17

A Generic MILS System separation kernel partitioning filesystem TSE Care and skill needed to determine which logical components share physical resources (performance, faults) Boettcher, DeLong, Rushby, Sifre Component Security Integration: 18

Resource Sharing: Compositional Assurance Construct assurance for each resource sharing component individually i.e., each component enforces separation Then provide an argument that the individual components Are additively compositional e.g., partitioning(kernel) + partitioning(network) provides partitioning(kernel + network) And therefore combine to create the policy architecture Medium robustness: this is done informally High robustness: this is done formally Compositional verification There is an asymmetry: partitioning network stacks and file systems and so on run as clients of the partitioning kernel Hence, a link to the three-layer view Boettcher, DeLong, Rushby, Sifre Component Security Integration: 19

Compositional Verification: Resource Sharing Integration We have a formal policy architecture model Fairly standard Computer Science Components are state machines Communications channels are shared variables Asynchronous composition Definition of well-formed policy architecture And of implementation respecting and enforcing a policy architecture Argument that these are additively compositional Boettcher, DeLong, Rushby, Sifre Component Security Integration: 20

MILS Business Model DoD moves things forward by supporting development of protection profiles Separation kernels, partitioning communications systems, TCP/IP network stacks, file systems, consoles, publish-subscribe Then vendors create a COTS marketplace of compliant components Currently they are all resource sharing components Should be some policy components, too E.g., filters, downgraders for CDS Could be a standardized CDS engine, many rule sets Rule sets derived from goals, not hand coded e.g., Ontologically-driven purpose and anti-purpose Or even MLS Boettcher, DeLong, Rushby, Sifre Component Security Integration: 21

Roadmap Example: MILS Architecture for Joint Training Exercises Boettcher, DeLong, Rushby, Sifre Component Security Integration: 22

Protection Profile Development rationale Explicit SFRs the nature threats add Security Functional Requirements Evaluation of the thing constraints from other PPs policies assumptions security objectives add select select SFR Common Criteria Security Assurance Requirements SAR scope depth Assurance Level EAL rigor Explicit SARs A lot of delicate work Boettcher, DeLong, Rushby, Sifre Component Security Integration: 23

Protection Profiles Development (ctd.) Developing individual PPs is difficult and delicate work Like developing a program against a big library With no way to test it, except inspection Compositionality means PPs have to be collectively coherent We are developing a Common Criteria Authoring Environment (CCAE) to assist construction of coherent PPs Ontological characterization of SFRs and SARs and rules for their combination Boettcher, DeLong, Rushby, Sifre Component Security Integration: 24

MILS and IMA Certification for MILS is more demanding than for IMA DO-178B Level A is comparable to EAL 4/5 High Robustness is EAL 6+/7+ So a separation kernel is more aggressively minimized than a partitioning IMA RTOS But the basic ideas are very similar And the MILS approach to compositional assurance might apply to IMA integration Boettcher, DeLong, Rushby, Sifre Component Security Integration: 25

MILS In The Enterprise (e.g., Ground Systems) Separation kernels are like minimal hypervisors (cf. Xen) MILS separation kernel (4 KSLOC), EAL7 Avionics partitioning kernel (20 KSLOC), DO-178B Level A ( EAL4) Hypervisor (60 250 KSLOC), EAL? Can expect some convergence of APIs (cf. ARINC 653) Different vendors will offer different functionality/assurance tradeoffs Could extend hypervisors from providing isolated virtual hosts to supporting the policy architecture of a secure service Boettcher, DeLong, Rushby, Sifre Component Security Integration: 26

Summary The MILS approach seems a reasonable approach to compositional reasoning about secure resource sharing and functional policies Must also consider resource utilization Need tools to allocate/schedule resources such as processor time, bus access, IPC, devices Given adequate specifications These are fairly simple constraint satisfaction problems (e.g., CoBaSA) And fault propagation I think the approach can extend from security to safety And from embedded (airborne) to enterprise (ground) systems Boettcher, DeLong, Rushby, Sifre Component Security Integration: 27