0% found this document useful (0 votes)
61 views

Security Basics and Course

This document provides an overview of a course on computer and network security. It discusses how security is concerned with preventing undesired behavior rather than just achieving desired behavior. It also summarizes that absolute security is impossible to achieve and that security involves managing risks within given constraints. The document emphasizes that computer security involves more than just computers and includes physical, social, and economic factors.

Uploaded by

Raymond
Copyright
© © All Rights Reserved
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
61 views

Security Basics and Course

This document provides an overview of a course on computer and network security. It discusses how security is concerned with preventing undesired behavior rather than just achieving desired behavior. It also summarizes that absolute security is impossible to achieve and that security involves managing risks within given constraints. The document emphasizes that computer security involves more than just computers and includes physical, social, and economic factors.

Uploaded by

Raymond
Copyright
© © All Rights Reserved
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
You are on page 1/ 39

Security Basics and Course

Overview
Introduction and overview
 What is computer/network security? Why is it
important?
 Course philosophy and goals
 Course organization and information
 High-level overview of topics

 A broad perspective on “computer security”


“Security”
 Most of computer science is concerned with
achieving desired behavior
 Security is concerned with preventing undesired
behavior
– Different way of thinking!
– An enemy/opponent/hacker/adversary who is actively
and maliciously trying to circumvent any protective
measures you put in place
One illustration of the difference
 Software testing determines whether a given
program implements a desired functionality
– Test I/O characteristics
– Q/A
 How do you test whether a program does not
allow for undesired functionality?
– Penetration testing helps, but only up to a point
Security is interdisciplinary
 Draws on all areas of CS
– Theory (especially cryptography)
– Networking
– Operating systems
– Databases
– AI/learning theory
– Computer architecture/hardware
– Programming languages/compilers
– HCI, psychology
Fortunately, we are winning the
security battle

 Strong cryptography
 Firewalls, intrusion detection, virus scanners
 Buffer overflow detection/prevention
 User education
Really??!
Security incidents (reported)
Philosophy of this course
 We are not going to be able to cover everything
– We are not going to be able to even mention everything
 Main
Yougoals
will not be a security expert after this class
– A sampling
(after thisofclass,
manyyou shouldaspects
different realizeof
why it
security
would be
– The security dangerous to think you are)
“mindset”
– Become familiar with basic acronyms (RSA, SSL, PGP,
etc.), and “buzzwords” (phishing, …)
You should have a better appreciation of security
– Become an educated security
issues after this consumer
class
– Try to keep it interesting with real-world examples and
“hacking” projects
Course Organization
Administrative
 Me
 TA
 Contact information, office hours, listed on course
webpage
Course webpage
http://www.cs.umd.edu/~jkatz/security/f09
 Syllabus
– Subject to change…
– Slides will be posted for convenience, but they are not
a substitute for attending lecture
– Assigned readings
 Homeworks distributed from the course webpage
 Check frequently for announcements
Course blog
http://cmsc414.wordpress.com
 I will post after each lecture
– Students can post questions/comments about the lecture
– Today: post a “hello” message, and answer the
question: “What do you hope to get from the course?”
 I will post for each homework
– Students can post questions
 I will post links to interesting news articles,
papers, etc.
Textbook
 Recommended text:
– “Network Security…” by Kaufman, Perlman, and
Speciner (most recent edition)
Class participation and readings
 Research papers and news articles will be posted
on the course webpage
– Read these before class and come prepared to discuss
 Material from these readings is fair game for the
exams, even if not covered in class

 Several readings already assigned


Syllabus (tentative)
Module I
 Introduction…
– Is security achievable…?
– A broad perspective on security
 Cryptography
– The basics (take CMSC 456 or read my book for more)
• If you took 456 with me, you can skip
– Cryptography is not the whole solution…
– …but it is an important part of the solution
– Along the way, we will see why cryptography can’t
solve all security problems
Module II
 System security
– General principles
– Security policies
– Access control
– OS security
– “Trusted computing”
 Programming language security
– Buffer overflows, input validation errors
– Viruses/worms
Module III
 Network security
– Identity, PKI
– Authentication and key exchange protocols
– Password and biometric authentication
– Anonymity and pseudonymity
– Privacy
– Some real-world protocols (IPSec/SSL)
– Attacks on network infrastructure (routing, DNS,
DDos)
– Wireless security
Module IV
 Miscellaneous
