• No results found

CIS 433/533 - Computer and Network Security Authentication

N/A
N/A
Protected

Academic year: 2021

Share "CIS 433/533 - Computer and Network Security Authentication"

Copied!
52
0
0

Loading.... (view fulltext now)

Full text

(1)

CIS 433/533 - Computer and

Network Security

Authentication

Professor Butler

Winter 2011

(2)

What is Authentication?

Short answer: establishes identity

Answers the question: To whom am I

speaking?

Long answer: evaluates the authenticity of

identity proving credentials

Credential

– is proof of identity

Evaluation

– process that assesses the

correctness of the association between

credential and claimed identity

(3)

Why authentication?

Well, we live in a world of rights, permissions,

and duties?

Authentication establishes our identity so that we

can obtain the set of rights

E.g., we establish our identity with Tiffany’s by

providing a valid credit card which gives us rights

to purchase goods ~ physical authentication

system

(4)

Why authentication? (cont.)

Same in online world, just different

constraints

Vendor/customer are not physically co-located, so

we must find other ways of providing identity

e.g., by providing credit card number ~ electronic

authentication system

Risks (for customer and vendor) are different

Q: How so?

Computer security is crucially dependent on

the proper design, management, and

application of authentication systems.

(5)

What is Identity?

That which gives you access … which is largely

determined by context

‣ We all have lots of identities

‣ Pseudo-identities

Really, determined by who is evaluating credential

‣ Driver’s License, Passport, SSN prove …

‣ Credit cards prove …

‣ Signature proves …

‣ Password proves …

‣ Voice proves …

(6)

Credentials

… are evidence used to prove identity

Credentials can be

‣ Something I am

‣ Something I have

(7)

Something you know …

Passport number, mothers maiden name, last 4

digits of your social security, credit card number

Passwords and pass-phrases

Note: passwords are generally pretty weak

University of Michigan: 5% of passwords were gobluePasswords used in more than one place

Not just because bad ones selected: If you can remember

it, then a computer can guess it

Computers can often guess very quicklyEasy to mount offline attacks

(8)

Something you have …

Tokens (transponders, …)

‣ Speedpass, EZ-pass ‣ SecureID

Smartcards

‣ Unpowered processors ‣ Small NV storage ‣ Tamper resistant

