cmsc 414 computer and network security jonathan katz
Post on 18-Dec-2015
223 views
TRANSCRIPT
![Page 1: CMSC 414 Computer and Network Security Jonathan Katz](https://reader035.vdocuments.mx/reader035/viewer/2022062421/56649d255503460f949fc5e6/html5/thumbnails/1.jpg)
CMSC 414Computer and Network Security
Jonathan Katz
![Page 2: CMSC 414 Computer and Network Security Jonathan Katz](https://reader035.vdocuments.mx/reader035/viewer/2022062421/56649d255503460f949fc5e6/html5/thumbnails/2.jpg)
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”
![Page 3: CMSC 414 Computer and Network Security Jonathan Katz](https://reader035.vdocuments.mx/reader035/viewer/2022062421/56649d255503460f949fc5e6/html5/thumbnails/3.jpg)
“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
![Page 4: CMSC 414 Computer and Network Security Jonathan Katz](https://reader035.vdocuments.mx/reader035/viewer/2022062421/56649d255503460f949fc5e6/html5/thumbnails/4.jpg)
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
![Page 5: CMSC 414 Computer and Network Security Jonathan Katz](https://reader035.vdocuments.mx/reader035/viewer/2022062421/56649d255503460f949fc5e6/html5/thumbnails/5.jpg)
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
![Page 6: CMSC 414 Computer and Network Security Jonathan Katz](https://reader035.vdocuments.mx/reader035/viewer/2022062421/56649d255503460f949fc5e6/html5/thumbnails/6.jpg)
Fortunately, we are winning the security battle
Strong cryptography
Firewalls, intrusion detection, virus scanners
Buffer overflow detection/prevention
User education
![Page 7: CMSC 414 Computer and Network Security Jonathan Katz](https://reader035.vdocuments.mx/reader035/viewer/2022062421/56649d255503460f949fc5e6/html5/thumbnails/7.jpg)
Really??!
Security incidents (reported)
![Page 8: CMSC 414 Computer and Network Security Jonathan Katz](https://reader035.vdocuments.mx/reader035/viewer/2022062421/56649d255503460f949fc5e6/html5/thumbnails/8.jpg)
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 goals– A sampling of many different aspects of security
– The security “mindset”
– Become familiar with basic acronyms (RSA, SSL, PGP, etc.), and “buzzwords” (phishing, …)
– Become an educated security consumer
– Try to keep it interesting with real-world examples and “hacking” projects
You will not be a security expert after this class(after this class, you should realize why it
would be dangerous to think you are)
You should have a better appreciation of securityissues after this class
![Page 9: CMSC 414 Computer and Network Security Jonathan Katz](https://reader035.vdocuments.mx/reader035/viewer/2022062421/56649d255503460f949fc5e6/html5/thumbnails/9.jpg)
Course Organization
![Page 10: CMSC 414 Computer and Network Security Jonathan Katz](https://reader035.vdocuments.mx/reader035/viewer/2022062421/56649d255503460f949fc5e6/html5/thumbnails/10.jpg)
Administrative
Me
TA
Contact information, office hours, listed on course webpage
![Page 11: CMSC 414 Computer and Network Security Jonathan Katz](https://reader035.vdocuments.mx/reader035/viewer/2022062421/56649d255503460f949fc5e6/html5/thumbnails/11.jpg)
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
![Page 12: CMSC 414 Computer and Network Security Jonathan Katz](https://reader035.vdocuments.mx/reader035/viewer/2022062421/56649d255503460f949fc5e6/html5/thumbnails/12.jpg)
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.
![Page 13: CMSC 414 Computer and Network Security Jonathan Katz](https://reader035.vdocuments.mx/reader035/viewer/2022062421/56649d255503460f949fc5e6/html5/thumbnails/13.jpg)
Textbook Recommended text:
– “Network Security…” by Kaufman, Perlman, and Speciner (most recent edition)
– Will only be used for a portion of the course
Several other good texts out there– Ask me if you are interested
Will supplement with other readings (distributed on class webpage)
![Page 14: CMSC 414 Computer and Network Security Jonathan Katz](https://reader035.vdocuments.mx/reader035/viewer/2022062421/56649d255503460f949fc5e6/html5/thumbnails/14.jpg)
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
![Page 15: CMSC 414 Computer and Network Security Jonathan Katz](https://reader035.vdocuments.mx/reader035/viewer/2022062421/56649d255503460f949fc5e6/html5/thumbnails/15.jpg)
Course requirements
Homeworks– About 4-5 throughout the semester
– Programming portion will be done with a partner
Each student will receive a computer account – You should have already been assigned a GRACE
account
![Page 16: CMSC 414 Computer and Network Security Jonathan Katz](https://reader035.vdocuments.mx/reader035/viewer/2022062421/56649d255503460f949fc5e6/html5/thumbnails/16.jpg)
Syllabus (tentative)
![Page 17: CMSC 414 Computer and Network Security Jonathan Katz](https://reader035.vdocuments.mx/reader035/viewer/2022062421/56649d255503460f949fc5e6/html5/thumbnails/17.jpg)
Syllabus 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
![Page 18: CMSC 414 Computer and Network Security Jonathan Katz](https://reader035.vdocuments.mx/reader035/viewer/2022062421/56649d255503460f949fc5e6/html5/thumbnails/18.jpg)
Syllabus II
System security– General principles
– Security policies
– Access control
– OS security
– “Trusted computing”
Programming language security– Buffer overflows, input validation errors
– Viruses/worms
![Page 19: CMSC 414 Computer and Network Security Jonathan Katz](https://reader035.vdocuments.mx/reader035/viewer/2022062421/56649d255503460f949fc5e6/html5/thumbnails/19.jpg)
Syllabus 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
![Page 20: CMSC 414 Computer and Network Security Jonathan Katz](https://reader035.vdocuments.mx/reader035/viewer/2022062421/56649d255503460f949fc5e6/html5/thumbnails/20.jpg)
Syllabus IV
Miscellaneous– Database security
– Web security
– Other topics (spam, …)
![Page 21: CMSC 414 Computer and Network Security Jonathan Katz](https://reader035.vdocuments.mx/reader035/viewer/2022062421/56649d255503460f949fc5e6/html5/thumbnails/21.jpg)
A High-Level Introductionto Computer Security
![Page 22: CMSC 414 Computer and Network Security Jonathan Katz](https://reader035.vdocuments.mx/reader035/viewer/2022062421/56649d255503460f949fc5e6/html5/thumbnails/22.jpg)
A naïve view
Computer security is about CIA:– Confidentiality, integrity, and availability
These are important, but security is about much more…
![Page 23: CMSC 414 Computer and Network Security Jonathan Katz](https://reader035.vdocuments.mx/reader035/viewer/2022062421/56649d255503460f949fc5e6/html5/thumbnails/23.jpg)
A naïve view
password
![Page 24: CMSC 414 Computer and Network Security Jonathan Katz](https://reader035.vdocuments.mx/reader035/viewer/2022062421/56649d255503460f949fc5e6/html5/thumbnails/24.jpg)
In reality…
Where does security end?
password
forgot password?
![Page 25: CMSC 414 Computer and Network Security Jonathan Katz](https://reader035.vdocuments.mx/reader035/viewer/2022062421/56649d255503460f949fc5e6/html5/thumbnails/25.jpg)
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…
![Page 26: CMSC 414 Computer and Network Security Jonathan Katz](https://reader035.vdocuments.mx/reader035/viewer/2022062421/56649d255503460f949fc5e6/html5/thumbnails/26.jpg)
A naïve view
Achieve “absolute” security
![Page 27: CMSC 414 Computer and Network Security Jonathan Katz](https://reader035.vdocuments.mx/reader035/viewer/2022062421/56649d255503460f949fc5e6/html5/thumbnails/27.jpg)
In reality…
Absolute security is easy to achieve!– How…?
Absolute security is impossible to achieve!– Why…?
Good security is about risk management
![Page 28: CMSC 414 Computer and Network Security Jonathan Katz](https://reader035.vdocuments.mx/reader035/viewer/2022062421/56649d255503460f949fc5e6/html5/thumbnails/28.jpg)
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…
![Page 29: CMSC 414 Computer and Network Security Jonathan Katz](https://reader035.vdocuments.mx/reader035/viewer/2022062421/56649d255503460f949fc5e6/html5/thumbnails/29.jpg)
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…
![Page 30: CMSC 414 Computer and Network Security Jonathan Katz](https://reader035.vdocuments.mx/reader035/viewer/2022062421/56649d255503460f949fc5e6/html5/thumbnails/30.jpg)
“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
![Page 31: CMSC 414 Computer and Network Security Jonathan Katz](https://reader035.vdocuments.mx/reader035/viewer/2022062421/56649d255503460f949fc5e6/html5/thumbnails/31.jpg)
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…
![Page 32: CMSC 414 Computer and Network Security Jonathan Katz](https://reader035.vdocuments.mx/reader035/viewer/2022062421/56649d255503460f949fc5e6/html5/thumbnails/32.jpg)
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…(!)
![Page 33: CMSC 414 Computer and Network Security Jonathan Katz](https://reader035.vdocuments.mx/reader035/viewer/2022062421/56649d255503460f949fc5e6/html5/thumbnails/33.jpg)
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?
![Page 34: CMSC 414 Computer and Network Security Jonathan Katz](https://reader035.vdocuments.mx/reader035/viewer/2022062421/56649d255503460f949fc5e6/html5/thumbnails/34.jpg)
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!
![Page 35: CMSC 414 Computer and Network Security Jonathan Katz](https://reader035.vdocuments.mx/reader035/viewer/2022062421/56649d255503460f949fc5e6/html5/thumbnails/35.jpg)
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
![Page 36: CMSC 414 Computer and Network Security Jonathan Katz](https://reader035.vdocuments.mx/reader035/viewer/2022062421/56649d255503460f949fc5e6/html5/thumbnails/36.jpg)
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…
![Page 37: CMSC 414 Computer and Network Security Jonathan Katz](https://reader035.vdocuments.mx/reader035/viewer/2022062421/56649d255503460f949fc5e6/html5/thumbnails/37.jpg)
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
![Page 38: CMSC 414 Computer and Network Security Jonathan Katz](https://reader035.vdocuments.mx/reader035/viewer/2022062421/56649d255503460f949fc5e6/html5/thumbnails/38.jpg)
“Trusting trust”(or: how hard is security?)
![Page 39: CMSC 414 Computer and Network Security Jonathan Katz](https://reader035.vdocuments.mx/reader035/viewer/2022062421/56649d255503460f949fc5e6/html5/thumbnails/39.jpg)
“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…)
![Page 40: CMSC 414 Computer and Network Security Jonathan Katz](https://reader035.vdocuments.mx/reader035/viewer/2022062421/56649d255503460f949fc5e6/html5/thumbnails/40.jpg)
“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
![Page 41: CMSC 414 Computer and Network Security Jonathan Katz](https://reader035.vdocuments.mx/reader035/viewer/2022062421/56649d255503460f949fc5e6/html5/thumbnails/41.jpg)
Next time:begin cryptography