|
|
| For many years, the de facto standard on relia-
bility used in the United States was MIL-STD-
785. With the demise of that standard under
MIL-SPEC Reform, much more attention has
been given to commercial standards. Un-
fortunately, what many reliability managers
and practitioners have found is a confusing and
endless list of standards on reliability. In many
cases, standards not labeled "reliability" are,
nonetheless, reliability standards. This article
explores how national and international stan-
dards are developed, the proliferation (real and
perceived) of reliability standards brought
about by defense acquisition reform, and ways
for improving the development of reliability
standards.
Standardization in the United States
Within the United States, standards are devel-
oped by either the US Government or through
a voluntary process within the private sector.
Within the Government, the Department of
Defense published most reliability standards.
As already stated, these standards have either
been canceled (e.g., MIL-STD-785) or been
converted to handbooks. For all essential pur-
poses, the development of reliability standards
in the US is now done in the private sector.
The American National Standards Institute
(ANSI) has been the administrator and coordi-
nator of the United States private sector volun-
tary standardization system for 81 years. ANSI
does not develop standards but facilitates devel-
Introduction
Telecommunications and computer & infor-
mation systems are part of our daily routine for
personal and business activities. Telephone,
finance, Federal Reserve, energy, Federal elec-
tions, stock exchanges, air traffic control, as
well as critical governmental responsibilities for
public safety and law enforcement all depend
heavily on networked information systems
which are potentially vulnerable to network-
based attacks. The massive interconnection of
computerized communications and informa-
tion networks has provided infinite opportuni-
ties to our adversaries, placing our nation at
serious risk.
Private industry manages risk by protecting
their information systems assets in accordance
with their perceptions of the commercial value
of the asset, its vulnerability, and the threats to
it. However, private industry has the alternative
of writing off losses as a cost of doing business
or purchasing some form of protection through
insurance. This alternative is not possible at the
national level.
The situation will likely worsen. The factors
that contribute to increased risk, in particular
the huge growth in inter-networking and the
tremendous expansion in data handling capaci-
ties, show no signs of let-up. We continue to put
massive amounts of information in electronic
RAC is a DoD Information Analysis Center Sponsored by the Defense Technical Information Center and Operated by IIT Research Institute
INSIDE
T h e J o u r n a l o f t h e
Standardization in
Reliability
Engineering Information Assurance
into Information Systems
5
FAQ's About IEC
Dependability Standards
6
Call for Papers
14
Industry News
15
Got Data?
Let's Make a Deal
16
From the Editor
18
New from RAC
18
Panelists Sought
to Advise
19
In Memoriam
20
Calendar
22
Help from RAC
By Ned H. Criscimagna, Reliability Analysis Center
By Deborah A. Cerino, Air Force Research Laboratory
Reliability Analysis Center
Fourth Quarter--1999
continued on page 2
continued on page 8
T h e J o u r n a l o f t h e R e l i a b i l i t y A n a l y s i s C e n t e r
F o u r t h Q u a r t e r 1 9 9 9
8
locations, accessible to a wide range of
foreign and internal network-based
threats. The potential for large-scale dis-
ruption of major portions of the nation-
al infrastructure is a critical problem.
A coordinated, sustained, Federal
Government response is essential to pre-
clude an information-based national dis-
aster.
What is Information Assurance?
Joint Chiefs of Staff Publication 3-13
defines
information
assurance
as:
"Information operations that protect
and defend information systems by
ensuring their availability, integrity,
authentication, confidentiality, and non-
repudiation. This includes providing for
restoration of information systems by
incorporating protection, detection, and
reaction capabilities."
The Office of the Assistant Secretary
of Defense for Command, Control, and
Communications (OASD C3) website
defines information assurance as "the
component of information operations
that assures DoD's operational readiness
by providing for the continuous avail-
ability and reliability of information sys-
tems and networks. Information assur-
ance protects the Defense Information
Infrastructure
against
exploitation,
degradation, and denial of service, while
providing the means to efficiently recon-
stitute and reestablish vital capabilities
following an attack."
More informally, information assur-
ance describes the process of protecting
America's critical infrastructure of
telecommunications and computer tech-
nology. Information has become a
strategic national asset and the mainte-
nance and protection of our information
systems has become a major national
concern for the United States. The fol-
lowing sections describe the current
information assurance deficiencies, and
a new program to develop a state-of-the-
art software development environment
to design information assurance into
information systems - getting it right the
first time around.
What is Currently Done to Provide
Information Assurance?
The Federal Government is struggling to
address solutions, to put constrained
resources towards critical aspects of the
problem, and to develop a long-range
goal to develop a robust information
infrastructure. Although there are many
points at which existing work interacts
together, the overall picture is one of
fragmentation and inadequacy. An
organized effort to broadly address all
aspects of information assurance has
been slow to materialize.
In 1997, the Defense Advanced
Research Projects Agency (DARPA) in
conjunction with the Air Force Research
Laboratory (AFRL), Rome Research
Site, teamed to attack these problems.
The
Information
Assurance
(IA)
Program was initiated to begin address-
ing some aspects of infrastructure securi-
ty issues in terms of availability, integri-
ty, and confidentiality. The work is
investigating security vulnerabilities in
distributed information systems to
develop architectures, systems, and tech-
niques for providing protection from
attack and exploitation.
Security issues addressed in the pro-
gram include guarding against and being
able to withstand attacks against the
confidentiality of the system, the integri-
ty of its data and functions, and its avail-
ability to provide needed levels of service
to support the mission. Possible attacks
include insertion of malicious code,
break-ins from other networks, and mis-
chievous unauthorized users. The securi-
ty architecture will permit the use of the
best available preventive protection
mechanisms. However, since no security
technology can completely prevent mali-
cious exploitation of vulnerabilities, it
must also provide capabilities for contin-
ually assessing the system's security pos-
ture, and for detecting and reacting to
attempted
or
successful
attacks.
Reaction may include taking further
action to track down or expel the attack-
er, raising levels of security checking, or
redirected resources to allow continued
operation of critical functions if the sys-
tem has been damaged or degraded. An
overall goal is the ability to manage secu-
rity adaptively, responding to changes in
the security situation by adjusting the
security configuration, protection mech-
anisms, and monitoring levels. An over-
all architecture is scheduled for comple-
tion late year 2000.
Assurance, in the context of the IA
Program, is the confidence that can be
established that the system operates as
intended from a security perspective and
protects what it is meant to protect.
Currently, there is no way to com-
pare, contrast, specify and/or evaluate
the information assurance levels of
information systems.
Engineering Information Assurance
continued from page 1
T h e J o u r n a l o f t h e R e l i a b i l i t y A n a l y s i s C e n t e r
F o u r t h Q u a r t e r 1 9 9 9
9
What is Needed?
Careful structuring and analysis of a sys-
tem during development can assure that
a system operates as intended from a
variety of perspectives. However, proper-
ties of interest/importance must be spec-
ified up-front. Information assurance
must be designed into information sys-
tems, and continually assessed to ensure
the work product of each lifecycle devel-
opment phase maintains the appropriate
level of appropriate properties. If levels
begin to trail off as the development of
the system progresses, rework of the
product must be accomplished. In addi-
tion, there may be several different
designers and analysts over the system
lifecycle. As systems evolve and their
components are updated, the system
effectively becomes redesigned, necessi-
tating an accompanying re-analysis of
the required properties.
The associated human cognitive abil-
ities necessary to develop and effectively
employ increasingly large and complex
information systems have grown dra-
matically. Even modest information sys-
tems can require hundreds of pages of
documentation. Such systems offer rich
functionality; but it is not possible for
any single person to understand such
systems in their entirety. System users
may not be aware of existing compo-
nents and tools, may not know how to
access them or when to use them, and
may not understand the outputs of tools
and how to modify them to accommo-
date their particular objectives. Support
for all these types of software develop-
ment problems must be provided in
order to have any amount of informa-
tion assurance in the system.
An information assurance design
environment is needed to address the
development problems identified above.
The environment must incorporate
knowledge about how components fit
together and interact. Such an environ-
ment must be able to recognize sub-
optimal design choices and inefficient or
inappropriate design structures. It must
be able to facilitate trade-off analyses
and be a platform for experimentation.
It must be able to allow the comparative
analysis of alternative designs for speci-
fied information assurance properties.
Information Assurance Science
and Engineering Tools (IASET)
Program
DARPA and AFRL initiated a new
Information Assurance Science and
Engineering Tools (IASET) Program in
September 1999. This four year program
will begin to address the problems cited
above and provide a first-cut, but useful,
framework for information systems
design and assessment, yielding quantifi-
able information assurance properties.
This program will provide: a place to
combine methods, tools and experimen-
tation; a software platform for integrat-
ing diverse tools; a distributed environ-
ment that allows for distant collabora-
tion; and the ability to capture rationale
and wisdom gained for future design and
assessment. The formalization of design
and assessment will lead to consistent,
reliable and useful information.
A primary concern in the develop-
ment of an information assurance design
and assessment environment and sup-
porting toolset is support for system
evolvability. An evolutionary system
must be flexible enough to adapt and,
sometimes, be modified while it is in
use. Over a long period of time change is
inevitable and technologies are needed
to effectively and efficiently handle those
changes. It is planned that this environ-
ment will be populated with a represen-
tative set of tools for information assur-
ance purposes. The environment will be
demonstrated on real-world problems,
such as the Air Force Battlespace
Infosphere.
Technologies Needed
To create the environment, enabling
software development tools and tech-
niques are needed. The following tech-
nologies are planned to be included in
the IASET environment.
· Environment Framework
The development of an IA design and
assessment environment will be a frame-
work into which a diverse collection of
science-based assurance tools and other
necessary components can be integrated
such that tools, components, and the
users of the environment can effectively
interact across the lifecycle. The environ-
ment will not only support the iterative
design and assessment processes that are
used to create information systems, but
will also enhance these processes through
tool interoperability, data storage and
sharing, and rapid information access.
The environment will provide standard
interfaces to common services required
by information assurance tools, and the
developers of these tools, to ensure that
the syntactic and semantic properties of
tool data are consistently understood and
interrelated throughout the enterprise
(by the environment, tools, and people).
The environment will promote a com-
mon look and feel for integrated tools,
and will support varying levels of inte-
gration (loose vs. tight; fine-grained vs.
coarse) and a variety of integration mech-
anisms (process and data control, appli-
cation programming interfaces, object
referencing, import/export, message
passing, databases, etc.) to provide the
widest range of possibilities for tool
providers to integrate into the environ-
ment. The environment will be an open
system that conforms to selected integra-
tion standards (e.g., CORBA, DCOM,
HTTP, HTML, WWW, TCP/IP, XML,
UML, ODBC).
· Metrics
Software measurement enables the
evaluation of the quality of software
products and of the capabilities of orga-
nizational software processes, allowing
the specification, management, im-
provement, and acceptance of processes
and products. Metrics should enable
comparison of information assurance
properties between systems and within
systems. The IASET Program will per-
form research in this area taking into
consideration categories of existing met-
rics, new ones needed for information
assurance, how they relate to one anoth-
er, how decisions can be made from
them, the math needed to operate on
them, benchmarks needed, and methods
to be used. The solution will be an inte-
grated approach rather than an ad hoc
collection of point solutions.
· Methodologies
An important component of the suc-
cess of the program is the requirement
for a comprehensive set of methodolo-
gies for overall information assurance
specification, design, assessment, opera-
tion, and evolution of the system under
development. The challenge will be to
create usable, effective methodologies
that are general yet extensible and flexi-
T h e J o u r n a l o f t h e R e l i a b i l i t y A n a l y s i s C e n t e r
F o u r t h Q u a r t e r 1 9 9 9
10
ble, repeatable and consistent, automat-
able and cost effective, and ultimately
validatable.
· Modeling
Modeling and modeling tools/tech-
niques to analyze different, interdepend-
ent characteristics of systems such as per-
formance, safety, security, and reliability
as well as models of information systems
operation, faults, and events (attacks,
adversaries, countermeasures, etc.) will
promote the effective evolution of sys-
tems with high assurance attributes.
Models can explicitly represent the
designer's understanding of an entire
system, including the information pro-
cessing architecture, the physical archi-
tecture, and the environment it operates
in. Using modeling technology one can
capture the requirements, actual archi-
tecture, and the environment of a system
in the form of high-level models.
Requirements models will allow the
explicit representation of desired func-
tionality and/or non-functional proper-
ties. Architecture models represent the
actual structure of the system to be built,
while the environment models capture
what the "outside world" of the system
looks like. Integrated modeling can be
used for the automatic synthesis of
information system software, guarantee-
ing the correctness of the resulting code
with respect to certain properties.
· Scenarios
Scenario techniques can be applied at
several levels to support the develop-
ment and assessment of information
assurance. Most system development
approaches to date have primarily
focused on system development/evolu-
tion from a pure product phase perspec-
tive, with little or no linkage to user
application context. A scenario-based
approach can describe the relationships
that exist between information system
concepts, requirements and design com-
ponents. The information assurance
metrics developed can be affiliated with
scenarios for the purpose of rating infor-
mation system design approaches.
Another key payoff area for scenario
methods and tools is reducing the
amount of time, effort and resources it
takes to design application scenarios to
test and evolve the new information
assurance paradigm. Scenario methods
and tools can be employed for testing
new information assurance doctrine,
principles and metrics.
· Design and Assessment Tools
Such As:
Fault Tolerant Techniques Fault
tolerant techniques such as error detec-
tion, assertions, replication, exception
handling, backward and forward error
recovery, state restoration and check-
pointing, and data diverse techniques
will be necessary. Data-diverse fault tol-
erance techniques can be used effective-
ly to provide a high degree of informa-
tion assurance. These techniques facili-
tate designing high data integrity into a
system by providing a flexible, coherent
structure for replicating data in diverse
forms that resist any single attempt at
corruption, managing operations on
each copy of the dataset, and identifying
which datasets are reliable and which
have been corrupted.
Wrappers A wrapper is a software
layer used to change the interface of a
component or to give new properties,
such as fault tolerance or security, to the
interaction between components. A
wrapper forms a boundary for that part
of the system. By changing wrappers
component interfaces can be changed to
allow new connections between compo-
nents. Properties can be changed to sat-
isfy new requirements. Software wrap-
pers are often used to assemble existing
subsystems into a larger system with new
properties and functions. The wrappers
know the protocols needed to make the
subsystems work together even if they
were not originally designed for a com-
mon purpose. A dependable wrapper
imparts critical properties to each com-
ponent that it wraps, for example, fault
tolerance and/or security. Wrappers for
dependable systems and wrappers with
variable sets of protocols have been
implemented. Research is needed for the
development of new adaptable wrapper
technology and the scale-up of existing
wrapper technology to become part of
the information assurance design and
assessment environment to enable the
successful development of Information
Assurance software systems.
Architecture Notations and Represent-
ations Software architecture is an area
of growing importance. Software archi-
tecture is: 1) a medium of communica-
tion among a project's various stakehold-
ers, 2) the earliest set of design decisions
in a project, and 3) a high-level abstrac-
tion of the system. The study and prac-
tice of software architecture is still
immature. Rigorous techniques need to
be developed to describe software archi-
tectures so that the architectures can
be analyzed to predict nonfunctional
system properties (such as those that
are part of information assurance).
Moreover, architecture-based activities
need to be more precisely defined and
supported with processes and tools, and
need to be smoothly incorporated into
existing development processes. Specific
areas for further research include:
Representation How to communi-
cate an architecture. This problem has
manifested itself as one of representing
architectures with linguistic facilities,
but the problem also includes selecting
the set of information to be communi-
cated (i.e., represented with a language).
In an effort to address these problems,
formal languages for representing and
reasoning about software architecture
have been developed. These languages,
called architecture description languages
(ADLs), seek to increase the understand-
ability and reusability of architectural
designs, and enable greater degrees of
analysis.
Analysis How to analyze an archi-
tecture to predict qualities about sys-
tems that manifest it, or how to evaluate
an architecture for fitness. More gener-
ally, how to compare and choose
between competing architectures to
guarantee information assurance for
certain required properties of interest.
Design Critics Software critics can
help solve development problems by
providing the system developer with
selective information at the time it is
needed. A critic is a software system that
provides a reasoned opinion about a
product or action and provides this
opinion to a human "user." Critics,
unlike passive help systems, do not
require users to ask a question. Critics
T h e J o u r n a l o f t h e R e l i a b i l i t y A n a l y s i s C e n t e r
F o u r t h Q u a r t e r 1 9 9 9
11
allow users to be in control and inter-
rupt only when user's actions could be
helped. An advantage of critics is that
learning occurs as a natural product of
the problem solving process. The critic
approach is an effective use of knowl-
edge-bases to guide developers/users in
their tasks.
Testing
Regardless of the software techniques
used to develop the software, the end
result is software code and that code
needs to be assessed. This code needs to
be thoroughly tested so that, with a high
level of confidence, the system user can
be assured the software will correctly
perform its intended function. Research
is needed to improve and scale-up exist-
ing test and analysis technologies to
support the development of information
assurance systems. This includes static
and dynamic analyzers to perform such
analyses as data flow analysis, depen-
dency tracing/checking, and test cover-
age for assessing software qualities,
demonstrating the absence of certain
classes of undesirable behaviors, and
understanding
and
predicting
the
impact of change. Hybrid processes
combining specification and modeling,
analysis and testing, and metric evalua-
tion are needed.
Ontologies
The expectation that numerous software
tools and systems can be effectively
designed to address large, complex infor-
mation assurance problems requires the
development of a well-defined shared
ontology to formally describe the nature
and substance of the problem domain.
Without such a formal description, the
continued advancement and refinement
of solutions to the problem are hindered
by difficulties in integration, communica-
tion, and consistency.
The main purpose of an ontology is
to enable communication between com-
puter systems in a way that is independ-
ent of the individual system technolo-
gies, information architectures and
application domain. The key ingredients
that make up an ontology are a vocabu-
lary of basic terms and a precise specifi-
cation of what those terms mean. The
term `ontology' has been used in this
way for a number of years by the artifi-
cial intelligence and knowledge repre-
sentation community, and is now
becoming part of the standard terminol-
ogy of a much wider community includ-
ing object modeling and XML.
In information technology, an ontol-
ogy is the working model of entities and
interactions in some particular domain
of knowledge or practices. In this usage,
an ontology is a set of concepts such as
things, events, and relations - that are
specified in some way (such as specific
natural language) in order to create an
agreed-upon vocabulary for exchanging
information. An ontology to support the
IASET problem domain is needed.
Conclusion
In spite of all efforts devoted to improv-
ing the quality of software systems, the
reality is that: 1) there may be remaining
faults in software, 2) the hardware can
fail, 3) operators can misuse systems, and
4) the outside environment can behave
badly. It is necessary to continually work
to solve these hard problems. The devel-
opment of an information assurance
design and assessment environment will
begin to solve some of these. It will pro-
vide a vehicle to quantify the properties
the software was designed for, provide a
measurement of those properties, and
allow comparison of components, sub-
systems, and systems.
It is becoming increasingly clear that
we will not be able to assert that a system
is completely assured from all possible
attacks, but that it is possible to assure a
system for certain properties and that
certain types of attacks will produce a
minimal degree (if any) of disruption
worst case. If we develop a system using
the types of technologies described in
this paper then it will be possible for
someone to assert: "This system was
designed with these information assur-
ance properties. It has been assessed with
particular system disruption goals in
mind and found to exhibit the following
flaw(s) which created the following
degree of disruption." It's not a perfect
solution, but it will be possible to know
something about what will happen when
the system is faced with the "worst" risk
from a rational adversary.
Deborah A. Cerino is a computer
engineer and has been working in
software engineering since 1981.
She can be reached at the Air Force
Research Laboratory, AFRL/IFTD,
525 Brooks Road,
Rome NY 13441-4505
(315) 330-1445
cerinod@rl.af.mil
New RAC Catalog Available
Descriptions and price data for all RAC publications, as well as information on RAC training, consulting services,
START sheets, RAC Journal subscriptions, the RAC web page and the RAC data sharing consortium, are provid-
ed in the RAC product catalog. A new issue is now available. To request your free copy, call RAC toll-free at (888)
RAC-USER (888 722-8737).
|
|
|
|