Digital Certificates (used by Websites to

(9)

Something you are …

Biometrics measure some physical characteristic

‣ Fingerprint, face recognition, retina scanners, voice, signature, DNA

‣ Can be extremely accurate and fast

‣ Active biometrics authenticate

‣ Passive biometrics recognize

Issues with biometrics?

‣ Revocation – lost fingerprint?

‣ “fuzzy” credential, e.g., your face changes based on mood ...

(10)

Web Authentication

Authentication is a bi-directional process

Client

Server

Mutual authentication

Several standard authentication tools

Basic (client)

Digest (client)

Secure Socket Layer (server, mutual)

Cookies (indirect, persistent)

(11)

GET /protected/index.html HTTP/1.0

HTTP/1.0 401 Unauthorized

WWW-Authenticate: Basic realm=“Private”

GET /protected/index.html HTTP/1.0 Authorization: Basic JA87JKAs3NbBDs

CLIENT

CLIENT CLIENT

(12)

Setting up Basic auth in Apache

File in directory to protect (.

htacess)

!!AuthType Basic

!!AuthName Kevin’s directories (User ID=butler)" !!AuthUserFile /usr/butler/www-etc/.htpw1

!!AuthGroupFile /dev/null !!require valid-user

In /usr/butler/www-etc/.htpw1

!! butler:l7FwWEqjyzmNo

(13)

Basic Authentication Problems

Passwords easy to intercept

Passwords easy to guess

‣ Just base-64 encoded

Passwords easy to share

No server authentication

‣ Easy to fool client into sending password to malicious server

One intercepted password gives eavesdropper

(14)

GET /protected/index.html HTTP/1.1 HTTP/1.1 401 Unauthorized WWW-Authenticate: Digest realm=“Private” nonce=“98bdc1f9f017..” GET /protected/index.html HTTP/1.1 Authorization: Digest username=“lstein” realm=“Private” nonce=“98bdc1f9f017..” response=“5ccc069c4..” CLIENT CLIENT CLIENT

Digest Authentication

(15)

Challenge (“nonce”):

any changing string

‣ e.g. MD5(IP address:timestamp:server secret)

Response: challenge hashed with user’s name &

password

‣ MD5(MD5(name:realm:password):nonce:MD5(request))

Server-specific implementation options

One-time nonces

Time-stamped nonces

Method authentication digests

(16)

Cleartext password never transmitted across network

Cleartext password never stored on server

Replay attacks difficult

Intercepted response only valid for a single URL

Shared disadvantages

‣ Vulnerable to man-in-the-middle attacks

‣ Document itself can be sniffed

(17)

Password Attacks

Use of passwords in, for example, Kerberos is

susceptible to

offline cracking

Process:

‣ User enters password for Kerberized client

‣ Request (w/o password) forwarded to KDC

‣ Response is encrypted in key derived from user’s passwd

‣ Client generates key from password for decryption

Attack:

If you know what the message should say,

you can guess and test passwords

PSU: we did this, recovered 35% of CSE passwds

Can also spoof logins to recover passwds

(18)

Password Attacks

Dictionary attack

‣ Users not so good at picking high-entropy passwords

‣ Gawker:

Rainbow Table

‣ precomputed hash values: big

2516 123456 2188 password 1205 12345678 696 qwerty 498 abc123 459 12345 441 monkey 413 111111 385 consumer 376 letmein 351 1234 318 dragon 307 trustno1

(19)

A petard ...

The rule of seven plus or minus two.

‣ George Miller observed in 1956 that

most humans can remember about 5-9 things more or less at once.

‣ Thus is a kind of maximal entropy that one can hold in your head.

‣ This limits the complexity of the

passwords you can securely use, i.e., not write on a sheet of paper.

‣ A perfectly random 8-bit password has less entropy than a 56-bit key.

(20)

A question?

Is there going to come a day where all

passwords are useless?

Suppose I can remember 16 bytes of entropy

(possible?)

Won’t there come a day when all passwords are

useless?

(21)

Answer: no

Nope, you just need to make the process of

checking passwords more expensive. For example,

you can repeat the salted hash many times ...

(22)

Kerberos

History: from UNIX to Networks (late 80s)

‣ Solves: password eavesdropping

‣ Online authentication

• Variant of Needham-Schroeder protocol

‣ Easy application integration API

‣ First single sign-on system (SSO)

‣ Genesis: rsh, rcp

• authentication via assertion

Most widely used (non-web) centralized password

system in existence (and lately only...)

(23)

An aside …

Authentication

‣ Assessing identity of users

‣ By using credentials …

Authorization

‣ Determining if users have the right to perform requested action (e.g., write a file, query a database, etc.)

Kerberos authenticates users, but does not

perform any authorization functions …

‣ … beyond identify user as part of Realm

‣ Typically done by application.

Q: Do you use any “

Kerberized

” programs?

(24)

The setup …

The players

‣ Principal - person being authenticated

‣ Service (verifier) - entity requiring authentication (e.g, AFS)

‣ Key Distribution Center (KDC)

Trusted third party for key distribution

Each principal and service has a Kerberos password known to

KDC, which is munged to make a password key, e.g., kA

‣ Ticket granting server

Server granting transient authentication

The objectives

(25)

The protocol

A two-phase process

1. User authentication/obtain session key (and ticket granting ticket) key from Key Distribution Center

2. Authenticate Service/obtain session key for communication with service

Setup

(26)

Ticket (K

AB

)

“Locked” by KA

A Kerberos Ticket

A Kerberos ticket is a token where …

‣ Alice is the only one that can open it

‣ Contains a session key for Alice/Bob (KAB)

Contains inside it a token that can only be opened by Bob

Bob’s Ticket contains

‣ Alice’s identity

‣ The session key (KAB)

Ticket

(K

AB

)

(27)

The protocol (obtaining a TGT)

Time

exp

- time of expiration

n - nonce (random, one-use value: e.g., timestamp)

Alice

KDC

[A,TGS,Time

exp

,n]

1

E(k

A

,[k

A,TGS

,TGS,Time

exp

,n]),

E(K

TGS

,[A, k

A,TGS

,

Timeexp

],)

2

(28)

The protocol (performing authentication)

Alice

Bob

[B,Timeexp,n,E(kA,TGS,[B,Time

exp,n])], E(KTGS,[A,kA,TGS,Timeexp])] 1

