Secure ADA Target: Issues, System Design, and Verification

16 downloads 0 Views 842KB Size Report
The Secure. Ada Target. (SAT) machine is designed to meet or exceed the. DoD requirements for multi-level secure systems. This paper describes the require-.
SECURE ADA TARGET:

Honeywell

University

W.E. Boebert Secure Computing Technology Minneapolis, MN

of

W.D. Young Texas (Consultant Austin, TX

to

ISSUES,

SYSTEM DESIGN,

AND VERIFICATION

University

Cent er

of

Honeywell

Honeywell)

R.Y. Kaln Minnesota (Consultant Minneapolis, MN

to

Honeywell)

S.A. Hansohn Secure Computing Technology Minneapolis, MN

Center

ABSTRACT In this paper we survey the design and mechanisms of the SAT design, pointing out how this design not only meets the Al criteria but also permits implementations based on diverse hoat processor architectures. The initial implementation of the SAT design will be based on the Honeywell Level 6 minicomputer system. We present significant issues that have been addressed in developing the SAT design. We describe our position on each of these isauea and briefly discuss our rationale. We detail the operation of the security-related mechanisms in the SAT system design, show our

The Secure Ada Target (SAT) machine is designed to meet or exceed the DoD requirements for multi-level secure systems. This paper describes the requirements on such designs, our approach to meeting these requirements by introducing tagged objects, and a specialized tagged object processor (TOP) that handles all operations involving tagged objects. Basic system security is achieved using a small software kernel and the TOP. The structure of our proofs, such that the system satisfies appropriate security properties, will be outlined. Brief remarks concerning the implementation of user Ada programs on the SAT system conclude the paper.

Our design selection, necessarily

approach to complement provide with reader will requirement taken, and the amount underlying

approach is largely independent of CPU though implementation details depend on the processor selection.

INTRODUCTION The Secure Ada Target (SAT) machine is designed to meet or surpass the requirements for level Al certification as a secure computing system, as defined in the Department of Defense (DoD) Trusted

MILITARY

Previous attempts to-meet military security requirements have used a large core of system software supported by a small amount of specialized hardware. The SAT design reverses this pattern, relying on a small software kernel supported by hardware modifications to traditional system modules (such as memory) and by additional modules (such as a coprocessor handling object descriptors). One could say that the design is based on rethinking the hardware/aoftware interface, rowing security-related mechanisms into hardware as much as possible, while preserving a soft implementation of policy as much as possible. The provision for soft policy implementations allows users to develop applications for the system that meet security criteria different from or in excess of the military policies, while at the same time preserving the prwability of properties concerning the military policy.

The military security requirements assign “degrees” of security to systems based on their properties and the degree of trust placed in the design and implementation of the system. The highest classification is named “Al,” in which proofs are required both to support the fundamental design strategy and to relate that design strategy to the actual implementation. The SAT design should meet and men exceed the Al requirements. All

176 19851EEE

approaches

to military

security

rely

on the

“reference model. “2s3 Under the reference model, active entities are called “subjects,” which are permitted to access passive entities that are called “objects.” Access control is provided

This effort has been supported by US Government Contracts MDA904-82-C-0444 and HDA904-C-S4-C-6011.

.00~

SECURITY REQUIREMENTS

The traditional military secure system based on paper documents handled by trusted individuals does not map directly onto computer systems that can handle information of differing security properties. A basic requirement of all military secure systems is that they provide a mechanism for assigning security classifications to all objects within the system and to all users of the system. These classifications are the basis on which the system permits programs to access objects.

Computer System Evaluation Criteria.l The Al level is the higheat level yet specified; a system must provably meet certain criteria and support other functions, such as labeling human-readable output .

CH2150-1/85/0000/0176$01

fo~l verification, and describe the of system software that we expect to the initial systems. Throughout, the note the influence of the proof on the design decisions that we have should appreciate how we have minimized of policy that has been placed in system mechanism.

through

a mediatmg

monitor”

or

performs

three

It

1.

the

basic

maintaina

information system. specifies

“reference

the

subsystem

compromised

body

“security the be viewed as

modes

of

access

of state”

of

a table

that

permitted

to

the

mediates

to by

objects, ensuring the security state

all

attempted

It

performs

accesses

that are

by

state

operations

(adding

objects, operations

for

entries

the

modify

for

the

the

military

security

policy,

on

whose behalf These attributes

hierarchical secret) and

levels categories

policy prevents direct access intermediaries. designed which those

to

TOP

In these in the

is

permissible

model control

of

It

well

is

model

or of

