Lecture-1 Overview of Security Fundamentals (Revised)
Lecture-1 Overview of Security Fundamentals (Revised)
Lecture-1
• Most developers and operators are concerned with correctness: achieving desired
behavior. (What should DO?)
• A working banking web site, word processor, blog,…
•Security is concerned with preventing undesired behavior. (What should Not Do?)
•Consider an employee/opponent/hacker/adversary who is actively and
maliciously trying to circumvent any protective measures you put in place
What is security?
A condition of being protected against undesired behavior (danger or loss)
2
Kinds of undesired behavior
3
Kinds of undesired behavior
4
A definition of computer security
Computer security is the protection given to an automated system to ensure its integrity, availability, and
confidentiality. This includes safeguarding hardware, software, data, and communication systems from
unauthorized access or harm.
• Computer security:
The protection afforded to an automated information system
NIST 1995 6
Key Security Goals / Requirements :: CIA Triad
7
Key Security Goals / Requirements :: CIA Triad
• Confidentiality:
o Concealing sensitive information
o Applies to storage of information
o Applies to the transmission of the information
• Integrity
o Data or information is intact
o Changes can only be made by authorized entities
o Unwanted changes violates integrity, for e.g. malicious attacks, interruption in system
(power surge)
• Availability
o Information needs to be available to authorized entities
o Information needs to be constantly changed, which means it must be accessible to
authorized entities.
o Imagine what would happen to a bank if the customers could not access their
accounts for transactions.
8
Key Security Goals / Requirements :: CIA Triad
Confidentiality means that only authorized people or system can access the data
or resource.
• Confidentiality
• Data confidentiality: Assures that confidential information is not disclosed to
unauthorized individuals
9
Implementation Concept :: Confidentiality
• Confidentiality:
1. Encryption
2. Steganography
Integrity
• Integrity refers to the trustworthiness of data or resources.
1. Data integrity means that data can only be modified by authorized
people or system in authorized ways
11
Implementation Concept:: Data Integrity
Data integrity
• Hashing
12
Implementation Concept:: Origin Integrity
13
Implementation Concept:: Origin Integrity
Digital Signature
14
Implementation Concept:: Origin Integrity
15
Other concepts to a complete security picture
16
Three key objectives (the CIA triad)
• Availability
• Availability means that people has the ability to use the
information or resource desired.
17
Table 1.3
Computer and Network Assets, with Examples of Threats
Availability Confidentiality Integrity
Equipment is stolen or
An unencrypted CD-
Hardware disabled, thus denying
ROM or DVD is stolen.
service.
A working program is
modified, either to
Programs are deleted, An unauthorized copy cause it to fail during
Software
denying access to users. of software is made. execution or to cause it
to do some unintended
task.
An unauthorized read
of data is performed. Existing files are
Files are deleted,
Data An analysis of modified or new files
denying access to users.
statistical data reveals are fabricated.
underlying data.
Messages are destroyed Messages are modified,
Communication or deleted. Messages are read. The delayed, reordered, or
Lines and Communication lines traffic pattern of duplicated. False
Networks or networks are messages is observed. messages are
rendered unavailable. fabricated. 18
Levels of Impact
19
Examples of security requirements:
Confidentiality
• Student grade information is an asset whose confidentiality is
considered to be very high
• The US FERPA Act: grades should only be available to students, their parents, and
their employers (when required for the job)
20
Examples of security requirements:
Integrity
• A hospital patient’s allergy information (high integrity data): a doctor
should be able to trust that the info is correct and current
• If a nurse deliberately falsifies the data, the database should be restored to a
trusted basis and the falsified information traced back to the person who did it
21
Examples of security requirements:
Availability
• A system that provides authentication: high availability requirement
• If customers cannot access resources, the loss of services could result in financial
loss
• A public website for a university: a moderate availably requirement; not critical but
causes embarrassment
22
Challenges Of Computer Security
Computer security is not simple
One must consider potential (unexpected) attacks
attackers only need to find a single weakness, the developer needs to
find all weaknesses
Procedures used are often counter-intuitive
23
Security: Terminology
Examples:
Hardware
Software
Data
24
Security: Terminology
Examples:
• digital document
• database
• password
• encryption key
• …….
• ….
25
Security: Terminology
Examples:
26
Security: Terminology
27
Security: Terminology
• Malicious contents
• applications, documents, files, data or other resources that have
malicious features or capabilities embedded, disguised or hidden
in them
• Drive-by downloads
Viruses
Worms
Ransomware
Trojan horses
Backdoors
Bots, botnets
Threats at both client and server levels
28
Security: Terminology
• Vulnerability – weakness of an asset or control that can be exploited by a
threat
• Flaw or weakness in a system's design, implementation, or operation and
management that could be exploited to violate the system's security policy.
If you tell someone "I am going to kill you," this is an example of a threat.
• Threats
• Capable of exploiting vulnerabilities
• Represent potential security harm to an asset
• Malicious contents are threat for cyber systems
30
Security: Terminology
32
Security: Terminology
• Countermeasure - An action, device, procedure, or technique that
reduces a threat, a vulnerability, or an attack by eliminating or
preventing it, by minimizing the harm it can cause, or by discovering
and reporting it so that corrective action can be taken
• 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. 33
Security Concepts and Relationships
To ensure Security,
We must eliminate Bugs and design Flows
and/or make them Harder to Exploit.
34
Security Concepts and Relationships
35
Security Concepts and Relationships
36
Most Common Security Threats
Types of hackers:
Attack Consequences
• Unauthorized Disclosure
• exposure, interception, inference, intrusion
• Deception
masquerade, falsification, repudiation
• Disruption
incapacitation, corruption, obstruction
• Usurpation
misappropriation, misuse
38
Security Attack:: Classification Based on
Effects on the System
Passive Attack Active Attack
• Attempts to learn or make use of • Attempts to alter system resources
information from the system but or affect their operation
does not affect system resources • Involve some modification of the
• Eavesdropping on, or monitoring data stream or the creation of a
false stream
of, transmissions
• Four categories:
• Goal of attacker is to obtain • Replay
information that is being • Masquerade
transmitted • Modification of messages
• Denial of service
• Two types:
• Release of message contents
• hard to prevent so aim to detect
• Traffic analysis
39
• are hard to detect so aim to prevent
Security Attack:: Classification Based on
Effects on the System
Passive Attack Active Attack
• In a passive attack, the attacker’s goal is
just to obtain information • An active attack may change the data
or harm the system
• This means that the attack does not
• Attacks that threaten the integrity and
modify data or harm the system.
availability are active attacks
However, the attack may harm the sender
or the receiver of the message • Active attacks are normally easier to
detect than to prevent, because an
• Attacks that threaten confidentiality: attacker can launch them in a variety
snooping and traffic analysis are passive of ways
attacks
40
Security Attack:: Classification Based on
Security Goals
• Security Attacks can also be categorized in another two ways.
• Based on Security Goals
Network
41
Security Attacks:: Threatening Confidentiality
Snooping or Eavesdropping:
Threat against confidentiality
Unauthorized access to or interception of data.
For example, a file transferred through the Internet may contain confidential
information. An unauthorized entity may intercept the transmission and use the
contents for his/her own benefit.
42
Security Attacks:: Threatening Confidentiality
Traffic analysis:
Threat against confidentiality
Attackers can obtain some other type of information by monitoring online
traffic.
For example, an attacker can find the electronic address (such as the e-mail address)
of the sender or the receiver. They can collect pairs of requests and responses to
help them guess the nature of transaction.
43
Security Attacks:: Threatening Integrity
Modification of Message:
Threat against Integrity
After intercepting or accessing information, the attacker modifies the
information to make it beneficial to themselves.
For example, a person sends a request to his/her bank to ask for payment for a
job he/she has done. The attacker intercepts the message and sends it again to
receive another payment from the bank.
45
Security Attacks:: Threatening Integrity
• Masquerade or Spoofing :
• Threat against Integrity
• happens when the attacker impersonates somebody else.
For example, an attacker might steal the bank card and PIN of a bank
customer and pretend that he/she is that customer. An attacker may also
pretend to be the bank and steal customer information. 46
Security Attacks:: Threatening Integrity
• Repudiation:
• Threat against Integrity
• This attack is caused either by the sender or receiver. The sender of the message
might later deny that he/she has sent the message; the receiver of the
message might later deny that he/she has received the message.
An example of denial by the sender would be a bank customer asking his/her bank to send some money to
a third party but later denying he/she has made such a request.
An example of denial by the receiver could occur when a person buys a product from a manufacturer and
pays for it electronically, but the manufacturer later denies having received the payment and asks to be paid.
47
Security Attacks:: Threatening Availability
49
Attack, Mechanism and Service
50
Security Mechanisms
• Encipherment (Encryption)
• Access control
• Routing control
• Authentication exchange
• Integrity protection
• Checksums
• Hash Functions
• Message Authentication Codes (MACs)
• Blockchain and Distributed Ledger Technologies
• Digital signature
• Notarization
• Traffic padding
• Etc. 51
Security Mechanisms
• ITU-T (X.800) also recommends some security mechanisms to provide the
security services defined in the previous section.
Encipherment:
It refers to hiding or covering data, and can provide
confidentiality. Today two techniques are used for encipherment,
• Cryptography
• Steganography
52
Security Mechanisms
Data Integrity:
This mechanism appends to the data a short check value that
has been created by a specific process from the data itself.
If the two checkvalues are the same, the integrity of data has
been preserved.
53
Security Mechanisms
Digital Signature:
A digital signature is a means by which the sender can electronically sign the data
and the receiver can electronically verify the signature.
The sender uses a private key to sign the data and the receiver uses the public key of
the sender to verify that indeed the data is sent by that sender.
54
Security Mechanisms
Authentication Exchange:
In authentication exchange, two entities exchange some messages to prove
their identity to each other.
For example, one entity can prove that she knows a secret that only she is
supposed to know.
55
Security Mechanisms
Traffic Padding:
This means inserting some bogus data into the data traffic to thwart the
adversary’s attempt to use the traffic analysis.
56
Security Mechanisms
Routing Control:
It means selecting and continuously changing different available routes
between the sender and the receiver to prevent the attacker from
eavesdropping on a particular route.
57
Security Mechanisms
Notarization:
This means selecting a third trusted party to control the communication
between two entities.
This can be done, for example, to prevent repudiation.
58
Security Mechanisms
Access Control:
Access control uses methods to prove that a user has access right to the
data or resources owned by a system.
Examples of proofs are passwords and PINs.
59
Security Services
60
Security Services
Data Confidentiality:
It is designed to protect data from disclosure attack.
The service as defined by X.800 is very broad and encompasses
confidentiality of the whole message or part of a message and also protection
against traffic analysis.
That is, it is designed to prevent snooping and traffic analysis attack.
61
Security Services
Data Integrity:
It is designed to protect data from modification, insertion, deletion, and
replaying by an adversary.
It may protect the whole message or part of the message.
Anti-change
Anti-replay
62
Security Services
Authentication:
This service provides the authentication of the party at the other end of the
line.
In connection-oriented communication, it provides authentication of the
sender or receiver during the connection establishment (peer entity
authentication).
In connectionless communication, it authenticates the source of the data (data
origin authentication).
Peer entity
Data origin 63
Security Services
Nonrepudiation:
This service protects against repudiation by either the sender or the receiver
of the data.
In nonrepudiation with proof of the origin, the receiver of the data can later
prove the identity of the sender if denied.
In nonrepudiation with proof of delivery, the sender of data can later prove that
data were delivered to the intended recipient.
Proof of origin
Proof of delivery
64
Security Services
Access Control:
It provides protection against unauthorized access to data.
The term access in this definition is very broad and can involve reading,
writing, modifying, executing programs, and so on.
65
Security Services and Mechanisms
66
Relation between Services and Mechanisms
67
References
68