Top Banner
26

What is EAP EAP stands for Extensible Authentication Protocol. Offers a basic framework for authentication. Many different authentication protocols can.

Dec 17, 2015

Download

Documents

Piers Carter
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: What is EAP EAP stands for Extensible Authentication Protocol. Offers a basic framework for authentication. Many different authentication protocols can.
Page 2: What is EAP EAP stands for Extensible Authentication Protocol. Offers a basic framework for authentication. Many different authentication protocols can.

What is EAP

• EAP stands for Extensible Authentication Protocol.

• Offers a basic framework for authentication.

• Many different authentication protocols can be used over it.

• New authentication protocols can be easily added.

Page 3: What is EAP EAP stands for Extensible Authentication Protocol. Offers a basic framework for authentication. Many different authentication protocols can.

EAP Background

• Originally developed for use with ppp.

• Extends the ppp-chap authentication method.

• Designed to work as a link layer authentication protocol.

Page 4: What is EAP EAP stands for Extensible Authentication Protocol. Offers a basic framework for authentication. Many different authentication protocols can.

PPP Overview

• PPP – point to point protocol.

• A link layer protocol.

• Used for point to point lines, for example: dial-up lines.

• Has a built in authentication protocol.

Page 5: What is EAP EAP stands for Extensible Authentication Protocol. Offers a basic framework for authentication. Many different authentication protocols can.

PPP Overview (2)

• PPP’s data-link configuration is done by LCP (Link Configuration Protocol).

• The LCP also configures the optional authentication mechanism.

• After the LCP configures the line, authentication takes place, and the network protocols are configured by the NCP (network configuration protocol).

Page 6: What is EAP EAP stands for Extensible Authentication Protocol. Offers a basic framework for authentication. Many different authentication protocols can.

PPP Authentication

• PPP’s authentication settings are set by the LCP before authentication begins.

• All of the authentication protocols used must be determined at this stage.

• NAS must know the protocols used for the authentication process.

Page 7: What is EAP EAP stands for Extensible Authentication Protocol. Offers a basic framework for authentication. Many different authentication protocols can.

Motivation for EAP

• We want to find out more information about the user before choosing the protocol.

• We want to use an unlimited number of protocols to authenticate each side.

• We want to allow the NAS (Network Access Server) to work with a back-end authentication server.

Page 8: What is EAP EAP stands for Extensible Authentication Protocol. Offers a basic framework for authentication. Many different authentication protocols can.

EAP’s basic assumptions

• EAP works over a secure line.• A client may not support all authentication

methods so EAP must support authentication method negotiation.

• To allow expandability, a NAS should be able to function without knowing all of the EAP authentication methods.

• The physical layer under the link layer may not be reliable.

Page 9: What is EAP EAP stands for Extensible Authentication Protocol. Offers a basic framework for authentication. Many different authentication protocols can.

What is a “Secure Line”

• In this case, “secure line” is not a strictly technical term.

• A “secure line” is a line where the probability of a third party listening to the line, injecting or modifying existing traffic is ‘low enough’.

• What exactly is low enough is dependant on the link’s use.

Page 10: What is EAP EAP stands for Extensible Authentication Protocol. Offers a basic framework for authentication. Many different authentication protocols can.

The EAP Protocol

• The EAP protocol is a one sided authentication protocol - the PEER must identify himself to the AUTHENTICATOR.

• EAP allows for mutual authentication by running the protocol in both directions.

Page 11: What is EAP EAP stands for Extensible Authentication Protocol. Offers a basic framework for authentication. Many different authentication protocols can.

The EAP Protocol (2)

• A request-response protocol.

• Uses 4 different kinds of messages:

1. EAP request

2. EAP response

3. EAP success

4. EAP failure

Page 12: What is EAP EAP stands for Extensible Authentication Protocol. Offers a basic framework for authentication. Many different authentication protocols can.

EAP messages

• All EAP messages have a common format:

Code Identifier Length

0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 10 1 2 3

Data...

Code: 1 byte, representing the type of EAP message

Data: any size,

The message’s data

ID: 1 byte,

Used for matching requests and responses

Length: 2 byte,

The total message length

Page 13: What is EAP EAP stands for Extensible Authentication Protocol. Offers a basic framework for authentication. Many different authentication protocols can.

EAP messages 2

• EAP request and response messages have the same format , with code=1 for requests and code=2 for responses

Code Identifier Length

0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 10 1 2 3

Type Data. Type

Type: 1 byte,

The type of authentication protocol used

Data: any size,

Data used for the authentication process

Page 14: What is EAP EAP stands for Extensible Authentication Protocol. Offers a basic framework for authentication. Many different authentication protocols can.

EAP messages 3

• EAP Success messages are EAP messages with code 3 and no data.

• A success message means that the authentication concluded successfully.

• EAP failure messages are EAP messages with code 4 and no data.

• A Failure message means that the authentication has failed.

Page 15: What is EAP EAP stands for Extensible Authentication Protocol. Offers a basic framework for authentication. Many different authentication protocols can.

