Um Mecanismo de Autenticação Baseado em ECDH para Redes

25
Um Mecanismo de Autenticação Baseado em ECDH para Redes IEEE 802.11 SBSeg 2010 Eduardo Ferreira de Souza Paulo André da S. Gonçalves

Transcript of Um Mecanismo de Autenticação Baseado em ECDH para Redes

Page 1: Um Mecanismo de Autenticação Baseado em ECDH para Redes

Um Mecanismo de Autenticação Baseado em ECDH para Redes

IEEE 802.11

SBSeg 2010

Eduardo Ferreira de Souza

Paulo André da S. Gonçalves

Page 2: Um Mecanismo de Autenticação Baseado em ECDH para Redes

Sumário

Motivação e Problemas Abordados

Trabalhos Relacionados

Mecanismo Proposto

Avaliação Experimental da Proposta

Conclusões

Page 3: Um Mecanismo de Autenticação Baseado em ECDH para Redes

Motivação

Redes IEEE 802.11 (ou Wi-Fi)

Cada vez mais utilizadas

Necessidade de se prover alto grau de segurança

Protocolos de segurança para a camada enlace

WPA (2003) e IEEE 802.11i (WPA2) (2004)

Emenda IEEE 802.11w (2009)

Proteção aos

quadros de dados

Estende WPA e WPA2

adicionando proteção aos

quadros de gerenciamento

Page 4: Um Mecanismo de Autenticação Baseado em ECDH para Redes

Motivação

Dois métodos de autenticação nos protocolos citados

Autenticação corporativa

Servidor de autenticação

Autenticação pessoal

Chaves pré-compartilhadas (PSK)

Chave_1

Chave_2

Chave_3

PSK

PSK

PSK

Page 5: Um Mecanismo de Autenticação Baseado em ECDH para Redes

Motivação

O processo de autenticação permite a derivação da chave PTK

PTK (Pairwise Transient Key) Representa um conjunto de

chaves temporárias

Exclusiva para cada par cliente/ponto de acesso

Utilizada, principalmente, para a criptografia de quadros e verificação da integridade

Seu sigilo é importante!

Chave_1

Chave_2

Chave_3

PSK

PSK

PSK

PTK_2

PTK_1

PTK_3

PTK_1

PTK_2

PTK_3

Page 6: Um Mecanismo de Autenticação Baseado em ECDH para Redes

1º Problema

Método de autenticação pessoal é falho

A derivação da PTK de qualquer cliente pode ser reproduzida por um atacante que conheça a PSK

Vulnerabilidade independe do protocolo usado

WPA, WPA2 e a recenteemenda IEEE 802.11w

PSK

PSK

PSK

PTK_1

PTK_1

PTK_2

PTK_2

Page 7: Um Mecanismo de Autenticação Baseado em ECDH para Redes

Motivação

Redes IEEE 802.11 podem ser abertas

Comuns em shoppings, aeroportos e redes domésticas

Não há processo de autenticação de dispositivos na rede sem fio

Os usuários podem precisar, no máximo, fornecer credenciais (e.g. CPF ou login/senha) para acesso à Internet

Tráfego passa sem criptografia exceto quando a mesma é provida por camadas superiores (e.g. HTTPS)

Page 8: Um Mecanismo de Autenticação Baseado em ECDH para Redes

2º Problema

Inexistência de autenticação em redes abertas

Não há criptografia na camada enlace

Dados do usuário estão vulneráveis

Olá!

Page 9: Um Mecanismo de Autenticação Baseado em ECDH para Redes

Objetivo do Trabalho

Uma solução aos 2 problemas Derivação indevida da PTK

Falta de autenticação em redes abertas

PSK

PSK

PSK

PTK_1

PTK_1

PTK_2

PTK_2Olá!

Page 10: Um Mecanismo de Autenticação Baseado em ECDH para Redes

O 4-Way Handshake Ocorre em ambos os métodos de autenticação

Objetivos autenticar mutuamente o cliente e o ponto de

acesso permitir a derivação de uma PTK comum e

exclusiva a eles

Chave mestra (PMK) na autenticação pessoal é a própria PSK na autenticação coorporativa ela é única para

cada cliente

Mensagens trocadas pequenas variações de acordo com o protocolo

usado

Descrição genérica do 4-way handshake principais parâmetros trocados considera o WPA, o WPA2 e a emenda IEEE

802.11w

PMKPTK

PMKPTK

Page 11: Um Mecanismo de Autenticação Baseado em ECDH para Redes

