CH01 CompSec2e
CH01 CompSec2e
1
This chapter provides an overview of computer security. We begin with a
discussion
of what we mean by computer security. In essence, computer security deals
with computer-related assets that are subject to a variety of threats and for which
various measures are taken to protect those assets. Accordingly, the next section
of this chapter provides a brief overview of the categories of computer-related
assets that users and system managers wish to preserve and protect, and a look
at
the various threats and attacks that can be made on those assets. Then, we
survey
the measures that can be taken to deal with such threats and attacks. This we do
from three different viewpoints, in Sections 1.3 through 1.5 . We then look at
some
recent trends in computer security and lay out in general terms a computer
security
strategy.
The focus of this chapter, and indeed this book, is on three fundamental
questions:
2
1. What assets do we need to protect?
2. How are those assets threatened?
3. What can we do to counter those threats?
2
The NIST Computer Security Handbook [NIST95] defines the term
computer security
as follows:
This definition introduces three key objectives that are at the heart of
computer
security:
3
— Data confidentiality : 1 Assures that private or confidential
information is
not made available or disclosed to unauthorized individuals.
3
These three concepts form what is often referred to as the CIA triad
( Figure 1.1 ). The three concepts embody the fundamental security
objectives for
both data and for information and computing services.
For example, the NIST standard FIPS 199 ( Standards for Security
Categorization of Federal Information
and Information Systems ) lists confidentiality, integrity, and availability as
the three
security objectives for information and for information systems.
4
FIPS PUB 199
provides a useful characterization of these three objectives in terms of
requirements
and the definition of a loss of security in each category:
5
Although the use of the CIA triad to define security objectives is well
established,
some in the security field feel that additional concepts are needed to
present
a complete picture. Two of the most commonly mentioned are as follows:
5
Computer security is both fascinating and complex. Some of the reasons follow:
1. Computer security is not as simple as it might first appear to the novice. The
requirements seem to be straightforward, but the mechanisms used to meet those
requirements can be quite complex and subtle.
2. In developing a particular security mechanism or algorithm, one must always consider
potential attacks (often unexpected) on those security features.
3. Hence procedures used to provide particular services are often counterintuitive.
4. Having designed various security mechanisms, it is necessary to decide where to use
them.
5. Security mechanisms typically involve more than a particular algorithm or protocol,
but also require participants to have secret information, leading to issues of creation,
distribution, and protection of that secret information.
6. Computer security is essentially a battle of wits between a perpetrator who tries to find
holes and the designer or administrator who tries to close them.
7. There is a natural tendency on the part of users and system managers to perceive little
benefit from security investment until a security failure occurs.
8. Security requires regular monitoring, difficult in today's short-term environment.
9. Security is still too often an afterthought - incorporated after the design is complete.
10. Many users / security administrators view strong security as an impediment to
efficient and user-friendly operation of an information system or use of information.
6
We now introduce some terminology that will be useful throughout the
book, relying
on RFC 2828, Internet Security Glossary . 3 Table 1.1 defines terms and
Figure 1.2
[CCPS09a] shows the relationship among some of these terms.
7
Figure 1.2 [CCPS04a] shows the relationship among some terminology that will be
useful throughout the book, drawn from RFC 2828, Internet Security Glossary:
Attack -An assault on system security that derives from an intelligent threat; a deliberate
attempt to evade security services and violate security policy of a system.
Risk - An expectation of loss expressed as the probability that a particular threat will
exploit a particular vulnerability with a particular harmful result.
Security Policy - A set of rules and practices that specify how a system or org provides
security services to protect sensitive and critical system resources.
8
Threat - A potential for violation of security, which exists when there is a circumstance,
capability, action, or event that could breach security and cause harm.
8
In the context of security, our concern is with the vulnerabilities of
system
resources. [NRC02] lists the following general categories of vulnerabilities
of a
computer system or network asset:
• It can become leaky . For example, someone who should not have
access to
some or all of the information available through the network obtains such
access.
• It can become unavailable or very slow. That is, using the system or
network
9
becomes impossible or impractical.
9
outside attackers range from amateur pranksters to organized criminals,
international
terrorists, and hostile governments.
9
Finally, a countermeasure is any means taken to deal with a security
attack.
Ideally, a countermeasure can be devised to prevent a particular type of
attack from
succeeding. When prevention is not possible, or fails in some instance, the
goal is to
detect the attack and then recover from the effects of the attack. A
countermeasure
may itself introduce new vulnerabilities. In any case, residual vulnerabilities
may remain after the imposition of countermeasures. Such vulnerabilities
may be
exploited by threat agents representing a residual level of risk to the
assets. Owners
will seek to minimize that risk given other constraints.
10
Table 1.2 , based on RFC 2828, describes four kinds of threat
consequences and lists
the kinds of attacks that result in each consequence.
11
• Interception: Interception is a common attack in the context of
communications.
On a shared local area network (LAN), such as a wireless LAN or a
broadcast Ethernet, any device attached to the LAN can receive a copy of
packets intended for another device. On the Internet, a determined hacker
can gain access to e-mail traffic and other data transfers. All of these
situations
create the potential for unauthorized access to data.
11
logic.
11
by disabling communication links or altering communication
control information. Another way is to overload the system by placing
excess
burden on communication traffic or processing resources.
11
The assets of a computer system can be categorized as hardware,
software, data,
and communication lines and networks. In this subsection, we briefly
describe these
four categories and relate these to the concepts of integrity, confidentiality,
and
availability introduced in Section 1.1 (see Figure 1.3 and Table 1.3 ).
12
HARDWARE A major threat to computer system hardware is the threat to
availability. Hardware is the most vulnerable to attack and the least susceptible to
automated controls. Threats include accidental and deliberate damage to equipment
as well as theft. The proliferation of personal computers and workstations and the
widespread use of LANs increase the potential for losses in this area. Theft of
CD-ROMs and DVDs can lead to loss of confidentiality. Physical and administrative
security measures are needed to deal with these threats.
DATA Hardware and software security are typically concerns of computing center
professionals or individual concerns of personal computer users. A much more
widespread problem is data security, which involves files and other forms of data
controlled by individuals, groups, and business organizations.
Security concerns with respect to data are broad, encompassing availability,
secrecy, and integrity. In the case of availability, the concern is with the destruction
of data files, which can occur either accidentally or maliciously.
13
The obvious concern with secrecy is the unauthorized reading of data files
or
databases, and this area has been the subject of perhaps more research
and effort
than any other area of computer security. A less obvious threat to secrecy
involves
the analysis of data and manifests itself in the use of so-called statistical
databases,
which provide summary or aggregate information. Presumably, the
existence of
aggregate information does not threaten the privacy of the individuals
involved.
However, as the use of statistical databases grows, there is an increasing
potential
for disclosure of personal information. In essence, characteristics of
constituent
individuals may be identified through careful analysis. For example, if one
table
records the aggregate of the incomes of respondents A, B, C, and D and
another
records the aggregate of the incomes of A, B, C, D, and E, the difference
between
the two aggregates would be the income of E. This problem is exacerbated
by the
increasing desire to combine data sets. In many cases, matching several
sets of data
for consistency at different levels of aggregation requires access to
individual units.
Thus, the individual units, which are the subject of privacy concerns, are
available at
various stages in the processing of data sets.
13
COMMUNICATION LINES AND NETWORKS
14
an electronic mail message, and a transferred file may contain sensitive or
confidential information. We would like to prevent an opponent from
learning the
contents of these transmissions.
Passive attacks are very difficult to detect because they do not involve any
alteration of the data. Typically, the message traffic is sent and received in
an
apparently normal fashion and neither the sender nor receiver is aware that
a
third party has read the messages or observed the traffic pattern. However,
it is
feasible to prevent the success of these attacks, usually by means of
encryption.
Thus, the emphasis in dealing with passive attacks is on prevention rather
than
detection.
14
creation
of a false stream and can be subdivided into four categories: replay,
masquerade,
modification of messages, and denial of service.
Replay involves the passive capture of a data unit and its subsequent
retransmission
to produce an unauthorized effect.
14
network,
either by disabling the network or by overloading it with messages so as to
degrade
performance.
14
There are a number of ways of classifying and characterizing the
countermeasures
that may be used to reduce vulnerabilities and deal with threats to system assets.
It
will be useful for the presentation in the remainder of the book to look at several
approaches, which we do in this and the next two sections. In this section, we
view
countermeasures in terms of functional requirements, and we follow the
classification
defined in FIPS PUB 200 ( Minimum Security Requirements for Federal
Information
and Information Systems ). This standard enumerates 17 security-related areas
with
regard to protecting the confidentiality, integrity, and availability of information
systems and the information processed, stored, and transmitted by those
systems.
The areas are defined in Table 1.4 .
15
countermeasures into two categories: those that require computer security
technical
measures (covered in this book in Parts One and Two), either hardware or
software, or both; and those that are fundamentally management issues
(covered in
Part Three).
15
Each of the functional areas may involve both computer security technical
measures and management measures. Functional areas that primarily
require
computer security technical measures include access control, identification
and
authentication, system and communication protection, and system and
information
integrity. Functional areas that primarily involve management controls and
procedures
include awareness and training; audit and accountability; certification,
accreditation,
and security assessments; contingency planning; maintenance; physical
and
environmental protection; planning; personnel security; risk assessment;
and systems
and services acquisition. Functional areas that overlap computer security
technical
measures and management controls include configuration management,
incident
16
response, and media protection.
Note that the majority of the functional requirements areas in FIP PUB 200
are either primarily issues of management or at least have a significant
management
component, as opposed to purely software or hardware solutions. This may
be new
to some readers and is not reflected in many of the books on computer and
information
security. But as one computer security expert observed, “If you think
technology
can solve your security problems, then you don’t understand the problems
and you
don’t understand the technology” [SCHN00]. This book reflects the need to
combine
technical and managerial approaches to achieve effective computer
security.
16
ITU-T Recommendation X.800, Security Architecture for OSI, defines a systematic way
of defining the requirements for security and characterizing the approaches to satisfying
those requirements. The OSI security architecture is useful to managers as a way of
organizing the task of providing security. The OSI security architecture focuses on
security attacks, mechanisms, and services. These can be defined briefly as:
• Security attack: Any action that compromises the security of information owned by an
organization. cf. network security attacks slide earlier
• Security service: A service that enhances the security of the data processing systems
and the information transfers of an organization. The services are intended to counter
security attacks, and they make use of one or more security mechanisms to provide the
service. cf CIA security concepts earlier, or Table 1.5 in text.
17
X.800 defines a security service as a service that is provided by a protocol
layer of
communicating open systems and that ensures adequate security of the
systems or
of data transfers. Perhaps a clearer definition is found in RFC 2828, which
provides
the following definition: a processing or communication service that is
provided by
a system to give a specific kind of protection to system resources; security
services
implement security policies and are implemented by security mechanisms.
18
X.800 divides these services into 6 categories and 14 specific services
( Table 1.5 ). We look at each category in turn. 5 Keep in mind that to a
considerable
extent, X.800 is focused on distributed and networked systems and so
emphasizes
network security over single-system computer security. Nevertheless,
Table 1.5 is a
useful checklist of security services.
19
AUTHENTICATION
20
of a data unit. It does not provide protection against the duplication or
modification of data units. This type of service supports applications like
electronic mail where there are no prior interactions between the
communicating
entities.
20
ACCESS CONTROL In the context of network security, access
control is the ability
to limit and control the access to host systems and applications via
communications
links. To achieve this, each entity trying to gain access must first be
identified, or
authenticated, so that access rights can be tailored to the individual.
21
DATA CONFIDENTIALITY
22
DATA INTEGRITY
We need to make a distinction between the service with and without recovery.
Because the integrity service relates to active attacks, we are concerned with
detection rather than prevention. If a violation of integrity is detected, then the
service may simply report this violation, and some other portion of software or
human intervention is required to recover from the violation. Alternatively, there
are mechanisms available to recover from the loss of integrity of data, as we will
review subsequently. The incorporation of automated recovery mechanisms is, in
general, the more attractive alternative.
23
AVAILABILITY
24
Security Mechanisms
Table 1.6 lists the security mechanisms defined in X.800. The mechanisms
are
divided into those that are implemented in a specific protocol layer, such
as TCP
or an application-layer protocol, and those that are not specific to any
particular
protocol layer or security service. These mechanisms will be covered in
the appropriate
places in the book and so we do not elaborate now, except to comment on
the
definition of encipherment. X.800 distinguishes between reversible
encipherment
mechanisms and irreversible encipherment mechanisms. A reversible
encipherment
mechanism is an encryption algorithm that allows data to be encrypted
and subsequently
decrypted. Irreversible encipherment mechanisms include hash algorithms
and message authentication codes, which are used in digital signature and
message
25
authentication applications.
25
In order to assess the relative severity of various threats and the relative
importance
of various approaches to computer security, it is useful to look at the
experience of
organizations. A useful view is provided by the CSI Computer Crime and
Security
Survey for 2010/2011, conducted by the Computer Security Institute. The
respondents
consisted of over 350 U.S.-based companies, nonprofit organizations, and
public sector organizations.
26
Figure 1.5 indicates the types of security technology used by organizations
to
counter threats. Both firewalls and antivirus software are used almost
universally.
27
We conclude this chapter with a brief look at the overall strategy for
providing
computer security. [LAMP04] suggests that a comprehensive security
strategy
involves three aspects:
28
The first step in devising security services and mechanisms is to develop a security
policy. Those involved with computer security use the term security policy in
various ways. At the least, a security policy is an informal description of desired
system behavior [NRC91]. Such informal policies may reference requirements for
security, integrity, and availability. More usefully, a security policy is a formal statement
of rules and practices that specify or regulate how a system or organization
provides security services to protect sensitive and critical system resources (RFC
2828). Such a formal security policy lends itself to being enforced by the system’s
technical controls as well as its management and operational controls.
In developing a security policy, a security manager needs to consider the
following factors:
• Ease of use versus security: Virtually all security measures involve some penalty
in the area of ease of use. The following are some examples. Access control
mechanisms require users to remember passwords and perhaps perform other
access control actions. Firewalls and other network security measures may
reduce available transmission capacity or slow response time. Virus-checking
software reduces available processing power and introduces the possibility of
system crashes or malfunctions due to improper interaction between the security
software and the operating system.
• Cost of security versus cost of failure and recovery: In addition to ease of use
and performance costs, there are direct monetary costs in implementing and
maintaining security measures. All of these costs must be balanced against the
cost of security failure and recovery if certain security measures are lacking.
The cost of security failure and recovery must take into account not only the
value of the assets being protected and the damages resulting from a security
violation, but also the risk, which is the probability that a particular threat will
exploit a particular vulnerability with a particular harmful result.
29
Security policy is thus a business decision, possibly influenced by legal
requirements.
29
Security implementation involves four complementary courses of action:
30
• Recovery: An example of recovery is the use of backup systems, so
that if data
integrity is compromised, a prior, correct copy of the data can be reloaded.
30
Those who are “consumers” of computer security services and mechanisms (e.g.,
system managers, vendors, customers, and end users) desire a belief that the security
measures in place work as intended. That is, security consumers want to feel that the
security infrastructure of their systems meet security requirements and enforce security
policies. These considerations bring us to the concepts of assurance and evaluation.
31
the development of evaluation criteria that can be applied to any security
system
(encompassing security services and mechanisms) and that are broadly
supported
for making product comparisons.
31
Chapter 1 summary.
32