The authentication sequence

• The Authenticator sends the peer an Identity request (optional).

• The Peer sends a response to the identity request identifying himself (optional).

• The Authenticator sends a request with a type according to which authentication method he wants to use and the data needed for the authentication.

• The Peer sends back a response of the same type or of type Nak signifying he refuses to use the requested authentication method.

Page 16: What is EAP EAP stands for Extensible Authentication Protocol. Offers a basic framework for authentication. Many different authentication protocols can.

The authentication sequence

• The Authenticator may at this point send another request (to repeat the process) or a success/failure message.

• If the authentication was successful and mutual authentication is required ,the sides change roles and the authentication is repeated in the other direction.

Page 17: What is EAP EAP stands for Extensible Authentication Protocol. Offers a basic framework for authentication. Many different authentication protocols can.

Notes

• All the messages pass on the communication line in plain-text (unless there is a protection mechanism in the link layer below)

• The messages are not signed/authenticated at the EAP level although individual EAP methods may MAC/sign/encrypt their data.

Page 18: What is EAP EAP stands for Extensible Authentication Protocol. Offers a basic framework for authentication. Many different authentication protocols can.

Generic EAP Example

AuthenticatorPeer

Repeated as many times as needed

EAP Request

EAP Response with the same type or a Nak

EAP Success or EAP Failure message

EAP Request

EAP Response with the same type or a Nak

EAP Success or failure message

Repeated as needed

If mutualAuthIs required

Identity Request

Identity Response

Identity RequestIdentity Response

Page 19: What is EAP EAP stands for Extensible Authentication Protocol. Offers a basic framework for authentication. Many different authentication protocols can.

Error/duplicate handling

• To overcome a possibly unreliable link-layer below, EAP has built in duplicate handling and retransmission facilities.

• The authenticator is responsible for all retransmissions , if a response is lost the request will time-out and be resent.

• Duplicate handling is done by discarding any unexpected messages.

Page 20: What is EAP EAP stands for Extensible Authentication Protocol. Offers a basic framework for authentication. Many different authentication protocols can.

Using a Back-End Server

• The NAS forwards all the EAP messages it gets to the Back-End server.

• The Back-End Server sends all outgoing EAP messages to the peer through the NAS.

• If the Back-End server sends a failure message the NAS Sees it and closes the connection, if a success message is sent the NAS knows that the peer passed the authentication.

Page 21: What is EAP EAP stands for Extensible Authentication Protocol. Offers a basic framework for authentication. Many different authentication protocols can.

Basic EAP Methods

• In the initial definition of EAP included several built in authentication methods:

•Identity - request the other side to identify itself.

•Notification - to send notifications to the other side.

•Nak - peer refuses to use the authentication method.

•MD5-Challenge - an implementation of chap over EAP.

•One Time Password - used for one time passwords.

•Generic Token Card - used for generic token cards.

•Vendor Specific - *

Page 22: What is EAP EAP stands for Extensible Authentication Protocol. Offers a basic framework for authentication. Many different authentication protocols can.

Authentication exampleusing MD5

PeerAuthenticator

EAP-MD5 Request

EAP – MD5 Response

EAP Success or EAP Failure message

Identity Request

Identity Response

Code=1 Identifier=I Length=the total length

Type Data= the md5 challenge string.Type=4

Code=2 Identifier=I Length=the total length

Type Data=hash(I&Secret&md5-challange)Type=4

Code=2 Identifier=I Length=the total length

Type Data= peer identityType=1

Code=1 Identifier=I Length=the total length

Type Data… =Type=1

Code=3 Identifier=I Length=the total length

Page 23: What is EAP EAP stands for Extensible Authentication Protocol. Offers a basic framework for authentication. Many different authentication protocols can.

MD5 Security properties

• Normal user-names and passwords may be used.

• Password is not transmitted exposed, it is protected by the md5 hashing function.

• Replay attack protection is done using the challenge field.

Page 24: What is EAP EAP stands for Extensible Authentication Protocol. Offers a basic framework for authentication. Many different authentication protocols can.

Security weaknesses

• The MD5 challenge has serious security problems.

• An offline dictionary attack on the user’s password is possible, because the challenge is known.

• The protocol is completely exposed to man in the middle and session hijacking attacks.

• Mounting a DOS attack is also very simple.

Page 25: What is EAP EAP stands for Extensible Authentication Protocol. Offers a basic framework for authentication. Many different authentication protocols can.

Are these attacks really a problem?

• Not really, because we are supposed to be working on a SECURE line.

• A man in the middle, session hijacking and DOS attacks need access to the physical communication line.

• The offline dictionary attack may still be a problem. However, this can be solved.

Page 26: What is EAP EAP stands for Extensible Authentication Protocol. Offers a basic framework for authentication. Many different authentication protocols can.

Conclusion

• It is reasonable to use the MD5-challenge authentication method over a secure line for non-critical data.

• It is however completely irresponsible to use EAP for authentication over insecure lines.

• We will see how this limitation was overcome in the next lecture.