– Database security
– Web security
– Other topics (spam, …)
A High-Level Introduction
to Computer Security
A naïve view
 Computer security is about CIA:
– Confidentiality, integrity, and availability

 These are important, but security is about much


more…
A naïve view

password
In reality…
 Where does security end?

password

forgot password?
One good attack
 Use public records to figure out someone’s
password
– Or, e.g., their SSN, so can answer security question…
 The problem is not (necessarily) that SSNs are
public
 The problem is that we “overload” SSNs, and use
them for more than they were intended

 Note: “the system” here is not just the computer,


nor is it just the network…
A naïve view
 Achieve “absolute” security
In reality…
 Absolute security is easy to achieve!
– How…?

 Absolute security is impossible to achieve!


– Why…?

 Good security is about risk management


Security as a trade-off
 The goal is not (usually) “to make the system as
secure as possible”…
 …but instead, “to make the system as secure as
possible within certain constraints” (cost,
usability, convenience)
 Must understand the existing constraints
– E.g., passwords…
Cost-benefit analysis
 Important to evaluate what level of security is
necessary/appropriate
– Cost of mounting a particular attack vs. value of attack
to an adversary
– Cost of damages from an attack vs. cost of defending
against the attack
– Likelihood of a particular attack

 Sometimes the best security is to make sure you


are not the easiest target for an attacker…
“More” security not always better
 “No point in putting a higher post in the ground
when the enemy can go around it”
 Need to identify the weakest link
– Security of a system is only as good as the security at
its weakest point…
 Security is not a “magic bullet”
 Security is a process, not a product
Computer security is not just about
security
 Detection, response, audit
– How do you know when you are being attacked?
– How quickly can you stop the attack?
– Can you identify the attacker(s)?
– Can you prevent the attack from recurring?
 Recovery
– Can be much more important than prevention
 Economics, insurance, risk management…
 Offensive techniques
 Security is a process, not a product…
Computer security is not just about
computers
 What is “the system”?
 Physical security
 Social engineering
– Bribes for passwords
– Phishing
 “External” means of getting information
– Legal records
– Trash cans
 Security is a process, not a product…(!)
Security mindset
 Learn to think with a “security mindset” in general
– What is “the system”?
– How could this system be attacked?
• What is the weakest point of attack?
– How could this system be defended?
• What threats am I trying to address?
• How effective will a given countermeasure be?
• What is the trade-off between security, cost, and usability?
An example: airline security
 Ask: what is the cost (economic and otherwise) of
current airline security?
 Ask: do existing rules (e.g., banning liquids) make
sense?
 Ask: are the tradeoffs worth it?
– (Why do we not apply the same rules to train travel?)
– (Would spending money elsewhere be more effective?)
 Ask: how would you get on a plane if you were on
the no-fly list?
– (I will not give you the answer – you can find it online)
– This is a thought experiment only!
Summary
 “The system” is not just a computer or a network
 Prevention is not the only goal
– Cost-benefit analysis
– Detection, response, recovery

 Nevertheless…in this course, we will focus on


computer security, and primarily on prevention
– If you want to be a security expert, you need to keep the
rest in mind
Why is computer security so hard?
 Computer networks are “systems of systems”
– Your system may be secure, but then the surrounding environment
changes
 Too many things dependent on a small number of systems
 Society is unwilling to trade off features for security
 Ease of attacks
– Cheap
– Distributed, automated
– Anonymous
– Insider threats
 Security not built in from the beginning
 Humans in the loop…
 Computers ubiquitous…
Computers are everywhere…
 …and can always be attacked
 Electronic banking, social networks, e-voting
 iPods, iPhones, PDAs, RFID transponders
 Automobiles
 Appliances, TVs
 (Implantable) medical devices
 Cameras, picture frames(!)
– See http://www.securityfocus.com/news/11499
“Trusting trust”
(or: how hard is security?)
“Trusting trust”
 Consider a compiler that embeds a trapdoor into
anything it compiles
 How to catch?
– Read source code? (What if replaced?)
– Re-compile compiler?
 What if the compiler embeds the trojan code
whenever it compiles a compiler?
– (That’s nasty…)
“Trusting trust”
 Whom do you trust?
 Does one really need to be this paranoid??
– Probably not
– Sometimes, yes
 Shows that security is complex…and essentially
impossible
 Comes back to risk/benefit trade-off

You might also like