15-349
Introduction to Computer and
Network Security
Iliano Cervesato
22-24 August 2010
This Lecture
No scare tactic!
What is computer security
Course presentation
Security goals
Risks of computing
Why Computer Security?
Because computing resources and data are valuable
Value of resources
Physical entities
Computing time / disk space / network connections
System being off-line
Value of data
Passwords
Grades
Credit cards
Trade secrets
Military secrets, …
How valuable?
Digital assets
In the eye of the beholder
The owner
The attacker
Reasons for an Attack
What kind of value can an attacker get?
A good laugh
Bragging
Embarrassment
Discredit victim
Inconvenience
Sometimes huge
Monetary gain
Sometimes huge
Personal safety
Attacking what, exactly?
Soft boundaries:
Computer systems
Hardware
Software
Data
Information systems
• Is a program software or data?
• What is firmware?
• FPGA settings?
(networked) computer systems
Processes
Digital assets
Goals/objectives
People
Business aspects
Difference from Physical World
What makes protecting digital assets hard?
Complexity of digital systems
Lots of opportunities
Attacker just needs to find one entry point
Defender must protect them all
No need for physical proximity
Not even being in the same country
Computing monoculture
Low marginal cost
Speed of aggression
Defense takes time
Course presentation
Course Logistics
Time and place
Lectures: Su, Tu, 1:00-2:20 (1031)
Recitations: Th 1:00-1:50 (1031)
Movie nights: (TBA)
3 instructors [Thierry, Iliano, Khaled]
Web page
http://www.qatar.cmu.edu/cs/15349
Book:
Stallings, Brown: Computer Security
Articles on the web site
Article in the news
15-349
Description:
Intro course to computer & network
security
Very broad
Not very deep
Theory <----------------------> Practice
Objectives:
Understand basic concepts in security
Read newspaper/magazine articles
critically
Course organization
5 parts
1.
2.
3.
4.
5.
Intro (this week)
Applied cryptography
Program security, OS security and Trusted systems
Network security
Beyond technology
Discussions
Movies
Teacher for a day
Guest lectures
Recitations
Movie nights
Field trip (maybe)
Assessment
Participation: 10%
Class discussion
Movie nights
Quizzes: 20%
Weekly
Presentation: 15%
Assignments: 55%
Crypto: 15%
Program security: 15%
Network security: 15%
Beyond technology: 10%
No midterm, final!
Let’s get started for real…
Computer & Network Security
Overview
The Security Game
Information and resources have value
Attacker
Appropriate the value of somebody
else’s digital assets
Defender
Protect digital assets from attackers
Prevent attacker from appropriating
value
The Security Theater
Weakness in
the system
Possibility
of damage
enables
Threats
Mitigates
Neutralizes
es
c
du ves
e
R mo
Re
Countermeasures
Limits possibility
or consequence
of damage
Vulnerabilities
Re
ali
ze
s
Disables
Mitigates
Diffuses
Exploits
Attacks
Exploitation of a
vulnerability to
realize a threat
Example
Threat
Student setting own grade on Blackboard
Vulnerabilities
Weak passwords
Incorrect permissions
Soft IT guy
Attacks
Crack password
Ask IT guy to weaken permissions
Countermeasures
Authentication mechanisms
File protection (access control, access login)
Training
Punishments
The CMU Computing Policy
Rules that regulate allowed use of
computing resources
No breaching security
Is it enforceable?
Yes! If caught, lots of trouble
Does it mean that security mechanisms are
not needed?
Needed to make enforcement manageable
Needed because data/resources are valuable
beyond punishment
Needed because policy applies only to CMU
students/faculty/staff
Systems don’t meet their functional requirements
Unintended Behaviors
and remedies
Environmental disruptions
Fault-tolerant architecture
Stronger interfaces
Operator errors
Education and training
Better human-computer interfaces
Poor design/implementation (bugs)
Languages and tools
Testing and verification
Deliberate attacks
Lower expectations
Security engineering
This course
Correctness vs. Security
Correctness: satisfy specifications
For reasonable inputs,
get reasonable output
Security: resist attacks
For unreasonable inputs,
output not completely disastrous
Main difference
Active interference from the environment
Stochastic vs. Malicious Events
Incorrect system
Bugs manifest at
random
Insecure system
Once discovered, a
vulnerability is
attacked over and over
Let’s play
Can we redraw this graph so that the
edges don’t intersect?
Let’s play
What about this one?
The Thrill of Computer Security
Thinking outside of the box!
Exciting for geeky
attackers
Imagined
Anticipated
Exciting for
security
researchers
Pos
s
ibl
e
The Security Game
Information and resources have value
Attacker
Appropriate the value of somebody
else’s digital assets
Defender
Protect digital assets from attackers
Prevent attacker from appropriating
value
The Security Theater
Weakness in
the system
Possibility
of damage
enables
Threats
Mitigates
Neutralizes
es
c
du ves
e
R mo
Re
Countermeasures
Limits possibility
or consequence
of damage
Vulnerabilities
Re
ali
ze
s
Disables
Mitigates
Diffuses
Exploits
Attacks
Exploitation of a
vulnerability to
realize a threat
Attack Goals
Publicity
in the physical world
in the electronic world
Terrorism
Landing in Red Square
Highly contagious viruses
Defacing web pages
Bank robbery
Scams
Plagiarism
Credit card number theft
Phishing
Intellectual property theft
Vandalism
Obstruction of justice
Wiping out data
Denial of service
Fraud
Disruption
Invasion of privacy
Collection of personal data Reading private files
Surveillance
Espionage
.
Some Threats
[Defense Science Board]
Unintended blunders
Hackers driven by technical challenge
Disgruntled employees or customers
Petty criminals
Organized crime
Organized terror groups
Foreign espionage agents
Information warfare
Who are the Attackers?
People making mistakes
Unintentional blunder
Geeks driven by technical challenge
Show it can be done
Often no damage besides planting a flag
Generally very innovative
Insiders
Disgruntled employees
Employees exploiting the company
Organized crime
Adware, span, fraud, DoS for ransom, …
More and more sophisticated
More and more of a problem
States
Very sophisticated
From blocking sites to industrial/military espionage
Script kiddies
Unsophisticated
Unknowledgeable, dumb
Is an Attack a Crime?
Only if some law is broken
Legal framework busy catching up with the
digital age
Tendency to blame hackers for everything
Does it matter?
Law enforcement can help in case of crime
Can be too little too late
Whether illegal or not, one wants to set up
defenses against cyberattacks
Security Properties
security
C
I
A
Confidentiality:
Information is not improperly disclosed
Integrity
Information is not improperly modified
Availability
Information is accessible to legitimate
users
Common Security Properties
C
Secrecy: confidentiality of shared data
Privacy: confidentiality of personal data
Anonymity: confidentiality of identity
Pseudonymity: confidentiality of linkable identity
I
Non-malleability: integrity of data
Authenticity: integrity of source
Non-repudiation: integrity of commitments
Accountability: integrity of responsibility
Authorization: integrity of rights/ownership
A
No denial of service
Conflicting Goals
Anonymity: do not record identity
Non-repudiation: log accesses identifiably
Availability: system replication
Defendability: single access point
Security is often a compromise
Prioritize goals
Goals are not binary
Security is engineered
Security specifications
Security Policies
Collection of security properties
Sometimes conflicting
Application specific
E.g., bank:
Authenticity of clients at ATM and web
Non-repudiation of transactions
Integrity of the books
Secrecy of client and internal data
Availability of alarm system
Exclusivity of duties (avoid conflicts of interest)
Dual control of sensitive transactions
Vulnerable Systems: a Trend
Vulnerability: a weakness that
can be exploited to cause damage
The Internet
Attack : a method to exploit a
vulnerability
World-Wide connection
Distributed: no central design and control
Open infrastructures: modems, wireless, DHCP
Untrusted software: applets, downloads
Unsophisticated users
Security costs
Market now, fix bugs later
Customers want it,
but won’t pay for it
Homogeneity
Hardware: x86
OS: Windows
Applications: COTS
The Compromises of Security
There is no absolute security!
Race between attackers and defenders
Constant innovation
Well-funded, capable, determined attackers succeed
Costs
Punishment
Relative to target’s value
Users’ inconvenience
Users’ acceptance
Hard at a distance
Rarely possible in real time
Works mostly for
old threats
Perceived “unethical”
Detection
No international
legislation
Poor domestic
legislation (DMCA)
Freedom of expression
Intangibility
Is Cryptography the Solution?
Cryptography is not the same as security
No crypto in this lecture
85% of all CERT advisories cannot be fixed by crypto
30-50% of recent security holes from buffer overflow
Computer Security
Operating
systems
Cryptography
Mathematics
Psychology
Networking
Programming
languages
Law
Economics
Human
computer
interaction
Policies, Mechanisms, Assurance
How does it do it?
Does it really do it?
Security
Specifications
Policy
Implementation
Mechanisms
Correctness
Assurance
Distinction between
Mechanisms
Policies
depends on level of abstraction
Assurance can sort things out
Attacker will not politely respect abstraction layers
Abstraction
What is it supposed to do?
Systems
Why are systems vulnerable?
Design/implementation errors
Bugs
Malicious design/implementation
Tampering
Misconfigurations
Unintentional or malicious
Things we didn’t think about
Unanticipated behaviors
Unanticipated circumstances
Countermeasures
Prevent attack (close vulnerability)
Deter it (make it harder)
Deflect it (attacker goes for easier targets)
Detect it
Recover from it
Multiple countermeasures for same
vulnerability
No countermeasure is 100%
Layered defense
Cover multiple facets of the vulnerability
Examples of Countermeasures
Encryption
Useful for some attacks
Software protection
Software engineering processes
Internal program controls
OS/network mechanism
Monitoring programs
Hardware countermeasures
Physical protection
HW firewalls, intrusion detection, segmentation
Redundancy
Policies and procedures
Training users and administrators
Legal, economic, ethical framework
Thinking like an Attacker
Value of asset > cost of attack
Find another victim otherwise
Use cheapest attack that will succeed
Break the weakest link
System is no stronger than the weakest link
Point of easiest penetration
Think outside of the box
Thinking like a Defender
Make inventory of assets
Determine their value
Security goals
Identify threats, vulnerabilities
Get adequate countermeasures
There is no absolute security
Stronger security = more cost
Stronger security = less usability
Do periodic reviews
Assets change in value over time
New attacks launched all the time
What is Computer Security?
A game with rules only for the
defending team
Risk mitigation
Security goals
Policies, mechanisms, assurance