30
EEC 693/793 EEC 693/793 Special Topics in Electrical Special Topics in Electrical Engineering Engineering Secure and Dependable Secure and Dependable Computing Computing Lecture 3 Lecture 3 Wenbing Zhao Wenbing Zhao Department of Electrical and Computer Department of Electrical and Computer Engineering Engineering Cleveland State University Cleveland State University [email protected] [email protected]

EEC 693/793 Special Topics in Electrical Engineering Secure and Dependable Computing Lecture 3 Wenbing Zhao Department of Electrical and Computer Engineering

Embed Size (px)

Citation preview

EEC 693/793EEC 693/793Special Topics in Electrical EngineeringSpecial Topics in Electrical Engineering

Secure and Dependable ComputingSecure and Dependable Computing

Lecture 3Lecture 3

Wenbing ZhaoWenbing ZhaoDepartment of Electrical and Computer EngineeringDepartment of Electrical and Computer Engineering

Cleveland State UniversityCleveland State University

[email protected]@ieee.org

22

Spring 2008Spring 2008 EEC693: Secure & Dependable ComputingEEC693: Secure & Dependable Computing Wenbing ZhaoWenbing Zhao

OutlineOutline

• Types of threats• Meaning of computer security• Vulnerabilities in computer systems• Threats in computer networks

33

Spring 2008Spring 2008 EEC693: Secure & Dependable ComputingEEC693: Secure & Dependable Computing Wenbing ZhaoWenbing Zhao

The Meaning of Computer Security The Meaning of Computer Security • The purpose of computer security is to devise ways

to prevent the weaknesses from being exploited• What we mean when we say that a system is

secure:– Confidentiality: computer-related assets are accessed

only by authorized parties. Confidentiality is sometimes called secrecy or privacy

– Integrity: assets can be modified only by authorized parties or only in authorized ways

– Availability: assets are accessible to authorized parties at appropriate times

44

Spring 2008Spring 2008 EEC693: Secure & Dependable ComputingEEC693: Secure & Dependable Computing Wenbing ZhaoWenbing Zhao

Relationship of Security GoalsRelationship of Security Goals• A secure system must meet all three requirements• The challenge is how to find the right balance

among the goals, which often conflict– For example, it is easy to preserve a particular object's

confidentiality in a secure system simply by preventing everyone from reading that object

– However, this system is not secure, because it does not meet the requirement of availability for proper access

=> There must be a balance between confidentiality and availability

55

Spring 2008Spring 2008 EEC693: Secure & Dependable ComputingEEC693: Secure & Dependable Computing Wenbing ZhaoWenbing Zhao

Relationship of Security GoalsRelationship of Security Goals

66

Spring 2008Spring 2008 EEC693: Secure & Dependable ComputingEEC693: Secure & Dependable Computing Wenbing ZhaoWenbing Zhao

ConfidentialityConfidentiality

• Confidentiality is the security property we understand best because its meaning is narrower than the other two

• However, it is not trivial to ensure confidentiality. For example,– Who determines which people or systems are authorized to

access the current system? – By "accessing" data, do we mean that an authorized party can

access a single bit? pieces of data out of context? – Can someone who is authorized disclose those data to other

parties?

77

Spring 2008Spring 2008 EEC693: Secure & Dependable ComputingEEC693: Secure & Dependable Computing Wenbing ZhaoWenbing Zhao

IntegrityIntegrity• It is much harder to ensure integrity. One reason is that

integrity means different things in different context• For example, if we say that we have preserved the integrity of

an item, we may mean that the item is:– precise– accurate– unmodified– modified only in acceptable ways– modified only by authorized people– modified only by authorized processes– consistent– internally consistent– meaningful and usable

88

Spring 2008Spring 2008 EEC693: Secure & Dependable ComputingEEC693: Secure & Dependable Computing Wenbing ZhaoWenbing Zhao

IntegrityIntegrity• Aspects of integrity: computerized data are the

same as those in source documents; they have not been exposed to accidental or malicious alteration or destruction

• Aspects of integrity: authorized actions, separation and protection of resources, and error detection and correction

• Integrity can be enforced in much the same way as can confidentiality: by rigorous control of who or what can access which resources in what ways

99

Spring 2008Spring 2008 EEC693: Secure & Dependable ComputingEEC693: Secure & Dependable Computing Wenbing ZhaoWenbing Zhao