(such as (such

“need that

disallowed individuala

this list”

form (acl).

known

of

owning object

an

accesa

of

strict

and

inappropriate A significant

is

that

states

this to

file to separate

the output these two

the

or

“access

of

entities logically)

that

Our

“basic”

which

form

“Practical The detailed

iseuea” design

following

secti?n.

the

on which “subject,” a central details

shall

be

in

our

affected issuee the

“core”

influence of the

thinking

is

“object,” and role. Therefore, we must first decide

defined

the

and

implemented

system.

the

is defined to be an instruction executed in a particular security discussed next). A subject executes

of a single the system. user,

user, who is an Certain security

therefore, of

any

limit

subject

interpretation however,

as

the

of

this

we

shall

individual attributes

security

acting

the

that

on

its

behalf.

constraint

A

causes

discuss

below.

of a subject level and a

define access

the constraints policies. In

of the user on whose must be part of the

order to policies).

enforce To

executing labeling

discretionary theee baeic domain

and

mustl set of

to

other

include categories, imposed

by

addition, the behalf the subject is security context (in

access properties

aseist

in

the

miscellaneous

control we have

added

enforcement semantic

properties. The next “object.” oriented” considered security

result-

to

design issue concerns the nature of an Our design is based on the “objectphilosophy, under which many things are to be abstract objects. These include levels, devices, subjects, types, domains,

The mandatory policy and value-holding spaces. dictates that a value-holding object poseess a hierarchical level and a set of categories. In addition, an acl defining which users are

to

the under

constrained

in

what

ways

is

a required

attribute

(to meet the discretionary acceas restrictions) each object in the system. Finally, we have object type to assist in the enforcement of

human-

If

security context a hierarchical

identity executing

of

the

implement encrypt

sensitivity, would view

device. disparate

we

which together the mandatory

labeling and requirements.

readable output be labeled appropriately to reflect the information contained within the output document. One could meet this requirement by writing a procedure that both labels the output and pasaes attempts

issues

concepts,”

model,

least

The both

in

circumstances. requirement

typee.

ISSUES

design

notions of state” play can develop

problems,

specify be

semantic properties such that flow desired can be permitted circumstances and denied under

Al

the

(at

narrow

control,

this as permitting access by a user of low trust To circumvent information of high sensitivity. this and other problems, system designers have included “trusted agents,” which must be proved obey certain information controlled

reference

these

of

are

enforcement

declare

the

attributea

individuals The computer

now has lower implementation

their

through

does not permit one to For example, one cannot stream policy

To

Issues

on behalf accessing

of

and The

object can that should

control

on

SAT syetem.

in

In SAT a subject sequence being context (to be

is being on

access

particular (“groups”).

based

“design approach. design.

be

processes.

forms

unclassified as crypto).

know”

might other

clean up the system obiect tv pee and execution domain defines allowable

key

the

how

the

information

ing ciphertext since a strict

to

to

that

mandatory policy useful systems. sensitive

program are based

the

of

presented

baaed, “security before

(which preserved.

information compromise or indirect attacks using Discretionary policies

the individual accesses to

allowed classea

the

of

security

of access are controlled by two policies: “mandatory” and “discretionary” access controls. The former restricts acceas based on the relationships between the security attributea the accessed object and the security attributes the user executed.

objects

present

design

lead us to SAT system the detailed

newly-created

stated properties a “policy”) are

on

Now we

to

permitted succeed.

example), and ensures that preserve the security state

sense that some together define In

that

integrity

actions

DESIGN

Basic 3.

the

problem and we introduced An execution

operation

subjects

only those allowed to

file’s by

each

by each subject. This conceptual model cannot be literally followed a practical implementation of the however.

It

intermediate

solve this structure, domains.

functions.

a distinguiahed

the

the This

called

kernel.”

called This can

object tabular develop system, 2.

subsystem “security

one functions,

177

other

miscellaneous

semantic

of added

The

third

notion

model is Generally

inherent

the “security the security

comprises attribute.

all

in

the

state” state

subject To these

reference

During

monitor

must

of the system. of the system

attributes we have

“read”

or

read

and

define state

model contains rules a particular subject may have Therefore, access to an object.

“write”

access

must

these in terms of to which a subject

be

clearly

defined.

changes in the has unconstrained

(the register set, for example). object has the effect of changing subject that is under the influence

of

the

system

In

a

object

based

on

the

monitor

and

other

practical functions

security

hardware.

Interactions

between

system’s

security

subject’s

view

traditional sees the

an state

In

of

the

implementations an efficient

executing are

subject

influenced

system

state.

and

the

addresses

and

The NST for a subject all objects addressable NST entry allows the state of contains accesses can control sense of

information subject. find the

the single object it describes, a set of access rights permitted by the subject to that object. the composition of its NST which objects can be accessed,

subject

ATO is not because the not by rights

but by a check time that LNST

system

of

the

is

executed.

security

one

which

between

support should

practical operations.

operations call the

are Tagged

issue

be

concerns

the

placement

SAT the kernel implemented in a coprocessor Object Processor (TOP).

support

of

In

for

kernel

operations

that we There is

from

“core”

CPO software, including interrupt and code. In general, any interrupt that handling will invoke a simple handler

trap-handling requires TOP that just

captures

to

status the

and

transfers

condition of

can

control

be

analyzed

modifications

support

Modifications include module, expansions of handle

tag

values),