E(k

A,TGS

,[k

A,B

,B,Time

exp

,n]),

E(k

B

,[A,k

A,B

,Time

exp

])

2

TGS

3

E(k

B

,[A,k

A,B

,Time

exp

])

,

E(k

A,B

,[A,Timeexp,n])

(29)

Cross-Realm Kerberos

Extend philosophy to more servers

Obtain ticket from TGS for foreign Realm ‣ Supply to TGS of foreign Realm

‣ Rinse and repeat as necessary

• “There is no problem so hard in computer science that it cannot be solved by another layer of indirection.”

UW

Oregon

Stanford

(30)

Kerberos Reality

V4 was supposed to be replaced by V5

‣ But wasn’t because interface was ugly, complicated, and encoding was infuriating

Assumes

trusted path

between user and Kerberos

Widely used in UNIX domains

Robust and stable implementation

(31)

Meeting Someone New

(32)

What is a certificate?

A certificate …

‣ … makes an association between a user identity/job/ attribute and a private key

‣ … contains public key information {e,n}

‣ … has a validity period

‣ … is signed by some certificate authority (CA)

‣ ... identity may have been vetted by a registration authority

(RA)

Issued by CA for some purpose

(33)

What is a certificate?

A certificate …

‣ … makes an association between a user identity/job/ attribute and a private key

‣ … contains public key information {e,n}

‣ … has a validity period

‣ … is signed by some certificate authority (CA)

‣ ... identity may have been vetted by a registration authority

(RA)

Issued by CA for some purpose

‣ Verisign is in the business of issuing certificates

(34)

Why do I trust the certificate?

A collections of “root” CA certificates

… baked into your browser

… vetted by the browser manufacturer

… supposedly closely guarded (yeah, right)

Root certificates used to validate certificate

Vouches for certificate’s authenticity

(35)

Public Key Infrastructure

System to “securely distribute public keys

(certificates)”

Q: Why is that hard?

Terminology:

Alice signs a certificate for Bob’s name and key

Alice is issuer, and Bob is subject

Alice wants to find a path to Bob’s key

Alice is verifier, and Bob is target

Anything that has a public key is a

principal

Anything trusted to sign certificates is a

trust anchor

(36)

What is a PKI?

• Rooted tree of CAs • Cascading issuance

‣ Any CA can issue cert

‣ CAs issue certs for children

Root

CA1

CA2

CA3

CA11 CA12

CA1n

CA21

CA31

(37)

Certificate Validation

Root

CA1

CA2

CA3

CA11 CA12

CA1n

CA21

CA22

Cert11a Cert11b Cert11c

Certificate Signature

(38)

Certificate Validation

Root

CA1

CA2

CA3

CA11 CA12

CA1n

CA21

CA22

Cert11a Cert11b Cert11c

Certificate Signature

(39)

Certificate Validation

Root

CA1

CA2

CA3

CA11 CA12

CA1n

CA21

CA22

Cert11a Cert11b Cert11c

Certificate Signature

(40)

PKI and Revocation

Certificate may be revoked before expiration

Lost private key

Compromised

Owner no longer authorized

Revocation is hard …

The “anti-matter” problem

Verifiers need to check revocation state

• Loses the advantage of off-line verification

(41)

PKI (Circa 2009/2010)

Verisign

(42)

10 Risks of PKI

This is an overview of one of many perspectives of

PKI technologies

‣ PKI was, like many security technologies, claimed to be a panacea

‣ It was intended to solve a very hard problem: build trust on a global level

‣ Running a CA -- “license to print money”

Basic premise:

‣ Assertion #1 - e-commerce does not need PKI

(43)

Risk 1 - Who do we trust, and for what?

Argument: CA is not inherently trustworthy

‣ Why do/should you trust a CA?

‣ In reality, they defer all legal liability for running a bad CA

‣ Risk in the hands of the certificate holder

Counter-Argument: Incentives

‣ Any CA caught misbehaving is going to be out of business tomorrow

‣ This scenario is much worse than getting sued

Risk held by everybody, which is what you want

(44)

Risk 2 - Who is using my key?