O 4-Way Handshake

• S e A: Cliente e AP

• SA e AA: MACs de S e de A

• SNonce e ANonce: Nonces de S e de A

• MICPTK: Verificador de Integridade

PTK = PRF (PMK, “Pairwise key expansion”, Min(AA, SA) || Max(AA, SA) || Min(ANonce, SNonce) || Max(ANonce, SNonce))

S

Define ANonce

A

Define SNonceCalcula PTK

Calcula PTKVerifica MICPTK

Verifica MICPTK

Autenticação finalizada

[AA, ANonce]

[SA, SNonce, MICPTK(…)]

[AA, ANonce, MICPTK(…)]

[SA]

Page 12: Um Mecanismo de Autenticação Baseado em ECDH para Redes

Derivação Indevida da PTK

Dentre os parâmetros da PRF, apenas a PMK é mantida em sigilo PTK = PRF (PMK, “Pairwise key expansion”, Min(AA, SA)

|| Max(AA, SA) || Min(ANonce, SNonce) || Max(ANonce, SNonce))

Se um atacante pertencer à própria rede (no caso de autenticação pessoal): Todos os parâmetros da PRF serão conhecidos apenas

escutando-se o canal

Ele poderá derivar as chaves PTK de todos os clientes da rede

Page 13: Um Mecanismo de Autenticação Baseado em ECDH para Redes

Derivação Indevida da PTK: Trabalhos Relacionados

Usam o protocolo de acordo de chaves Diffie-Hellman (DH)

Permite que duas entidades derivem chaves seguras, mesmo que o canal de comunicação seja inseguro

Baseado no problema do logaritmo discreto

Page 14: Um Mecanismo de Autenticação Baseado em ECDH para Redes

Derivação Indevida da PTK: Trabalhos Relacionados

Resolving WPA Limitations in SOHO and Open PublicWireless Networks Não implementa a proposta

Fraquezas

Baseado no protocolo Diffie-Hellman (DH)

Necessita de chaves públicas grandes

Grande overhead de processamento

Utiliza a chave mestra diretamente na cifra de mensagens

S A

Cifra as msgscom a PMK

Cálculo da chave K

Cifra as msgscom K

Page 15: Um Mecanismo de Autenticação Baseado em ECDH para Redes

Derivação Indevida da PTK: Trabalhos Relacionados

Um Mecanismo de Proteção de Nonces para a Melhoria da Segurança de Redes IEEE 802.11i

Não implementa a proposta

Fraquezas

Baseado no protocolo DH

Necessita de chaves públicas grandes

Grande overhead de processamento

6 mensagens trocadas

S A

Cálculo da chave K

Cifra os noncescom K

Page 16: Um Mecanismo de Autenticação Baseado em ECDH para Redes

DH vs ECDH

DH exige chaves públicas significativamente maiores

DH exige maior processamento, espaço de armazenamento e consumo de energia

Ataques em tempo subexponencial para DH

Ataques apenas em tempo exponencial para ECDH

Base da proposta deste trabalho: Protocolo Diffie-Hellman sobre Curvas Elípticas (ECDH)

DH ECDH

1.024 63

3.072 283

7.680 409

15.360 571

Tamanho, em bits, das chaves públicas

Page 17: Um Mecanismo de Autenticação Baseado em ECDH para Redes

ECDH

S A

2

3

1[Apub]

[Spub]

Parâmetros de domínio: umcampo finito F; uma curvaelíptica E sobre F; e um pontobase G pertencente à E

(1) A gera uma chave privadakA; e calcula a chave públicaApub = kA G

(2) S gera uma chave privadakS; e calcula a chave públicaSpub = kS G

(2) S calcula K = kS Apub

(3) A calcula K = kA Spub

Page 18: Um Mecanismo de Autenticação Baseado em ECDH para Redes

Mecanismo Proposto

Denominado Improved Handshake (IH) Adaptação do 4-way handshake Baseado em ECDH

Visa solucionar ambos os problemas apresentados Derivação indevida da PTK Falta de autenticação em redes abertas

Requisitos Ter baixo overhead em relação aos trabalhos relacionados Não aumentar significativamente a duração do 4-way handshake

Propõe adicionalmente: Uso das chaves públicas como nonces além do uso normal delas para

o cálculo da chave elíptica

Page 19: Um Mecanismo de Autenticação Baseado em ECDH para Redes

Improved Handshake

• Spub e Apub: Chaves públicas

• Spriv e Apriv: Chaves privadas

