Introduction to Computer and Network Security 15-349 Iliano Cervesato

advertisement
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
Download