authentication and access control - personal web …apkerr/itis6200_03_authen+access... · related...
TRANSCRIPT
Authentication and Access Control
Related Chapters
• Authentication and Access control:
– CHAPTER 56, Biometrics
– CHAPTER 40, Password-based Authenticated Key Establishment Protocol
– CHAPTER 61, Access Controls
2
• Authentication typically takes place prior to access to data or services being granted
• Organization’s security policy dictates who, when and how (one) should be deemed “authentic”
3
Authentication --- 1st Line of Defense
Authentication in Real Life
• People recognize you based on your appearance or voice • A guard authenticate you by comparing you with the picture
on your badge • A postman gives you your mail because you are in the house • How do we do authentication remotely on computer?
4
Alice (prover)
Bob (verifier)
Eve
Attacks on Authentication
• Eve’s Goal: To impersonate Alice to Bob
• To achieve her goal, Eve the attacker might (In typical order of difficulty): – Protocol Eavesdropping: Eavesdrop on protocol messages
between Alice and Bob
– Verifier Impersonation to Prover: Run the authentication protocol with Alice by impersonating as verifier Bob
– Honest Verifier Knowledge Compromise: Break into Bob’s verification equipment and read all data stored in it
5
Authentication Mechanisms
• What you know
– passwords, personal information
• What you are (biometrics)
– fingerprints, voiceprint, signature dynamics
• What you have
– a key, a ticket, a passport, a smartcard
6
What you know
7
Password
• a password is NOT directly stored in computers. Instead, the output of a one-way hash function, with the password as an input, is stored.
• one-way function y = f(x) – Given x, computing y is easy, that is,
x → y or f(x) is easy.
– Given y only, computing x is infeasible, that is, x ← y or f -1(y) is infeasible.
8
Password & Login (Local)
• For user i, OS stores (si, vi) in a system file – si is the salt for user i
– vi= f(si,pi)
– f is a 1-way function
– pi is user i’s password
• At login, the user supplies a password, say p’i. The system compares f(si,p’i) with the stored value vi, Login is successful only if f(si,p’i)= vi
9
Dictionary Attacks
10
alice, bob, cat, dog, eddie,
1980april, 9876543210, ……
p f(s,p)=v ? yes
no
Get the next entry
Success! you got the password
What’s given: a hashed password v What to find: a password p and a piece of salt s such that f(s,p)=v
Off-line vs. On-line Password Guessing
• On-line guessing: open a session and type passwords until succeed
– Easy to defeat: ATM will eat your card if you fail 3 times
• Off-line guessing: record some communication between you and the server, go home, and run a dictionary attack
– Hard to defeat
11
Tools of the Trade
12 GPU farm
Password Recovery Tools
• John the Ripper:
– For various operating systems
– http://www.openwall.com/john/
• Cain & Abel
– For Windows
– http://www.oxid.it/cain.html
• Hashcat 13
Rainbow Tables
• Used to recover hashed passwords
• Reduces required computation time
– Plaintext/hash pair is pre-computed
• Reduces required storage resources
• Counter by the use of a salt
– random length noise added to password before hash algorithm is applied
14
Password Management
15
• Threats to password protocols – Passwords are selected by users (people) – Passwords are managed by people: ask him/her directly (I am a sys
admin doing a test...) – Careless users: Write it down and Post It! – Eavesdropping is still one of the major attacks on passwords (over
shoulder?) – Choose the same password for different machines and for different
purposes – A simple Trojan horse program may also run on unattended
machines in a public terminal room
Require Frequent Password Changes?
• Each 90 days change password? Change to same password
• Must change to different value? OK, change to xxx and then change back
• Must be different from previous n passwords? OK, change to garbage n times and then change back
• Not allowed to change password in 2 days? OK, my new password is oldpwd1, oldpwd2…
• System checks weak password? OK, change to a random one and write down and put it on terminal or under keyboard
16
17
Weakness of Passwords
Length Number Fraction of Total
1 55 0.004
2 87 0.006
3 212 0.02
4 449 0.03
5 1260 0.09
6 3035 0.22
7 2917 0.21
8 5772 0.42
Total 13787 1.0
Figure 1. Observed Password Length (from E. Spafford’s paper, 1992)
Password Crackers
• Trying the user’s name, initials, account name, and other relevant personal information (130 different permutations for each user were tried)
• Trying words from various dictionaries
• Trying various permutations on the words from Step 2 (this include making the first letter uppercase or a control character, making the entire words uppercase, reversing the word, changing the letter o to 0, etc.)
• Trying various capitalization permutations on the words from Step 2 that were not considered in Step 3)
18
19
Some Statistics on Passwords
Type of Password Search Size Number of Matches Percentage
User/account name 130 368 2.7%
Character sequences 866 22 0.2%
Numbers 427 9 0.1%
Chinese 392 56 0.4%
Place names 628 82 0.6%
Common names 2239 548 4.0%
Female names 4280 161 1.2%
Male names 2866 140 1.0%
Uncommon names 4955 130 0.9%
Myths & legends 1246 66 0.5%
Shakespearean 473 11 0.1%
Sports terms 238 32 0.2%
20
Some Statistics on Passwords (2)
Type of Password Search Size Number of Matches Percentage
Science fiction 691 59 0.4%
Movies and actors 99 12 0.1%
Cartoons 92 9 0.1%
Famous people 290 55 0.4%
Phrases and patterns 933 253 1.8%
Surnames 33 9 0.1%
Biology 58 1 0.0%
System dictionary 19683 1027 7.4%
Machine names 9018 132 1.0%
Mnemonics 14 2 0.0%
King James bible 7525 83 0.6%
Miscellaneous 3211 54 0.4%
Yiddish words 56 0 0.0%
Asteroids 2407 19 0.1%
TOTAL 62727 3340 24.2%
Passwords cracked from a sample set of 13797 accounts (from Klein’s paper)
How Many Passwords?
21
Work Internal network
Windows NT
Unix
External network
Windows NT/ Unix
Mail server
Laptop
Lab computers
ID badge
Door access devices
Home
Bank
ATM card
Spouse’s ATM card
Telephone access
Telephone
Calling cards : At&T/Bell south
Internet
Dial-in access
Airline booking system
Alarm system
Password Cost too High
• 20-50% of corporate help desk calls are password related
– 24/7 help desk support costs about $150/yr per user
• At the NY times web site, about 1,000 people per week forgot their passwords
• Lost productivity from password lockout
• Cost of computer incident responses
22
Insecurity of Password
• Common hacker tools can typically guess 30% or more of the passwords on a network
• computer crime and security survey (2000) – $266M in loss reported by 273 organizations
– 90% of respondents detected computer security breaches in previous 12 months
– 71% detected unauthorized access by insiders
– 25% detected system penetration from outsiders
23
Password manager
• Stored locally – KeePass/KeePassX
• Open source, Keepass.info • All platforms
– Windows, Linux, Mac OSX, iOS, Android – PalmOS, PocketPC, etc
– Firefox password manager – 1password plugin
• Stored in cloud – LastPass
• Password store is encrypted locally and then uploaded to the cloud (LastPass.com) for cross-platform mobility
• Need 2 pieces of software: an app on host and a browser plugin • Closed source
• From many commercial vendors
24
What you are (Biomertics)
25
What You Are: Biometric
• Use characteristics of human body
• Recognition vs. verification
• False acceptance rate
• False rejection rate – One try? Two tries ?
• Privacy issue ! – One’s identity is chipped away at every biometric
authentication
26
27
Biometrics
DNA
Key stroke dynamics
Signature (and dynamics)
Gait
• BioAPI Consortium – www.bioapi.org
• Biometric Consortium – www.biometrics.org
• Biometrics.gov
• biometrics.dod.mil
• NIST – fingerprint.nist.gov
– face.nist.gov
– iris.nist.gov
– mbark.nist.gov
– Biometric Evaluations
– Biometric Web Services
28
Growing Interest
Biometric System Architecture
• Common subsystems in all biometric systems
– Data capture
– Signal processing
– Matching
– Data storage
– Decision
• Adaptation subsystem is present in some systems but not others
Biometric Preparation
• Enrollment
– A sample of biometric traits is taken, processed by a computer, and stored for later comparison
• Template
– A mathematical representation/model of biometric data stored during the enrollment process
31
Enrollment
32
Biometric Authentication
• Verification mode
– The biometric system matches a person’s claimed identity to his or her previously enrolled pattern, One-to-One
• Identification mode
– The biometric system identifies a person from the entire enrolled population by searching a database for a match, One to Many
33
Verification Mode
34
Identification Mode
35
Biometric Metrics
• False Acceptance Rate (FAR) – The percentage of impostors wrongly matched
• False Rejection Rate (FRR) – The percentage of valid users wrongly rejected
• Equal Error Rate (EER) – The false match rate (or FAR) equals the false non-match rate (or FRR)
• Threshold – Typically a numerical setting used by a biometric system to adjust the
FAR and FRR
36
37
Fingerprint Reader
38
Extracting Unique Features
39
Iris & Retina
40
Iris Recognition
Illustration: BBC
Retinal Scans
• Match retinal vascular pattern • High false rejection rate (one try) • False acceptance rate is
very low (close to 0) • Laser-scanning • Attacks
– False eyes, contact lenses, eye transplants
• Fast, very small storage requirements • Very stable biometric (affected by some diseases)
41
Hand Geometry
• Low false rejection/acceptance rates (0.2% on one try)
• Relatively fast, very low storage requirements
• Used at JFK airport by INS (with swipe cards)
42
Voice Recognition
• Fixed phase
– Tape recorder attack
• Challenge response phrase
– Unreliable
• Background noise,
• cold/sore throat makes it difficult to use
• Can be used over the phone
43
Hand Signatures—Static Features • Maximum distance between the highest and
lowest points
• Standard deviation of – x/(change in x),
– y/(change in y)
• ((x|y)(min|max)-(x|y)(0|end))/change in (x|y)
• Initial direction
44
Hand Signatures—Dynamic Features
• Maximum forward velocity • Where and when in the signature max velocity occurs • First time instance of v = 0 • Average velocity over x and over y • Average writing speed • Number of pen ups and downs • Time of second pen down • Direction at first pen down, first pen up • Total dots recorded • Duration of negative x and y velocities • Duration of positive x and y velocities
45
46
Facial Recognition
Illustration: NIH
48
Vulnerabilities of Biometric Authentication (1/4)
1
5
8
7
6
4
3
2
Vulnerabilities of Biometric Authentication (2/4)
1. Attack on the biometric sensor with mockups or dummies. A reproduction of a biometric trait is presented as input to the system.
2. Replay attack. A recorded signal (containing a previously intercepted signal) is replayed to the system, bypassing the biometric sensor.
3. Attack on the feature extractor (signal processing). The feature extractor is forced, e.g., by Trojan horse, to oppress single features of a biometric trait, or to produce altered values than those read by the biometric sensor.
49
Vulnerabilities of Biometric Authentication (3/4)
4. Tampered feature representation. Features extracted from the sensor input are replaced by a different (fraudulent) feature set. The stages of feature extraction and matching are often inseparable, and the attack is complex. However, if the extracted feature set is sent to a remote matcher, e.g., over the Internet, the threat is real.
4. Attack on the matcher. The matcher is forced, e.g., by Trojan horse, to produce high or low matching score, in order to allow or deny access to an individual.
50
Vulnerabilities of Biometric Authentication (3/3)
6. Attack on stored biometric templates. Templates stored in a biometric database (local, remote, distributed) are added, modified or deleted.
7. Tampered template representation. See 4. (Insider attack)
8. Attack on the decision end point. If the final matching decision is manipulated by the attacker, the authentication system is disabled. By overriding the final matching decision, the biometric system is rendered useless and the biometric data irrelevant.
51
52
53
Biometric maybe Erased (1/2)
9.29.2014
• The cops in Ohio did not know it when they struggled to fingerprint her, but their prisoner would prove to be a mystery woman who would seem to outdo Dillinger.
• After what one cop called “a heck of a fuss,” they finally managed to print her. They were stunned by the result.
• “There’s nothing there,” a cop announced.
• The prisoner had somehow managed to obliterate every identifying swirl on the tips of her fingers and every line on her palms, something none of the cops had ever seen before.
• Back in 1933, the infamous “Public Enemy No. 1,” John Dillinger, had tried to burn off his fingerprints with acid prior to being held in the Allen County jail, the same lock-up in the same small town, Lima, where the mystery woman was now behind bars. But he had not succeeded in erasing all the ridges.
54
Biometric maybe Erased (2/2)
What you have
55
Authentications Tokens • Examples
– Magnetic/memory/cards – Key used to unlock your key – Credit card with picture or signature on it – Smart cards
• Challenge/response • Mitigates Trojan horse
• Advantages over password – Not trivial to reproduce – Hold a secret larger with larger entropy/randomness
• Disadvantages – Requires custom hardware/software – Can be lost or stolen (supplied with a PIN) – May not be secure against eavesdrop
56
• Cryptographic calculator. – RSA DSI’s secureID (one time
password)
– Sharing a key with server
– hashed time stamps (requiring clocks be in sync)
– Tamper resistance
57
Tokens/Portable Devices
Authentication over Networks
58
59
Classical Centralized System
Mainframe
Terminals
60
Distributed, Interconnected Systems
61
Peter Steiner The New Yorker
July 5, 1993
End-to-End Authentication
• Need end-to-end authentication which is safe from
– at least passive wiretapping, and
– active wiretapping for higher assurance
• More generally, need two way end-to-end authentication
62
Friend-and-Foe using shared secret
63
Alice
Bo
b
I am Alice
Challenge R AESKAB
(R)
Weakness:
•Authentication not mutual
•If this is the entire protocol, hijack/MITM attacks
•Off-line password guessing attack
•Some one read the database of Bob’s machine could mount an impersonation attack
Capability Based Authentication
• CAPTCHA --- Completely Automated Public Turing Test to Tell Computers and Humans Apart
• A CAPTCHA program
– Protects a web site against automatic software bots by generating & grading tests that humans can pass but computer programs cannot
64
More CAPTCHA Examples
65
• Original Turing Test • Automated Turing Test
66
Turing Test
A B
Which one is a computer ?
Which one is a computer ?
A B
CAPTCHA Killer
• Automatically solve a (weak) CAPTCHA puzzle
– defeat a weak CAPTCHA system
• Good
– Help accessibility of the web to visually-impaired
• Bad
– Let bots by-pass CAPTCHA
67
The Power of the Masses
• Did you know that every time you use reCAPTCHA, you are helping Google digitize printed materials, which may bring in billion$ more for Google in future ?
– One of the 2 words is a word hard to recognize by OCR software
– Out of the 2 words, the reCAPTCHA software will check the correctness of the one not related to OCR
– Both words are distorted & presented in random order
68
• Use 2 or more means to authenticate
– (Student ID + drivers license)
– Password + one time token
– Password + thumb prints
– Password + digital signature
– Password + out-of-band confirmation such as phone call
69
Multi-factor Authentication
OTHER AUTHENTICATION SYSTEMS
70
Kerberos
• Secure method for authenticating a request for service in a network
• User requests an encrypted “ticket” from an authentication process
• Ticket used to request service from a particular server
• User’s password does not pass through the network
71
Basic Kerberos (simplified)
72
1 2
authentication service
client 3 4
server
1. client-name, server-name, expiring-time, random-num.
2. AESKc(Kc,v, expiring-time,random-num.,...), AESKv(Tc,v)
3. AESKc,v(time-stamp, session-key,...), AESKv(Tc,v)
4. AESKc,v(time-stamp), (this step is optional)
where Tc,v = Kc,v, client-name, expiring-time, ...
Kerberos Weaknesses
• Requires the continuous availability of a central server (single point of failure)
– This problem can be mitigated by using multiple Kerberos servers
• Sensitive to clock settings
• The secret keys for all users are stored on the central server, a compromise of that server will jeopardize all users’ secret keys.
73
Challenge-Handshake Authentication Protocol (CHAP)
• Authentication scheme used by Point-to-Point Protocol (PPP) hosts
– Authorize the identity of remote clients
– Substantiation based on a shared secret
– validates the identity of the client by using a three-way handshake.
• Randomly, the authenticator sends another challenge and repeats the steps
74
CHAP authentication scheme Steps
1. Once the link has been established, the authenticator sends a “challenge” message to the peer.
2. The peer then responds with a determined value using a one-way hash function on the challenge and the secret combined.
3. The authenticator checks the response against the expected answer, or calculation of the expected hash value. If the values match, the authenticator acknowledges the authentication. If it does not match, the connection is terminated.
75
Access Control
Access Control
• Who has what access to what resources
• Also called "authorization"
• Considered to be the 2nd line of defense
• Two types of access control
– Logical access control
– Physical access control
77
78
Authentication v.s. Access Control
Authentication
Access control
• Subject
– an active entity (generally an individual, process, or device) that causes information to flow among objects or changes the system state.
• Object
– a passive information system-related entity containing or receiving information.
• Operation – the execution of a function at
the request of a subject upon an object. E.g. read, write, edit, delete, author, copy, execute, and modify.
• Policy – the formal representation of
rules or relationships that define the set of allowable operations a subject may perform upon an object in permitted environment conditions.
79
Basic Terms
Physical Access Control
• Mechanical form
– Akin to entering a locked room with a key
• Biometrics may be used in physical access control
– In authentication too
• When physical access controlled by software
– Should be considered logical access control
80
Logical Access Control
• Access control for systems, applications, processes, and information
• Benefit of logical access control controlled centrally in a system
– User’s physical access permissions can be instantly awarded or revoked
81
82
Evolution of Logical Access Control
Logical Access Control Mechanisms
• Widely used mechanisms
– Discretionary Access Control (DAC)
– Mandatory Access Control (MAC)
– Role-based Access Control (RBAC)
• Emerging
– Attribute-based Access Control (ABAC)
– Hybrid of RBAC and ABAC
83
Discretionary Access Control (DAC)
• Access control in Unix and Linux systems
• Resource owner controls access to resources by setting the file/directory permissions
• Users given access to read, write, execute, or delete files to which they have access
• Permissions can be changed using “chmod” command
84
chmod Command
• Syntax:
– chmod [ugoa] [+-=] [rwxXst] fileORdirectoryName
85
chmod Command (2)
86
Mandatory Access Control (MAC)
• Regulates user access based on organizational security policy
• The policy is a collection of rules that specify what types of access are allowed on a system
• Security-enhanced Linux (SELinux) is an example of MAC implemented on linux kernel
– It is a type enforcement mechanism
– every subject and object is assigned an identifier
87
SELinux Example
• subject can be considered as a user or a process, and the object as a file or a process
• a subject cannot access an object unless the type identifier assigned to the subject is authorized to access the object
• Example: – allow httpd_t httpd_sys_content_t : file
(ioctol read getattr lock);
88
SELinux Example (2)
• The subject http daemon is assigned the type identifier of httpd_t and is granted permissions ioctol, read, gettattr, and lock for any file object assigned in the type identifier httpd_sys_content_t.
89
Role-based Access Control (RBAC)
• Only authorized users can gain access to an environment
• Three principal guidelines of RBAC – Role assignment – Role authorization – Permission authorization
• Subject can employ permission if permission has been approved for subject’s role
• Several additional controls can be applied • Rules can be combined in a hierarchy
90
Roles vs. Users
Role
User1
User2
User3
91
92
Users v.s Roles: Example
Alice Bob Cathy
App Developer
Dave
Sys Admin
Eve
Resource D Resource C Resource A Resource B Resource E
Jan. 2013
93
Users v.s Roles: Example
Alice Bob Clare
App Developer
Dave
Sys Admin
Eve
Resource D Resource C Resource A Resource B Resource E
July 2013
RBAC Model
http://wiki.gxtechnical.com/commwiki/servlet/hwiki?Image%3ARBAC+Core+Diagram
94
RBAC Principal Guidelines
• Role assignment
– A subject can implement permission once the subject has been designated or has allocated a role.
• Role authorization
– A subject’s dynamic role requires permission for the subject. Refer to rule 1, above, which warrants users only inherit roles for which they are sanctioned.
95
RBAC Principal Guidelines (2)
• Permission authorization
– A subject can employ permission merely if the permission is approved for the subject’s functional role. Refer to rules 1 and 2; rule 3 confirms users can only carry out permissions for which they are allowed.
96
Attribute-Based Access Control (ABAC)
• A logical access control methodology where authorization to perform a set of operations is determined by – evaluating attributes associated with the
• subject,
• object,
• requested operations, and, in some cases,
• environment conditions (eg. time, location, threat level, temperature, etc)
against policy, rules, or relationships that describe the allowable operations for a given set of attributes
97
1. Subject requests access to object
2. Access Control Mechanism evaluates a) Rules,
b) Subject Attributes,
c) Object Attributes, and
d) Environment Conditions to compute a decision
3. Subject is given access to object if authorized
98
ABAC Explained