EEC 688/788 EEC 688/788 Secure and Dependable Secure and Dependable Computing Computing Lecture 2 Lecture 2 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]
31
Embed
EEC 688/788 Secure and Dependable Computing Lecture 2 Wenbing Zhao Department of Electrical and Computer Engineering Cleveland State University [email protected].
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
EEC 688/788EEC 688/788Secure and Dependable Secure and Dependable ComputingComputing
Lecture 2Lecture 2
Wenbing ZhaoWenbing ZhaoDepartment of Electrical and Computer EngineeringDepartment of Electrical and Computer Engineering
Cleveland State UniversityCleveland State University
Attributes Fault, error, and failure Approaches to achieving dependability
Security concepts Attributes Vulnerabilities, threats, attacks, and controls
Computer Security: Art and Science, by Matt Bishop, Addison-Wesley Professional, 2002 http://my.safaribooksonline.com/book/networking/security/0201440997
Security in Computing, 4th Edition By Charles P. Pfleeger, Shari Lawrence Pfleeger http://proquest.safaribooksonline.com/0132390779
TerminologyTerminology State: determines the status of the system
A system may be recovered to where it was before a failure if its state was captured and survives the failure
Service delivered by a system: work done that benefits its users User/Client: another system that interacts with the former Function of a system: what the system is intended to do (Functional) Specification: description of the system function Correct service: when the delivered service implements the system
Dependability and its Dependability and its AttributesAttributes Dependability refers to the ability of a distributed system
to provide correct services to its users despite various threats to the system such as undetected software defects, hardware failures, and malicious attacks
A dependable system has the following attributes Availability: a measure of the readiness of the system Reliability: a measure of the system’s capability of providing correct
services continuously for a period of time Integrity: the capability of the system to protect its state from being
compromised due to various threats Maintainability: the capability of the system to evolve after it is deployed Safety: when the system fails, it does not cause catastrophic
Fault, Error, and FailureFault, Error, and Failure The adjudged or hypothesized cause of an error is called a fault An error is a manifestation of a fault in a system, in which the logical
state of an element differs from its intended value A service failure occurs if the error propagates to the service
interface and causes the service delivered by the system to deviate from correct service
The failure of a component causes a permanent or transient fault in the system that contains the component
Service failure of a system causes a permanent or transient external fault for the other system(s) that receive service from the given system
Fault Types - Based on DurationFault Types - Based on Duration
Permanent faults are caused by irreversible device/software failures within a component due to damage, fatigue, or improper manufacturing, or bad design and implementation Permanent software faults are also called Bohrbugs Easier to detect
Transient/intermittent faults are triggered by environmental disturbances or incorrect design Transient software faults are also referred to as Heisenbugs Study shows that Heisenbugs are the majority software faults Harder to detect
Fault Types - Based on Nature of Fault Types - Based on Nature of OutputOutput
Malicious fault: The fault that causes a unit to behave arbitrarily or malicious. Also referred to as Byzantine fault A sensor sending conflicting outputs to different processors Compromised software system that attempts to cause service
failure Non-malicious faults: the opposite of malicious faults
Faults that are not caused with malicious intention Faults that exhibit themselves consistently to all observers, e.g.,
fail-stop A fail-stop system simply stops executing once it fails
Malicious faults are much harder to detect than non-malicious faults
Wenbing ZhaoWenbing Zhao
Fault Types - Based on Fault Types - Based on CorrelationCorrelation Components fault may be independent of one
another or correlated A fault is said to be independent if it does not
directly or indirectly cause another fault Faults are said to be correlated if they are related.
Faults could be correlated due to physical or electrical coupling of components
Correlated faults are more difficult to detect than independent faults
IntegrityIntegrity Integrity refers to the trustworthiness of information, usually
phrased in terms of preventing improper or unauthorized change Data integrity: the content of the information Origin integrity: the source of the data, i.e., authentication
Integrity mechanisms: Prevention mechanisms:
Blocking any unauthorized attempts to change the data Blocking any attempts to change the data in unauthorized ways
Detection mechanisms: report that the data’s integrity is no longer trustworthy Analyze system events to detect problems Analyze the data itself to see if required or expected constraints still hold
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
Relationship of Security Relationship of Security GoalsGoals 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
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
Intrusion tolerance is also a form of recovery because it enables the system to continue operating correctly despite attacks