the the

these

addition logical

modifications

between the bus and changes to processor GOT-holding disks.

the

TOP,

and

handled. TOP operations the processor’s instruction

appropriate modifications of the modules. Our initial implementation on a Honeywell Lwel 6 minicomputer

and for A subject (in the but not in

are set; additions.

modifications to in SAT systems. processor subject to

component will be system. of the megabus to

the value-holding microcode, and

the

based

TOP (to interfaces

modules, the addition

of

TOP DESIGN The

TOP prwides

the system performing the TOP’s to illustrate

a capability in allowed access within the TO,

at

the monitor

system

The third practical issue concerns existing system component for use Our design permits the use of many architectures and many bus structures,

about A single actual

state

A second the kernel

microcode

the sense of what access rights are contained in the NST entriez) through the executinn of the operation Load NST (LNST). One LNST operand describes the object to be loaded; it is a distinguished type of BAT object, which we call a “tagged object” (TO). the traditional sense, righta are determined

the

functionality,

mechanism.

appropriately extensions

objects. contains by the system to

of

extensions,

hardware

where

of these must be presented in order to make any Different schemes to reduce the object access. bandwidth implied by this scheme have been proposed; in SAT. each subject has a Name Space Table (NST), which defines the mapping between virtual

the system. among other of the object, location of the

issue concerns of the reference

aspects

Kernel

minimal

of system.

by the In a

4 the design, a set of capabilities;

capability-based system through

in

implemented in software, with the support of the hardware kernel. Since the Ada orientation of SAT are is application-dependent, Ada-oriented features supported in system software, assisted by the basic

particular, how much of the reference monitor should be inherent in the basic system design and how much should be flexible (to permit adaptation In addition, we must to particular applications). define all interactions between executing subjects The latter issue and the reference monitor itself. practical to realize

NST entry. directory, The GOT

hardware and software. Consistent with good design practices, we wish to implement policy in software and mechanisms in hardware. Howwer, kernel functions must be supported in any instance of the SAT system, and therefore can be relegated to

concept,

basic design concept concerns the of the reference monitor itself.

leads us to consider the design concepts

monitor the

Issues

The fundamental division of the

A read of an the state of the of the contents

reference

reference determine

itself.

Practical

system access

Concepts system

to

be accorded the new is held in a master Object Table (GOT).

application-specific

the most structure

the

state

We

of the object. A write, correspondingly, changes the value of an object based on the contents of the register set. Load and store instructions provide obvious examples of read and write accesses, Other access modes are defined in respectively. SAT to support domain constructs. Design

LNST,

contains an entry for wery object The GOT entry for an object contains, information, the security attributes its acl, its type, and the physical

monitor whether

write

execution

proper rights to The system state called the Global

and all object added domain

attributes. The reference determining

the consult

the

178

most

of

the

hardware

support

to

kernel by managing system resources and operations on TOS. Before we discuss details, we will first rwiew a scenario how TOS are used in SAT.

A Basic To

Scenario

their

illustrate

the

the system’s creation of

role

of

security an object

the

TOP

in

maintaining

state, our scenario and the actions that

subject

performs

to

gain

access

to

Then we knowledge

describe of the

how the objectts object to other

that

shows a

the

memory

object.

creator subjects,

permitting them to access the contents object. These scenarios are described the TOP operations performed to effect

can pass thereby

by

of the in terms of the actions.

hierarchical the

system security and assigned a

classification

executing

subject’s

addition, it of a parameter the new object user on whose acting and no initialization completes

and

is

context.

In

security

a TO to

is

a destination

specified

as

a parameter

After the GOT entry

CGEN has been and a new TO,

memory of

the

the

The

and set the

since

there

is

no

completed, but the

of the TOP, the system’s

User-Visible

TOP operations from arbitrary

we describe

these

administrators. grouped into

the

TOP

it

1. 2.

Object Existence TO Copying

3. 4.

Subject System Status

5.

(to which contains

constraints

corresponding

between

the

and attached). length,

rights for each object contained address space of the executing separates a virtual addresa in a

its NST

processor

memory modules are the physical location,

segment

number

is used therefore

to

Entries

in

and

an

the

NMU are

offset.

loaded

contents virtual

will

object. subset In the

entry.

In

only

is (NMU), the

The

from

controls lists. permit images--

megabus The MMU and acceas

segment

MMU into

memory-resident of waiting

data processes,

a central state.

role

in

those that subjects;

can

Other

TOP

users, system are

State Modifications Security State Modifications Query Operations

structure arranged

containing according

In addition to CGEN, there is a TOP DGEN. These two

in

which

the they

to

access Create

sharing

access of this this

restrictions

memory objects. discretionary

can be imposed using access To simplify the SAT prototype, discretionary access controls they apply only to containers.

processor cannot

a portion of Image (CIMG)

describing a contiguous and returns a TO for

can control propagation implementation

on portions of memory objects,

TO Coming. The permits a subject

number

and NST.

a memory

manner

imposed complete

can

be

For access control we do on

second class of TOP operations to copy TOS within memory.

has not be copied

that

to the new TO. is the

been modified to handle by loading them into a

not

Since TOS,

processor register and then storing the contents of In addition, our TOP that register in memory. design does not include any user-visible state, and Therefore, in particular, no TO-holding registers. TO copying must appear to be a memory-to-memory

image

of the NST; upon process swap the MMU is loaded with a pointer to the new memory map for the new process, and residual entries are invalidated. The new memory map state is acquired from a processorknown queues

scenario, and

operations control the lifetime of objects known to the system. Using CGEN and TO copying, a subject can create an object and then propagate a TO describing that entire object to other subjects; in this manner memory sharing can be implemented. In some applications, the creator of an object might

into

are

in the virtual subject. The a fixed manner

index the memory map table, to select one entry in the the

the

Operations

Obiect Existence Operations. which creates a new object, operation for object deletion,

is a new subject

First, new object

6 host system, memory access by a memory management unit

positioned

subvert

the

location

there executing

Once the NST contains an object, be accessed if the processor-generated the

processor

can

access set

to be enforced

The user-visible TOP functions following categories:

A programmer by controlling prototype SAT

selects

the

that

from privileged officer and

a new GOT entry of a memory object

the Level controlled

that

TOP operations.

are accessible the system security

creates subset

address

in

way

include unprivileged

restricted imposed.

type

rights

TOP Operations

User-visible be invoked operations such as

access

LNST being

which play security

wish to pass only the right an object. The TOP operation

and

security

TOP upon policy

the basic instruction

its virtual address space by executing the LNST operation. The TOP, while executing LNST, examines the security state of the system to set the accesa rights to enforce the mandatory and discretionary controls imposed by the system state and the policy being enforced. In addition, access controls domain

system

CGEN operation.

still cannot access the new object. executing subject has to enter the

by

the

by the security

we understand to the detailed

functions enforcing

on the value The acl of

invoked. After CGEN operation,

table, were with

system,

Now that we turn

from

is set to permit owner access to behalf the executing subject is access to other users. An the

the

here set

priorities.

can generate a virtual address system’s security policy.

a

a category

assigned a type based of the CGEN operation.

procedure execution of

returns

state,

map

that table consistent

To create an object, the subject executes the TOP operation Create GOT Entry (CGEN). One parameter of this operation is a TO describing the type of the object to be created. Let us consider a memory object for our example. The CGEN operation creates a new object, allocating memory space to hold its contents, and returns a TO describing the new object. To maintain the new GOT entry is created

execution

state therefore includes the state of this data structure. Since the MMU will not allow any access not specifically permitted by the contents of the

move. Tagged latter

to

179

The two TO copying operations are Copy Object (CTO) and Block Move (BLNV). The permits copy~ng a block of contiguous memory

locations

that

may

operation

for

copying

used if the implementation from Subiect

TOa.

a block

block contains copies the

a temporary

this

contain

State claaa

(The of

processor

memory

TOS, memory

since its contents

Modifications.

affect

the

subject not

can

principal earlier.

acquire

globally

require

System creation, tagged

view

operation in A companion

(and and

ISLO

memory

therefore cannot

(Instantiate

space,

which

not

shared,

by

state.

In

using

the

user

who

output

table

categories The final

associated privileged

and

to

the

modify

attributes

The

TOP-Processor

The

the

SAT TOP ia

of

configured

on

the

6 architecture.

Level

the

an

accesa

existing

a

object,

that system process.

as

system

bus

but

security

a coprocessor

(called the TOP instructions

by a combination of in the TOP processor

by

the

need

fourth

Interface

connected

intercepted interpret the desired

an

without The

with a designated object. TOP operation allows a subject

When a TOP operation issues memory read

owns

labels

structures.

operation allows a subject to TOS corresponding to the security

implemented and programs

Subject-Local

addition,

generate

only in controlled ways such cannot be compromised in the

into the addition,

does

be

of

this claas operation, In

to

auxiliary

privileged list of

and

Security State Modifications. Object object destruction, image creation, object copying all change the system’s

security

for

in

subject’s

temporary

known

a GOT entry)

the operation Object).

to

TOP operations

executing

LVDT, loads a virtual device description subject’s virtual device table (VDT). is

be

CPU register.)

the system. One is LNST, diacusaed

a

required

cannot

the operand operation

megabus) are

in

processor microcode (see below).

is encountered, the processor requests to memory addresses The TOP can then TOP module. specifications on behalf

of

the

and perform executing

object can change the associated acl or pasa ownership of the object to another subject. To change an acl, the owner executes SDAC (Set Discretionary Access Controls), which adda an entry

subject. The TOP is informed of subject changea and tracks the subject security context This information is used to ascertain accordingly. the appropriateness of each requested operation.

to the Certain

The

acl for a designated parameter combinations

(owned) have For acl.

object. the effect example,

removing entries from the owner can aet an entry that supercedea an entry, or he can set an entry that denies acceas to a specified user; this effectively removes the designated user from the acl. To

pasa

ownership,

subjects would object,

must be

both

be

aware

disastrous a protocol

for and

been designed so The two operations GOWN (Give Associated

the of

sending the

and

change.

there to supporting

of the

existing all

OWNerahip) with each

and TWN (Take subject are two

this TOP

support these operationa. One list contains TOa of those objects for which GOWN has been executed but TOWN haa not yet occurred. The second list containa TOS for those objects that have been given to the subject, but for which the subject has not taken ownership (by executing TC%JN). (The obvious synchronization problems do not occur in our system,

since

there

is

operationa

are

Privileged

TOP Operations

A number certain

of

special

This signaling

This

TOP,

that

are

In

whose

functions

prwided

required

in

to

support

ia privileged TO matching.

allows security

operation

and

a bua

signaled can

be

cycle

whereupon subject.

TOP may of

bus

the It

fail,

in

system must be to the system’s

in the dispatch.

protocol TOP will

which

transactions

the interrupt caused to access a non-existent

interface

processor is also case

WI1l

by

does

the

timeout

a bus cycle resource.

shut down, integrity.

cause

will

not

In

since the Note

specify

interrupts

which or

the

SAT prototype,

TOP functions

will

be

implemented in associated disk TOP microprocessor megabus through

software on a microprocessor with an system (which holds the GOT). The will be interfaced to the a etandard Level 6 megabua

interface card application-dependent

designed

to logic

connect to the

arbitrary megabus.

Since the GOT containa the complete system state in a disk system, accesaing the GOT may become a performance bottleneck. All GOT transactions have been carefully designed and the implementation of dwice and memory mappings structured to minimize the number of GOT writes. Furthermore, caching recently-used GOT entries in

to prevent The third

a subject lwel of

to read a specified

the

one

next

TOP initiates

be

realistic

five of these operations TWO (Trusted Write Override), violate the mandatory access permitting information second, SAMS, tests two TOa to they refer to the identical

operation through

this

the

TOP Implementation

indivisible.)

TOP operations

privileged operation TO designating the object.

one

effectively

ayatems. We discuss here. The first, permits writes that controls, thereby downgrading. The determine whether object. cwert

only

the timer

caae, the is critical

operations process

TOP operation

interrupt, to another

that

and signal attempting

OWNership). lists that

may

If

the second part of a eplit memory read Execution of the current subject then with the next instruction. If the TOP will take a long time, the TOP initiatea

processor’s

are

a TOP operation

waya. the

to

possible

for an have

that ownership cannot be lost. used to transfer ownership

of

three quickly,

a processor be dispatched

it

be no owner mechaniema

of

analogoua transaction. proceeds operation

receiving Since

completion

in one executed

out

associated studies we will

a

are

180

with the TOP proceeaor. indicate that this etrategy baae the respond/dispatch

the

we consider M

If simulation ia worthwhile, decision on both

the complexity of the operation whether the necessary security present in the GOT cache.

being state

requested information

devices

and is 3.

PROOFS OF SECURITT

of

that

labels

be

Once

formatted,

malicious exportable

PROPERTIES

criterial design

degree

of

require specification

assurance

that

To

satisfy

implemented .“ a combination design, formal

the

derived the resulting

TCB

this

of structured verification

informal reasoning comprehensive, and SAT

“analysis and

is

Proper

Ideally,

we use

such

a convincing, demonstration

a demonstration

the

rigorously

conducted

skeptical

and

into the concepts comprehensible to of all

Proverties

to

security

could only by others.

of

that

that

can

prwides

being reasoned about. humans and must demonstrate

security “simple

policy security

are the property”

LaPadula.3 read accesa

at

or

permitted security

higher

only levels.

Discretionary exercised represent request

to

security

levels;

subjects

at

equal

“need-to-know”

or

individual

is

or

justified.

and whether by

are

prior

help

manage

us

to

The

formatting

programa translate

2.

that have internal

levels

to

Once

formatted

devicee,

must

be

output

ror must

performed

been verified representations

as

a

and

domains

relations data of

an

between a certain

domains property

types type

and read is

specification.

the

rely

about

even

from check, All

a of

to

when

we

computer work

in

Gypsy is expressive

into a complete for specifying

implementation

in

tools

to generate, are done in 6 an

The

problem

arises

prior

and not proofs

proof’s

the concern effort.

simple

considerable complexity. the applicability of to

the

automated that

Environment. purpose; it is

incorporated adequate

because and

the

and

much

both

5 system. carried out

both

on

systems a manner

that

complete is being

complexity

reason

as

obvious

answers

we

the

Verification for this

well

made

be faulted comprehensible

of in

we

our the well formal

verification and verifying

Gypsy

proofs

that

Smith’ has to design

in

the

security

domain.

a

Formal through

imposed

of

reasoning several

level defines security and

mandated type operations

interpret layers theorems

human-readable is clearly the following

only to

a particular be

abstraction description that the real-world

by

correctly of security

ClaSS displayed

about layers

the SAT system of abstraction.

a set of intuitive an implementation

of

proceeds The highest

notions about a system that

embodies those notions in such a direct perspicuous manner as to leave no doubt security. A mechanical proof is provided, merely to give additional validation of essentially and obviously a tautology. of

and about ita but what ia We then

and refine these notions through several abstraction and reprove the security at each level. At the lowest level of much system detail and the theorems This statement design

level

of

ia are

abstraction

of security of the SAT

visible lengthy

and and

the

demonstrates

is relevant to the system. Intermediate

levels and mappings between neighboring levels are prwided to ahow that the clean, intuitivelysatisfying definition of security and the detailed, system-specific definitions are equivalent.

form.

only

work,

programs of demonstrated

security-relevant.

human-readable

of

machine proofs of the verification

We differ

complex. 1.

the

These

in general, appear on format of such markings Equally clearly, concerns

be

we believe

As with

language environment

on data based on the format of that data. It arises as a security concern, because the format of For example, the data may be security-relevant. “exportable labela,” which are markings of security

format-related

that

Gypsy suited

is

are

restriction

of the SAT.system not directly requirements is in the area Type enforcement restricts

levels, must, output. The device-dependent.

objects

proving the security on automated tools

cannot

use the tools to chain of reasoning.

lower

controls

of

encompasses verification

systems.

of

access

of information own judgment of item of information

judgments may not overrule any by mandatory security policy. A feature by the Al enforcement.

it

attempt

constraints to subjects

write

to

by certain enforcement

levels

incomprehensible about the scope

general and type

of the property”

Mandatory acceas to an object only

For

all

reasoning SAT system

mandatory

SAT analogues and the “*-

by the custodians the custodian’a for a particular

particular

the

from

ensures these properties. that the system enforces

has led the proofs to proofs are not humanly

manner

comprising

Bell and restrict equal

that the

be

that

Proved

properties

types

set example,

attempts at relied heavily

because

the

protected

Ar.preaches

Prior have

insight It must

discourse of the reasoning of the problem area.

be

be

a

withstand

new

of

be written This type

at

Proof

be

sense:

The properties to be proved fall into categories of mandatory, discretionary, enforcement constraints. basic

should

mathematical argument

analysis

the universe encompasses

of

traditional

must

that may seek to alter and therefore effectively

to procedures demonstrates

installation-defined and domains.

layered and

proven

in

exportable

output.

assignment

to types The proof

security.

a proof

The

high

requirement,

leading to comprehensible

output

the

the

suppressed.

from

correctly

top-down techniques,

lest

or

programs labels

declassify The Al formal

class,

garbled

of on

181

Our

proof

structure

differs

in that we reprove abstraction. Some proven

theorems

our prior

only

from

some

theorems security

at

the

at

previoue

each proofs

highest

work

lwel have

lwels

level that

of

are simple suffice to

relevant elaboration

properties process.

properties need not

be

enough convince

are preserved in Howwer, since

are reproven verified to Rather, the

the proof. mediate lwels

that informal the cereful

mauages

conceptual

makes the proof more accessible. not necessary to demonstrate

complexity

only the design specification higher lwels of abstraction

The is binding. exist for rwiewers

and the

as

Our

approach

the

proof

to into

We observe classes of applicationproof military using

of of

the the

system proof.

the

problem

a base

proof

of

a specific

and The

the proof.

base

is

a set

system,

is

To illustrate Domaina,”

the which

*-property mechanism

for data is sufficient

in

or

order

to

use of addenda, are privileged to of

base

abstract in terms The

a proof provided.

in

(by any

the suspension security lwel.

potentially

of

grants

Security the Thus,

global

Property)

clarity single

of

Our formal refinement,

At

of

the

a

abstraction,

the

security are clearly

of

The

must

a sound

with

the design

at

the

formal

is

this level of Nevertheless,

in the at this

lwel,

actual

proof. level

of for Only

a

of

the

finite

nature

introduced model are

of

and

the

SAT constructs.

top-level

machine It

The single model level is factored this level of abstraction.

principal The

where

and

new

design

mediated

notion

at

this

first

each

1$2

level

defines

the

securityall of the

of the security on the security

operations

two

major

in

great

state state.

is the

the

and The

GOT.

internal

classes

of

detail. software

in

an

SAT

applications software, whose operation by the reference monitor, and kernel

extensions, which extend base hardware to produce meets the full and detailed The

are

of the security state and the of the actual security-relevant It accordingly deals with concrete

and are

defines

that introduces

specification

operations.

write

to

At

specification

instructions therefore

visible representations all visible operations

“Trusted the This

cases

formal

actual relevant.

and

the stepwise levels of concepts.

of

configuratiou-

Systels:

set

appeal visible

of the abstract operations at

set

of

first reference hardware, will an Ada Target.

same

levels reasons)

