DOC PREVIEW
Berkeley COMPSCI 162 - Lecture 26 Protection and Security II

This preview shows page 1-2-3-18-19-36-37-38 out of 38 pages.

Save
View full document
View full document
Premium Document
Do you want full access? Go Premium and unlock all 38 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 38 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 38 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 38 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 38 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 38 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 38 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 38 pages.
Access to all documents
Download any document
Ad free experience
Premium Document
Do you want full access? Go Premium and unlock all 38 pages.
Access to all documents
Download any document
Ad free experience

Unformatted text preview:

CS162 Operating Systems and Systems Programming Lecture 26 Protection and Security II,Review: How easy to guess a password?Review: Making password harder to crackReview: Making password harder to crack (con’t)Goals for TodayAuthorization: Who Can Do What?How to perform Authorization for Distributed Systems?Distributed Access ControlSlide 9Analysis of Previous SchemeAnalysis ContinuedAdministriviaEnforcementHost CompromiseBuffer OverflowExample: Normal ExecutionSlide 17Slide 18Slide 19Slide 20Slide 21Slide 22Slide 23Slide 24Example: Buffer OverflowSlide 26Slide 27Slide 28Slide 29Buffer Overflows: Potential SolutionsAutomated Compromise: WormsWorms: Exponentially Fast …. and BigAutomated Compromise: BotsSlide 34Slide 35Some other AttacksSlide 37ConclusionCS162Operating Systems andSystems ProgrammingLecture 26Protection and Security II,April 29, 2010Ion Stoicahttp://inst.eecs.berkeley.edu/~cs162Lec 26.24/29/10 CS162 ©UCB Spring 2010Review: How easy to guess a password?•Ways of Compromising Passwords–Password Guessing: »Often people use obvious information like birthday, favorite color, girlfriend’s name, etc…–Dictionary Attack: »Work way through dictionary and compare encrypted version of dictionary words with entries in /etc/passwd–Dumpster Diving:»Find pieces of paper with passwords written on them»(Also used to get social-security numbers, etc)•Paradox: –Short passwords are easy to crack–Long ones, people write down!•Technology means we have to use longer passwords–UNIX initially required lowercase, 5-letter passwords: total of 265=10million passwords»In 1975, 10ms to check a password1 day to crack»In 2005, .01μs to check a password0.1 seconds to crack–Takes less time to check for all words in the dictionary!Lec 26.34/29/10 CS162 ©UCB Spring 2010Review: Making password harder to crack•How can we make passwords harder to crack?–Can’t make it impossible, but can help•Technique 1: Extend everyone’s password with a unique number (stored in password file)–Called “salt”. UNIX uses 12-bit “salt”, making dictionary attacks 4096 times harder–Without salt, would be possible to pre-compute all the words in the dictionary hashed with the UNIX algorithm: would make comparing with /etc/passwd easy!•Technique 2: Require more complex passwords–Make people use at least 8-character passwords with upper-case, lower-case, and numbers»708=6x1014=6million seconds=69 [email protected]μs/check–Unfortunately, people still pick common patterns»e.g. Capitalize first letter of common word, add one digitLec 26.44/29/10 CS162 ©UCB Spring 2010Review: Making password harder to crack (con’t)•Technique 3: Delay checking of passwords–If attacker doesn’t have access to /etc/passwd, delay every remote login attempt by 1 second–Makes it infeasible for rapid-fire dictionary attack•Technique 4: Assign very long passwords–Long passwords or pass-phrases can have more entropy (randomnessharder to crack)–Give everyone a smart card (or ATM card) to carry around to remember password»Requires physical theft to steal password»Can require PIN from user before authenticates self–Better: have smartcard generate pseudorandom number»Client and server share initial seed»Each second/login attempt advances to next random number•Technique 5: “Zero-Knowledge Proof”–Require a series of challenge-response questions»Distribute secret algorithm to user»Server presents a number, say “5”; user computes something from the number and returns answer to server»Server never asks same “question” twice–Often performed by smartcard plugged into systemLec 26.54/29/10 CS162 ©UCB Spring 2010Goals for Today•Distributed Authorization/Remote Storage•Buffer overflow•Worms and VirusesNote: Some slides and/or pictures in the following areadapted from slides ©2005 Silberschatz, Galvin, and Gagne. Also, slides adapted from Kubiatowicz and Paxson.Lec 26.64/29/10 CS162 ©UCB Spring 2010•How do we decide who is authorizedto do actions in the system?•Access Control Matrix: containsall permissions in the system–Resources across top »Files, Devices, etc…–Domains in columns»A domain might be a user or a group of permissions»E.g. above: User D3 can read F2 or execute F3–In practice, table would be huge and sparse!•Two approaches to implementation–Access Control Lists: store permissions with each object»Still might be lots of users! »UNIX limits each file to: r,w,x for owner, group, world»More recent systems allow definition of groups of users and permissions for each group–Capability List: each process tracks objects has permission to touch»Popular in the past, idea out of favor today»Consider page table: Each process has list of pages it has access to, not each page has list of processes …Authorization: Who Can Do What?Lec 26.74/29/10 CS162 ©UCB Spring 2010How to perform Authorization for Distributed Systems?•Issues: Are all user names in world unique?–No! They only have small number of characters–Need something better, more unique to identify person•Suppose want to connect with any server at any time?–Need an account on every machine! (possibly with different user name for each account)–OR: Need to use something more universal as identity»Public Keys! (Called “Principles”)»People are their public keysDifferent AuthorizationDomainsLec 26.84/29/10 CS162 ©UCB Spring 2010Distributed Access Control•Distributed Access Control List (ACL)–Contains list of attributes (Read, Write, Execute, etc) with attached identities (Here, we show public keys)»ACLs signed by owner of file, only changeable by owner»Group lists signed by group key–ACLs can be on different servers than data»Signatures allow us to validate them»ACLs could even be stored separately from verifiersFile XOwner Key: 0x22347EF…File XOwner Key: 0x22347EF…Group ACL:Key: 0xA786EF889A…Key: 0x6647DBC9AC…Access Control List (ACL) for X:R: Key: 0x546DFEFA34…RW:Key: 0x467D34EF83…RX: Group Key: 0xA2D3498672… Certificate by X’s owner Group Certificate E(H(ACL), Kprivate,owner) E(H(GACL), Kprivate,group)Lec 26.94/29/10 CS162 ©UCB Spring 2010Client 1Domain 1Distributed Access Control•Distributed Access Control List (ACL)–Contains list of attributes (Read, Write, Execute, etc) with attached identities (Here, we show public keys)»ACLs signed by owner of file, only changeable by owner»Group lists signed by group


View Full Document

Berkeley COMPSCI 162 - Lecture 26 Protection and Security II

Documents in this Course
Lecture 1

Lecture 1

12 pages

Nachos

Nachos

41 pages

Security

Security

39 pages

Load more
Download Lecture 26 Protection and Security II
Our administrator received your request to download this document. We will send you the file to your email shortly.
Loading Unlocking...
Login

Join to view Lecture 26 Protection and Security II and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view Lecture 26 Protection and Security II 2 2 and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?