Argument: key is basically insecure

‣ Your key is vulnerable, deal with it

‣ In some places, you are being held responsible after a compromise

Counter-Argument: this is the price of technology

‣ You have to accept some responsibility in order to get benefit

‣ Will encourage people to use only safe technology

Q: what would happen if same law applied

(45)

Aside: TEMPEST

Transient Electromagnetic Pulse Surveillance Technology

Monitor EMF emanations to reconstruct signal

For example, a video monitor normally exist at around 55-245

MHz, and can be picked up as far as one kilometer away.

‣ ... or by a guy in a van across the street, e.g., steal private key.

Generally, this is the domain of spy/national security issues

(46)

Risk 3 - How secure is the verif(ier)?

Argument: the computer that verifies your

credential is fundamentally vulnerable

‣ Everything is based on the legitimacy of the verifier root public key (integrity of certificate files)

‣ Browsers transparently use certificates

Counter-Argument: this is the price of technology

You have to accept some risk in order to get benefit ‣ Will encourage people to use only safe technology

(47)

Risk 4 - Which John Robinson is he?

Argument: identity in PKI is really too loosely defined

‣ No standards for getting credential

‣ No publicly known unique identifiers for people

‣ So, how do you tell people apart

‣ Think about Microsoft certificate

Counter-Argument: due diligence

‣ Only use certificates in well known circumstances

‣ When in doubt, use other channels to help

(48)

Risk 5 - Is the CA an authority?

Argument: there are things in certificates that claim

authenticity and authorization of which they have

no dominion

‣ “rights” (such as the right to perform SSL) - this confuses authorization authority with authentication authority

‣ DNS, attributes -- the CA is not the arbiter of these things

Counter-Argument: this is OK, because it is part of

(49)

Risks 6 and 7

6 : Is the user part of the design?

‣ Argument: too many things hidden in use, user has no ability to affect or see what is going on

• Ex.: Hosted website has cert. of host(er), not page

‣ Counter-Argument: too sophisticated for user to understand

7 : Was it one CA or CA+RA?

‣ Argument: separation of registration from issuance allows forgery

• e.g., RA handles vetting, CA makes certificates, so, you better have good binding between these entities or bad things can happen

(50)

Risks 8 and 9

8 : How was the user authenticated?

‣ Argument: CAs do not have good information to work with, so real identification is poor (as VISA)

‣ Counter-Argument: It has worked well in the physical work, why not here?

9 : How secure are the certificate practices?

‣ Argument: people don’t use them correctly, and don’t know the implications of what they do use

Point in fact: revocation and expiration are largely ignored in

real system deployments

(51)

Risk 9 - How secure cert. practices?

Argument: certificates have to be used properly to

be secure

‣ Everything is based on the legitimacy of the verifier root public key, protection of its key

‣ Lifetime & revocation have to be done

Counter-Argument: this is the price of technology

You have to accept some risk in order to get benefit ‣ Will encourage people to use only safe technology

Q: What’s in your browser?

(52)

Risk 10 - Why are we using PKI?

Argument: We are trying to solve a painful

problem: authenticating users.

‣ However, certificates don’t really solve the problem, just give you another tool to implement it

‣ Hence, it is not a panacea

References

Related documents

GMIC invites leaders, visionaries, and innovators in the mobile industry to share their insights and experiences within the Thought Leaders, Global Game Stars, G-Startup, or within

Offer activities and shows that allow us to monitor the maximum capacity of the area and make it easy to maintain a 2 meters distance from others.. The correct and constant

The ratio between the inorganic (titanium butoxide) and organic (MAPTMS) pre- cursor, stirring time, curing temperature and number of layer deposited were studied in light

‣ You have to accept some risk in order to get benefit ‣ Will encourage people to use only safe technology. • Q: What’s in

‣ You have to accept some risk in order to get benefit ‣ Will encourage people to use only safe technology. • Q: What’s in

‣ You have to accept some risk in order to get benefit ‣ Will encourage people to use only safe technology. • Q: What’s in

Effective strategies to target energy savings incorporate a setup of 2°F during the peak hours and result in estimated annual cooling energy savings of 15% for the Benchmark house

Existing research shows an increase in student retention and an improvement in student performance associated with the adoption of free instructional materials which leads our team