properties tautologous.

and object sets is of the access matrix

operation into three

Abstraction

of

four

interpretation, and the

interpretation

identified

muet

There

of lower

at historical

SAT system provided at this level clearly satisfy our requirement

the subject components

access.

structure consists at successively

become

abstraction.

installation of a trusted domain, an addendum to the baeic proof must be submitted that demonstrates that the domain cannot misuse the degree of trust granted it. This demonstration will, in general, show that the amount of information that “flows down” is harmless and that the flow may be audited. Levels

at

proofs

model lwel, system security of an extended access matrix

and intuitive operation is

*-property) any data at this concept of “trust” Prior

the

visible

the Gypsy verification system is We feel that the definition of security

and of the abstraction

objects

Simple

and

(for

the specification,

to

the

of

become

presented

model,

representation mechanization

(by

is called

exceptions to the mandatory security properties may be required. A trusted domain executing at the highest security lwel in the system can be defined read

sequences

representations

proof

model.8 abstraction

about

consider violate

specific types. to handle all

of abstraction, more complex.

At the defined

divide

what have

We of The

specification.

contain two generic and The base

constrains

finiteness,

lower levels accordingly

top-level

addenda.

addanda

as

and

abstraction, abstract

managing

to

of

arguments are both

applicationproof

addenda

of

generic functionality that can be constructed In order to prwide

These contain features that

security-relwant dependent. In

scope

and

that useful secure systems secuFity-relwant features: or configuration-specific.

be dweloped. detailed system

aPPear complete

of

proof

reasons about the secure systems the SAT technology.

complete

a means

such

operations,

The and

at each lwel of abstraction are functionally equivalent (although we beliwe that to be the case); if the theorems are equivalent then a secure design is specified at each lwel of abstraction. From the point of view of a system constructor,

certifiers complexity

system functionality. monitor at each level

of

Note that it the descriptions

that

concerns

security

at all lwels, mappings guarantee the soundness introduction of inter-

concept is encapsulates

abstraction and prove theorems about it. theorems that are proven correspond to the intuitive notion of security given in the prior Theorems at higher levels of abstraction section. become almost tautologies, since the reference monitor is defined to be secure. Implementation

reasoning reader that the the

the significant monitor, which

all security-relevant define a reference

of

abstraction and then mapped this system functionality between levels of abstraction of system description. We contend that mapping the theorems down prwides a more rigorous and Mappings between the convincing proof structure. levels should

of abstraction, of the reference

kernel

monitor be those

the functionality a reference monitor DoD requirements.

of

hence

is the that

extensions,

and

to be built required for

on the SAT operation as

the

The will then be systm secure applications

initial set of users for SAT developers who wish to produce and more elaborate reference

monitors

language.

in

the

Ada

This

choice

of

initial in

reference

order

to the possible.

to

monitor

provide

characteristics

a secure,

dwelopment

was

Ada-based

community

as

rapidly

made

A small

amount

capability

includes

those

as

trusted

5.

6. Consistent

with

timeliness,

the

set of kernel extensions will In general, kernel extension

be extremely software is

simple. subdivided

into

the

three

this

goal

clasaes,

based

~;;u;;rification.

(It

$ “ in to selectively information classes are

the

of

sense

violate down” in

on

should used

degree

be

here,

of

recalled is

The

trust

e.g., ‘l’he

support”

software

functions

that

that

must

be

verified downgrader

described

above

SUMMARY

privilege

the *-property, security level.)

and/or

trusted

“RSL

RSL

firat

that

the

The

of

“write three

SAT system

is

DoD level

Al

important requirement,

system in

direction

of

forwardness,

designed

to

requirements,

meet

and

exceed

which mandate This proof

properties. turn, drives

the

the

proof

design

in

of

the

great

simplicity

and

straight-

which

we beliwe

the

SAT design

achieves. 1.

Software that is neither trusted nor verified. Such software performs common resource management tasks, and its behavior is mediated in the same fashion as applications software. An example of this class of software is the Ada Run-Time Support Library (RSL), which prwides a virtual the Ada

machine language.

congenial

Software Certain

that kernel

exhibit

security-relevant

to

the

semantica

REFERENCES

1.

August

of 2.

2.

is verified extensions

but not must be

AFB,

to

but

name

and

Both modules security-critical information

a security perform

functions do not

yet flows

level

between

to

a subject.

that involve

are

security

Software example

that is both trusted of such software are

support the downgrading toola must selectively and be verified to do visible A secure interface,

a

levels.

of principle simplifies such The

1.

2.

3.

set

of

software

as the first consist of the

A set of facilities Security Officer import information, security-relevant A very

basic

file

sharing running

to

the from

be

submitted monitor elements.

Dennis

R.

R.

7.

M.K. Smith, An Example Rept, 122,

Horn,

Lipton,

and

Proofs 22,

of

(5),

“Programming

Computations,” 1%6, pp. 143-155. A.

Perlis,

Theorems

May

1979,

“Social

and pp.

Programs,” 271-2S0.

“Model

and

Using Bell Institute of 19S3.

Texas

Design

Proofs

and LaPadula,” for Computing at

Austin,

in

Gypsy:

Tech. Science,

Austin,

Texas,

on 8.

secure downloading the Ada host

permits

Van

Good, R.M. Cohen, C.G. IIosch, L.W. Hunter, “Report on the Language Gypsy, and D.F. Hare, ,, Tech. Rept. ICSCA-CMp-lOj Version 2.0, Institute for Computing Science, University of Texas at Austin, Austin, Texas, September 197S.

Unlveraity November

for built

ACM,

D.I.

E.C.

Multiprogrammed 9, (3), March

and

6.

of

and

for ACM,

DeMillo,

Commun.

An

W.E. Boebert, R.Y. Kain, Extended Matrix Model of Internal Note, Honeywell Center, December SIGSOFT).

for uae by the Systems select audit profiles, and manipulate data bases that

Hansom

1972.

J.B.

to

system

October

4.

user. user a proof

SAT functionality and verification

reference following

A set of facilities for of Ada object programs

controlled programs 4.

that the basic development

Technology FSD/AFSC,

D.E. Bell and L.J. LaPadula, “Secure Computer system: Unified Exposition and Multics Interpretations,” Tech. Rept. MTR-2997, MITRE Corp., Bedford, Masaachusetta, July 1975.

software.

complete

evaluation SAT will

the

Security

ESD-TR-73-51,

3.

5.

of information. Such violate the *-property so only in ways that are authorized Emacs-like for SAT as

“Computer

Study,”

Massachusetts,

Semantica Commun.

and verified. the tools that

to and cleared by an downgrader, with an will be dweloped

19S3.

Anderson,

Processes 3.

Computer CSC-STD-001-S3,

these

properties may not involve the benign violation Examples of this claas of of the *-property. software are labelers, which must be shown to properly format exported labels, and login responders, which must be shown to properly consult a table of passwords before assigning user

J.P.

15,

Planning

trusted. verified

properties,

Department of Defense, “Trusted Systems Evaluation Criteria,”

the

of information between Ada at different security levels

A set of predefine packages that provide an Ada-1anguage interface to the special features of the hardware, such as the TOP operationa

183

1984

(to

and W.D. Young, “The Computer Security,” Systems and Research appear

in

ACM

Suggest Documents