Lecture 1
Lecture 1
Lecture 1
Overview
• What is computer security?
• Why is it important?
• Why is it difficult?
• What can be done?
• Course goals
1
Textbook & Reading Material
Charlie Kaufman, Radia Perlman and Mike Speciner, Network Security:
Private Communication in a Public World, 2nd Edition, Prentice Hall,
2002. ISBN-10: 0-13-046019-2. ISBN-13:978-0-13-046019-6.
Charles P. Pfleeger and Shari Lawrence Pfleeger, Security in Computing,
4th Edition, Prentice Hall, 2006. ISBN-10: 0-13-239077-9. ISBN-13:
978-0-13-239077-4.
William Stallings, Cryptography and Network Security: Principles and
Practices, 4th Edition, Prentice Hall, 2005. ISBN-10: 0-13-187316-4.
ISBN-13: 978-0-13-187316-2.
Ross Anderson, Security Engineering: A Guide to Building Dependable
Distributed Systems, 2nd Edition, Prentice Hall, 2008. ISBN-10:
0-47-006852-3. ISBN-13: 978-0-47-006852-6.
2
Useful Websites
Wikipedia
Darknet:http://www.darknet.org.uk/
DarkReading:http://www.darkreading.com/
OWASP:https://www.owasp.org/index.php/
Main_Page
Forbes Firewall:http://www.forbes.com/sites/
firewall/
Schneier on Security:https://www.schneier.
com/
Defcon: https://www.defcon.org/
Daily Beacon UTK: http://utdailybeacon.
com/ 3
What is computer security
• Most computer or software systems are
concerned with correctness: achieving desired
behavior
• Security is concerned with preventing
undesired behavior
- An attacker/adversary who is actively and maliciously
trying to circumvent any protective measures you put in
place
4
Kinds of undesired behavior
• Stealing information: Confidentiality
- personal information (SSN, credit card #,…)
- corporate secrets (product plans, source code,…)
• Modifying information or functionality:
Integrity
- altering records (accounts, medical records,…)
- installing malware (trojan, spam, bots,…)
• Denying access: Availability
- unable to purchase products
- unable to access banking information
5
The big three (CIA)
6
Security Goals -The big three (CIA)
- Security Goals
There are three primary goals in any security
service:
1. Confidentiality
The principle of confidentiality is that only the
sender and the intended recipient
should be able to access the contents of a
message. Confidentiality gets compromised
if an unauthorized person is able to access the
message. Example of this could be a
confidential email message sent by user A to user
B, which is accessed by user C
without the permission or knowledge of A and B.
This type of attack is called
interception.
7
Security Goals -The big three (CIA)
(cont.)
2. Integrity
When the contents of a message are changed after the
sender sends it, but before
it reaches the intended recipient, we say that the integrity
of the message is lost.
For example, consider that user A sends message to
user B. User C tampers with a
message originally sent by user A, which is actually
destined for user B. User C
somehow manages to access it, change its contents
and send the changed message
to user B. User B has no way of knowing that the
contents of the message changed after user A had sent
it. User A also does not know about this change. This
type
of attack is called modification.
8
Security Goals -The big three (CIA)
(cont.)
3. Availability
The principle of availability is that
resources should be available to
authorized
parties at all times. For example, due to
the intentional actions of an
unauthorized
user C, an authorized user A may not be
able to contact a server B. This would
failure
the principle of availability. Such an
attack is called interruption.
9
Why is security important
• Several high-profile hacks in recent years
- Sony hack: hackers claimed to have taken over 100
terabytes of data (2014)
- 51 UPS stores PoS systems breached, credit card info
stolen for 105,000 trans. (2014); around 40 million credit
and debit card info stolen from Target (2013)
- Adobe: stolen source code and 130 million customer
records including passwords (2013)
- SecurID: stolen tokens permitting compromise of
customers using RSA SecurID devices
- Everywhere in the news…
10
Why is security difficult
• A hacker is not a normal user
- If a typical user accidentally finds a bug that results
in a crash, he will try to avoid it
- A hacker will actively attempt to find bugs in rare
feature interactions and edge cases, and exploit
them to achieve his malicious goals
11
Why is security difficult
(Cont’d)
• It is hard to test
- Software testing or quality assurance follows well-
defined procedures to determine if a software
implements a desired functionality
- How do you determine if a software does not allow
for undesired functionalities? (Penetration testing can
help but only up to a point)
12
Why is security difficult
(Cont’d)
• Principle of Easiest Penetration
- Computer systems are a complex, “target-rich”
environment consisting of: software, hardware, storage
media, data, peripheral devices, people, etc.
- Your security is only as good as your weakest point
- Your computer system is part of “network of systems”
- Increased connectivity: ubiquitous access with mobile
devices and wireless technologies
- Many valuable assets online
13
Why is security difficult
(Cont’d)
• Security is interdisciplinary
- Draws on all areas of CS and other disciplines
>Theory (especially cryptography)
> Networking
> Programming languages/compilers
> Operating systems
> Databases
> AI/learning theory
> Hardware/Computer architecture
> psychology
14
Why is security difficult
(Cont’d)
• Security nowadays is not just about “security”
- Prevention: traditional sense of security…
- Detection, response, audit
> know you are being attacked
> quickly stop the attack
> identify the attacker
> prevent the attack from recurring
- Recovery
> can be more important than prevention
- Economics, insurance, risk management
- Security is a process, not a product
15
What can be done
• Absolute or perfect security is impossible in
any useful system
• Good security is about risk management and
tradeoff
16
Security as risk management
• Software and system security really is “all about
managing risk”
• Risk is the possibility that a particular threat will
adversely impact an information system by
exploiting a particular vulnerability
• Risk management is a process for an organization
to identify and address the risks in their
environment
• Systematic techniques are available for assessing
risk
17
Security as a tradeoff
• The goal is not “to make the system as secure as
possible”
• But instead, “to make the system as secure as
possible within certain constraints” (functionality,
cost, efficiency, usability, simplicity, time-to-market,
etc.)
• Important to evaluate the level of security
necessary or appropriate
• More security not always better
18
Security Jargon:
Threats, Vulnerabilities, Attacks
• Many breaches begin by exploiting a
vulnerability
- A weakness or threat that may be exploited to
cause loss or harm
• Threats occur in the software’s design and
implementation
- A flaw is a threat in the design
- A bug is a threat in the implementation
• A vulnerability can be exploited to perpetrate an
attack
19
Threats, Vulnerabilities,
Attacks
How to address these problems?
20
Types of attacks
21
Passive Attacks
Disclosure of message contents
22
Passive Attacks
Traffic analysis
23
Active Attacks
Masquerade
24
Active Attacks
Replay
25
Active Attacks
Modification
26
Active Attacks
Denial of Service (DoS)
27
Specific Attacks
Attacks on confidentiality:
Eavesdropping,
packet sniffing,
illegal copying
network
28
Attacks on availability: DoS, DDoS attacks (SYN
flooding, smurfing)
network
29
SYN Flooding
A normal connection
between Alice and
a server, the three-way
handshake is correctly
performed.
30
SYN Flooding (Cont’d)
SYN flood: Darth the attacker
sends several packets
but does not send the "ACK"
back to the server.
The connections are hence
half-opened and consuming
server resources.
Alice, a legitimate user,
tries to connect
but the server refuses to
open a connection
resulting in a denial of service.
32
Attacks on Password
Password sniffing
Brute-force attack
Dictionary attack
Phishing
Social engineering
33
Security Services
Authentication: the assurance that the communicating entity
is the one that it claims to be
- Peer entity authentication: to provide confidence in the identity of
the entities connected
- Data origin authentication: to provide assurance that the source of
received data is as claimed
Access control: the prevention of unauthorized use of a
resource
Privacy: protection of personal information
34
Security Service Examples
Software &
Hardware Access
Control Systems
35
Security Service Examples
Authentication
36
Case Study (Preventing
Authentication Hacking Attacks):
Authentication plays a critical role in the security of web
applications. When a user provides his login name and
password to authenticate and prove his identity, the web
application assigns the user
specific privileges to the system, based on the identity
established by the supplied credentials.
An important measure in stopping authentication hacking
attacks is by adding random content on the page
presented to the authenticating client browser. The client
must be
capable of successfully submitting this random content as
part of the authentication process to proceed further in the
web site or application.
The best way to do this is to present the random phrase in
a graphic GIF, JPG or PNG
format using random fonts or colors each time. This can
make it almost impossible for an automated
authentication attacks process to succeed.
37
Case Study (Preventing
Authentication Hacking Attacks):
38
Security Service Examples
In a voting system, we are only interested in who gets the most
votes but not who voted for who
You need to have a valid account to use the lab machines in
EECS
You don’t want your neighbors to know what appliances are
running in your home at what times
You need to input your credit card number, security code,
expiration date, mailing address and phone number to make an
online purchase
You want to hide your real IP address when sending and
receiving packets
Alice does not want Charlie to know what she said to Bob in the
email. Bob wants to make sure the email does come from Alice.
Alice needs to commit to a bid she has placed.
Amazon servers are down the night before Black Friday and
engineers are called to fix this problem
Mobile phone cloning prevention
You don’t want your apps to track you
39