AvailabilityAvailability• Availability applies both to data and to services (i.e., to

information and to information processing• We say a data item, service, or system is available if

– There is a timely response to our request– There is a fair allocation of resources, so that some requesters are

not favored over others– The service or system involved are fault tolerant - hardware or

software faults lead to graceful cessation of service or to workarounds rather than to crashes and abrupt loss of information

– The service or system can be used easily and in the way it was intended to be used

– ….

1010

Spring 2008Spring 2008 EEC693: Secure & Dependable ComputingEEC693: Secure & Dependable Computing Wenbing ZhaoWenbing Zhao

AvailabilityAvailability• The security community is just beginning to understand

what availability implies and how to ensure it• A small, centralized control of access is fundamental to

preserving confidentiality and integrity, but it is not clear that a single access control point can enforce availability

• Much of computer security's past success has focused on confidentiality and integrity; full implementation of availability is security's next great challenge

1111

Spring 2008Spring 2008 EEC693: Secure & Dependable ComputingEEC693: Secure & Dependable Computing Wenbing ZhaoWenbing Zhao

Vulnerabilities Vulnerabilities

• Vulnerabilities: What would prevent us from reaching one or more of our three security goals

• The three assets (hardware, software and data) and the connections among them are all potential security weak points

1212

Spring 2008Spring 2008 EEC693: Secure & Dependable ComputingEEC693: Secure & Dependable Computing Wenbing ZhaoWenbing Zhao

VulnerabilitiesVulnerabilities

1313

Spring 2008Spring 2008 EEC693: Secure & Dependable ComputingEEC693: Secure & Dependable Computing Wenbing ZhaoWenbing Zhao

Software Vulnerabilities Software Vulnerabilities

• Software is surprisingly easy to delete and to copy• Software is vulnerable to modifications that either

cause it to fail or cause it to perform an unintended task

1414

Spring 2008Spring 2008 EEC693: Secure & Dependable ComputingEEC693: Secure & Dependable Computing Wenbing ZhaoWenbing Zhao

Software Vulnerabilities Software Vulnerabilities • Logic bomb: a program that has been maliciously

modified to fail when certain conditions are met or when a certain date or time is reached

• Trojan horse: a program that overtly does one thing while covertly doing another

• Virus: a specific type of Trojan horse that can be used to spread its "infection" from one computer to another

• Trapdoor: a program that has a secret entry point• Information leaks in a program: code that makes

information accessible to unauthorized people or programs

1515

Spring 2008Spring 2008 EEC693: Secure & Dependable ComputingEEC693: Secure & Dependable Computing Wenbing ZhaoWenbing Zhao

Data VulnerabilitiesData Vulnerabilities

• Data items have greater public value than hardware and software, because more people know how to use or interpret data

• By themselves, out of context, pieces of data have essentially no intrinsic value

• On the other hand, data items in context do relate to cost, perhaps measurable by the cost to reconstruct or redevelop damaged or lost data

1616

Spring 2008Spring 2008 EEC693: Secure & Dependable ComputingEEC693: Secure & Dependable Computing Wenbing ZhaoWenbing Zhao

Data VulnerabilitiesData Vulnerabilities

• Confidential data leaked to a competitor may narrow a competitive edge

• Data incorrectly modified can cost human lives • Inadequate security may lead to financial liability

if certain personal data are made public • The value of data over time is far less

predictable or consistent– Quite often, data is valuable only for a period of time

1717

Spring 2008Spring 2008 EEC693: Secure & Dependable ComputingEEC693: Secure & Dependable Computing Wenbing ZhaoWenbing Zhao

Principle of Adequate Protection Principle of Adequate Protection

• Principle of Adequate Protection: – Computer items must be protected only until they lose

their value– They must be protected to a degree consistent with

their value

1818

Spring 2008Spring 2008 EEC693: Secure & Dependable ComputingEEC693: Secure & Dependable Computing Wenbing ZhaoWenbing Zhao

Security of DataSecurity of Data

Confidentiality prevents unauthorized disclosure of a data item

Integrity prevents unauthorized modification

Availability prevents denial of authorized access

1919

Spring 2008Spring 2008 EEC693: Secure & Dependable ComputingEEC693: Secure & Dependable Computing Wenbing ZhaoWenbing Zhao

Threats in NetworksThreats in Networks

• Networks are specialized collections of hardware, software, and data– Each network node is itself a computing system– It experiences all normal security problems

• A network must also confront communication problems that involve the interaction of system components and outside resources

2020

Spring 2008Spring 2008 EEC693: Secure & Dependable ComputingEEC693: Secure & Dependable Computing Wenbing ZhaoWenbing Zhao

Threats in NetworksThreats in Networks

• The challenges to achieve network security are rooted in – A network's lack of physical proximity– Use of insecure, shared media, and – The inability of a network to identify remote users

positively

2121

Spring 2008Spring 2008 EEC693: Secure & Dependable ComputingEEC693: Secure & Dependable Computing Wenbing ZhaoWenbing Zhao

What Makes a Network Vulnerable What Makes a Network Vulnerable

• Anonymity. An attacker can mount an attack from thousands of miles away and never come into direct contact with the system, its administrators, or users

• Many points of attack—both targets and origins. An attack can come from any host to any host, so that a large network offers many points of vulnerability

2222

Spring 2008Spring 2008 EEC693: Secure & Dependable ComputingEEC693: Secure & Dependable Computing Wenbing ZhaoWenbing Zhao

What Makes a Network VulnerableWhat Makes a Network Vulnerable

• Sharing. Because networks enable resource and workload sharing, more users have the potential to access networked systems than on single computers

• Complexity of system. A network combines two or more possibly dissimilar operating systems

• Unknown network boundary. A network's expandability also implies uncertainty about the network boundary

2323

Spring 2008Spring 2008 EEC693: Secure & Dependable ComputingEEC693: Secure & Dependable Computing Wenbing ZhaoWenbing Zhao

What Makes a Network VulnerableWhat Makes a Network Vulnerable

Unknown network boundary

2424

Spring 2008Spring 2008 EEC693: Secure & Dependable ComputingEEC693: Secure & Dependable Computing Wenbing ZhaoWenbing Zhao

What Makes a Network VulnerableWhat Makes a Network Vulnerable

• Unknown path in message routing. There may be many paths from one host to another. Some intermediate node might not be trustworthy

2525

Spring 2008Spring 2008 EEC693: Secure & Dependable ComputingEEC693: Secure & Dependable Computing Wenbing ZhaoWenbing Zhao

Methods of Defense Methods of Defense

• Harm occurs when a threat is realized against a vulnerability

• To protect against harm, we can neutralize the threat, close the vulnerability, or both

• The possibility for harm to occur is called risk

2626

Spring 2008Spring 2008 EEC693: Secure & Dependable ComputingEEC693: Secure & Dependable Computing Wenbing ZhaoWenbing Zhao

Methods of Defense Methods of Defense

• We can deal with harm in several ways. We can seek to– Prevent it, by blocking the attack or closing the

vulnerability– Deter it, by making the attack harder, but not impossible– Deflect it, by making another target more attractive (or

this one less so)– Detect it, either as it happens or some time after the

fact– Recover from its effects

2727

Spring 2008Spring 2008 EEC693: Secure & Dependable ComputingEEC693: Secure & Dependable Computing Wenbing ZhaoWenbing Zhao

Methods of Defense Methods of Defense –– Multiple Controls Multiple Controls

2828

Spring 2008Spring 2008 EEC693: Secure & Dependable ComputingEEC693: Secure & Dependable Computing Wenbing ZhaoWenbing Zhao

Countermeasures / ControlsCountermeasures / Controls

• Encryption– Scrambling process

• Software controls• Hardware controls

– hardware or smart card implementations of encryption

• Policies and Procedures– Example: change password periodically

• Physical Controls– Example: Locks on doors, guards at entry points

2929

Spring 2008Spring 2008 EEC693: Secure & Dependable ComputingEEC693: Secure & Dependable Computing Wenbing ZhaoWenbing Zhao

Software ControlsSoftware Controls• Internal program controls: parts of the program that enforce

security restrictions, such as access limitations• Operating system and network system controls: limitations

enforced by the operating system or network to protect each user from all other users

• Independent control programs: application programs, such as password checkers, intrusion detection utilities, or virus scanners, that protect against certain types of vulnerabilities

• Development controls: quality standards under which a program is designed, coded, tested, and maintained, to prevent software faults from becoming exploitable vulnerabilities

3030

Spring 2008Spring 2008 EEC693: Secure & Dependable ComputingEEC693: Secure & Dependable Computing Wenbing ZhaoWenbing Zhao

Principle of EffectivenessPrinciple of Effectiveness

• Principle of Effectiveness: Controls must be used—and used properly—to be effective. They must be efficient, easy to use, and appropriate