• Ke: Chave elíptica (coord. x de K)

S A

[AA, Apub]

[SA, Spub, MICPTK(…)]

[AA, Apub, MICPTK(…)]

[SA]

2

4

5

3

1

PTK = PRF (PMK, Ke, “Elliptic pairwise keyexpansion”, Min(AA, SA) || Max(AA, SA) || Min(Apub, Spub) || Max(Apub, Spub))

(1) A gera Apriv e Apub

(2) S gera Spriv e Spub; S calcula Ke; S deriva PTK

(3) A calcula Ke;A deriva PTK;A verifica MICPTK

(4) S verifica MICPTK

(5) Autenticação finalizada; A e S possuem a PTK

Page 20: Um Mecanismo de Autenticação Baseado em ECDH para Redes

Improved Handshake

Permite simples extensão para Redes Abertas Adaptação para prover autenticação automática, sem a necessidade

do fornecimento de chaves pelos usuários Pequena modificação nos argumentos utilizados na derivação da PTK

Antes ... PTK = PRF (PMK, Ke, “Elliptic pairwise key expansion”, Min(AA, SA) || Max(AA, SA) || Min(Apub, Spub) || Max(Apub, Spub))

Depois ... PTK = PRF (Ke, “Elliptic pairwise key expansion”, Min(AA, SA) || Max(AA, SA) || Min(Apub, Spub) || Max(Apub, Spub))

A segurança da PTK é garantida pela segurança da Ke

Uso em redes com método de autenticação corporativa O Improved Handshake é inerentemente mais seguro Não há necessidade de configurações adicionais

Page 21: Um Mecanismo de Autenticação Baseado em ECDH para Redes

Avaliação Experimental

Qual é a curva elíptica mais adequada para uso com o Improved Handshake?

Qual a duração média do Improved Handshake? Depende da

curva elíptica!

Qual o aumento médio no tamanho das mensagens do Improved Handshake quando comparado ao 4-wayhandshake? Depende da curva elíptica!

O overhead introduzido pelo Improved Handshake é menor do que aquele introduzido pelos trabalhos relacionados?

Page 22: Um Mecanismo de Autenticação Baseado em ECDH para Redes

Avaliação Experimental

Implementação do Improved Handshake

Desenvolvido para WPA, IEEE 802.11i (WPA2) e para tais protocolos com a emenda IEEE 802.11w

Avaliado com as quinze curvas elípticas recomendadas pelo NIST

Experimentos realizados em ambientes reais

Page 23: Um Mecanismo de Autenticação Baseado em ECDH para Redes

Avaliação Experimental

MecanismoAumento

Médio por Mensagem

(bytes)

Duração Total

Média (ms)

4-way handshake

-- 15,08

IH com P-192 36 18,34

IH com P-224 42 20,30

IH com P-256 48 23,87

IH com P-384 72 39,81

IH com P-521 97,5 68,19

IH com K-163 30,75 20,10

IH com B-163 30,75 20,52

30,75

30,75

42

36

Aumento médio entre 27,5% e 37,5%

Em “Resolving WPA Limitationsin SOHO and Open PublicWireless Networks” o aumento é maior do que 85%

Em “Um Mecanismo de Proteção de Nonces para a Melhoria da Segurança de Redes IEEE 802.11i” o aumento é maior do que 164%

Duração entre 3 e 5 mssuperior ao 4-way handshake

Tais acréscimos podem ser considerados baixos, visto que o tempo do 4-way handshake foi de 15,08 ms

18,34

20,30

20,10

20,52

* O tamanho médio das mensagens do 4-way handshake é de 112 bytes

IH com P-192 36 18,34

Page 24: Um Mecanismo de Autenticação Baseado em ECDH para Redes

Conclusões

O Improved Handshake introduz menor overhead do que os trabalhos relacionados e provê um grau de segurança superior

Curva elíptica P-192 se mostra mais adequada aumento médio de 36 bytes no tamanho das mensagens

trocadas durante o handshake aumenta o handshake em pouco mais de 3 ms

Pode ser usado com todos os protocolos WPA, IEEE 802.11i (WPA2) e estes dois acrescidos pela emenda

IEEE 802.11w

Permite simples extensão para redes abertas provê autenticação automática criptografia de informações na camada enlace sem o

fornecimento de chaves pelos usuários

Page 25: Um Mecanismo de Autenticação Baseado em ECDH para Redes

OBRIGADO

Eduardo Ferreira de Souza

Paulo André da S. Gonçalves

[email protected]