SeguranSegurançça em Redes WiFia em Redes WiFiFEUP>DEEC>MIEIC>ComunicaFEUP>DEEC>MIEIC>Comunicaçções Mões Móóveisveis
Jaime Sousa Dias <[email protected]>
2
PrincPrincíípios de seguranpios de seguranççaa
• Autenticação
• Autorização/Controlo de acesso
• Confidencialidade dos dados
• Autenticidade dos dados
• Integridade dos dados
• Disponibilidade de Serviço
3
PrincPrincíípios de seguranpios de segurançça (2)a (2)
• Autenticação• Ter a certeza que uma entidade é quem diz ser
• A verificação da identidade baseia-se no pressuposto que a entidade é a única capaz de enviar uma dada informação, a qual é o resultado de algo que a entidade
• Sabe,• Password � ex: Senhas Unix
• tem,• Testemunhos (Tokens) � ex: cartão multibanco, SmartCard
• é• Biometria � ex: íris, impressão digital, timbre vocal
4
PrincPrincíípios de seguranpios de segurançça (3)a (3)
• Autorização/Controlo de acesso• Controlar quais as entidades que podem usar um determinado
recurso.
• Ex.: quais as estações (STA) que podem aceder através de um ponto de acesso (AP).
• Confidencialidade• Só as entidades comunicantes têm conhecimento do conteúdo da
comunicação
• Garantia que nenhuma outra entidade consegue decifrar o conteúdo
5
PrincPrincíípios de seguranpios de segurançça (4)a (4)
• Autenticidade dos dados• Ter a certeza que a origem de uma mensagem é correcta (Data
Origin Authentication)
• Integridade dos dados• O receptor sabe se a informação da comunicação foi alterada no
percurso
• Disponibilidade de Serviço• Manutenção do serviço de comunicação
• conectividade
• ou comunicação com uma qualidade de serviço (QoS) mínima
Fundamentos de CriptografiaFundamentos de Criptografia
Fundamentos de CriptografiaFundamentos de Criptografia
“A segurança de um criptosistema deve estar na chave e
não no secretismo de uma parte do sistema”
Auguste Kerckhoffs, matemático do século XIX
“the enemy knows the system“
Claude Shannon
7
8
Criptografia simCriptografia siméétricatrica
• Mensagem é cifrada e decifrada recorrendo à mesma chave
• Chave tem de ser mantida em segredo pelas entidades comunicantes
9
Criptografia simCriptografia siméétricatrica
Canal
público
Canal seguro
Cifragem decifragem
criptogramamensagem
10
Criptografia de sCriptografia de sííntese (Hash)ntese (Hash)
• Função de síntese• Entrada: mensagem de tamanho variável
• Saída: resumo (digest) com tamanho fixo
• Permite verificar a integridade de uma mensagem: se a mensagem for alterada o resumo muda
• Elevado desempenho
• Princípios de segurança • one-way: impossível descobrir a mensagem a partir do resumo
• Probabilidade de descobrir uma mensagem com o mesmo resumo (colisões) muito reduzida
• Ex: MD-5, SHA-1
Criptografia de chave pCriptografia de chave púúblicablica
• Criptografia de chave pública ou assimétrica
• Duas chaves matematicamente relacionadas: • Uma chave pública, de conhecimento público.
• Uma chave privada, apenas do conhecimento do possuidor.
• Características dos algoritmos• Computacionalmente impossível (em tempo útil) descobrir uma
chave, conhecendo a outra e o algoritmo
• Computacionalmente fácil cifrar/decifrar quando chave éconhecida
• O que uma chave cifra só a outra pode decifrar
• Ex: RSA, DH, DSA, ElGamal…
11
12
ConfidencialidadeConfidencialidade
13
Confidencialidade (2)Confidencialidade (2)
• Emissor cifra mensagem com chave pública do receptor
• O criptograma só pode ser decifrado com a chave privada, possuída exclusivamente pelo receptor � só este poderádecifrá-la.
14
Assinatura digital (autenticaAssinatura digital (autenticaçção)ão)
15
Assinatura digital (autenticaAssinatura digital (autenticaçção) (2)ão) (2)
• Emissor cifra mensagem com a sua chave privada �assinatura digital
• Qualquer receptor pode decifrar a mensagem, recorrendo àchave pública do emissor.
• O facto de apenas ser possível decifrar a mensagem com a chave pública do emissor garante que este a enviou
16
Não repNão repúúdiodio
• O facto de uma mensagem apenas ser decifrável recorrendo à chave pública de um emissor garante que este assinou a mensagem � não repúdio: é o único que tem posse da chave privada
• Mais fiável do que um documento assinado à mão
OptimizaOptimizaççõesões
• Criptografia de chave pública requer mais recursos (mais lenta) que criptografia simétrica ou de resumo (síntese)
• Criptografia híbrida:• Confidencialidade
• Assimétrica + simétrica
• Assinatura digital• Assimétrica + resumo (síntese)
17
18
Criptografia hCriptografia hííbridabridaConfidencialidadeConfidencialidade• Emissor
Cifrar +
Chave de sessão (simétrica)
msg
Cifrasimétrica
msg
Cifrar
Chave pública (receptor)
Cifraassimétrica
Cifrasimétrica
msg
Cifraassimétrica
19
Criptografia hCriptografia hííbridabridaConfidencialidade (2)Confidencialidade (2)• Receptor
Decifrar
Chave de sessão (simétrica)
msg
Decifrar
Chave privada
Cifrasimétrica
msg
Cifraassimétrica
Criptografia hCriptografia hííbridabridaConfidencialidade (3)Confidencialidade (3)• Emissor gera chave de sessão (simétrica)
• Cifra mensagem com chave de sessão (cifra simétrica)
• Cifra chave de sessão com chave pública do receptor
• Envia criptograma + chave de sessão cifrada
• Receptor recebe criptograma + chave de sessão cifrada
• Decifra chave de sessão com chave privada
• Decifra mensagem com chave de sessão
20
21
Criptografia hCriptografia hííbrida brida Assinatura DigitalAssinatura Digital• Emissor
Hash
Resumo Cifrar Assinatura
+Chave privada
msg
msg
Assinatura
22
Criptografia hCriptografia hííbridabridaAssinatura Digital (2)Assinatura Digital (2)• Receptor
Decifrar Resumo
Comparação de resumosChave pública
msg
Assinatura
Hash Resumo
Criptografia hCriptografia hííbridabridaAssinatura Digital (3)Assinatura Digital (3)• Emissor gera um resumo da mensagem res1
• Cifra resumo com chave privada è assinatura
• Envia mensagem assinada para o receptor
• Receptor calcula resumo da mensagem recebida res2
• Decifra resumo recebido com chave pública do emissor
• Se res1 = res2 então comprovado:• mensagem enviada pelo emissor
• Mensagem não foi alterada (integridade)
23
DistribuiDistribuiçção de chaves pão de chaves púúblicasblicas
24
Alice Carol Bob
(1) KpubAlice
(7) KpubAlice[“Logo pelas 19h”]
(2) KpubCarol
(4) KpubCarol[“Logo pelas 20h”]
(5) KprivCarol[KpubCarol[“Logo pelas 20h”]]=“Logo pelas 20h”
(6) “Logo pelas 20h” “Logo pelas 19h”
(3) “Logo pelas 20h”
Alice Bob
(1) KpubAlice
(3) KpubAlice[“Logo pelas 19h”]
(2) “Logo pelas 19h”
(8) KprivAlice[KpubAlice[“Logo pelas 19h”]]=“Logo pelas 19h”
(4) KprivAlice[KpubAlice[“Logo pelas 19h”]]=“Logo pelas 19h”
Ataque MIM:
O que a Alice julga ter acontecido:
DistribuiDistribuiçção de chaves pão de chaves púúblicasblicas
• Autoridade certificadora (Certification Authority - CA)• A chave pública e identidade do utilizador são assinados por uma
CA � certificados digitais
• Certificados digitais podem ser trocados directamente entre utilizadores mesmo sem acesso à CA (offline)
• Cada utilizador detêm a chave pública da CA
• Utilizadores validam certificados com chave pública da CA
• Ex: Infraestrutura de chave pública X.509
25
26
SSL/TLSSSL/TLS
• Netscape desenvolve SSL (Secure Socket Layer)• Versões 2 e 3
• IETF � TLS 1.0 (Transport Layer Security)• TLS 1.0 corresponde à versão 3.1 do SSL
• SSL/TLS transparente para os protocolos de aplicação
• Tipicamente � protocolo sobre SSL/TLS acrescenta-se um “S”. • ex: HTTPS, IMAPS, POP3S
27
SSL/TLS (2)SSL/TLS (2)
• Tipicamente, devido ao custo dos certificados:
• Apenas o servidor envia certificado.
• Clientes autenticam-se ao nível da aplicação (ex: senha)
WEPWEP
29
SeguranSegurançça 802.11a 802.11
• Inicialmente a preocupação foi a difusão da tecnologia sem fios 802.11. Quanto mais simples melhor (na segurança também)
• Segurança “mínima” � WEP (Wired Equivalent Privacy)
SeguranSegurançça 802.11a 802.11
• Autenticação (da estação)• Sem autenticação � modo aberto (Open mode)
• Com Autenticação � modo partilhado (Shared Mode) (WEP)• Desafio/resposta: AP envia desafio � estação devolve desafio cifrado com
WEP
• Confidencialidade � pacotes cifrados com WEP
• Integridade � CRC32
• Fabricantes adicionaram outras camadas de defesa• “Autenticação” pelo SSID
• Beacons com SSID não são enviados
• AP não responde a pedido (probe)
• Estações têm de saber qual o SSID senão tramas são descartadas
• Controlo de acesso pelos endereços MAC das estações• Filtrar tráfego por MAC
30
31
CCifragem dos dadosifragem dos dados
WEP PRNG(RC4)
IV Chave secreta WEP SDU
ICV
XOR
CriptogramaIV
Trama 802.11
Header FCS
Keystream
32
Decifragem dos dadosDecifragem dos dados
WEP PRNG (RC4)
IV Chave secreta WEP SDU
ICV
XOR
CriptogramaIV
Trama 802.11
ICV
Header FCS
Keystream
Integridade?
VulnerabilidadesVulnerabilidades
• Tamanho de IV reduzido (24 bits)• Necessidade de mudar chave WEP
• Inexistência de mecanismo de renovação de chaves
• Reutilização do IV � Reutilização da Keystream
• Reutilização de keystream + plaintext attack• Decifrar dados sem chave WEP
• SDU2 ⊕ SDU1 = criptograma1 ⊕ criptograma2
33
Vulnerabilidades (2)Vulnerabilidades (2)
• IV fracos � possível descobrir chave WEP• Atacante sabe qual o valor do IV
• Chave RC4 = IV (3 bytes) + WEP (5/13 bytes)
• IV fracos: i:ff:X• i corresponde ao byte i da chave RC4
• i = 3 .. N, (3 primeiros são o IV)
• X pode ser qualquer valor
• Ex: IV fracos para chave WEP de 40 bits • 3:ff:X, 4:ff:X, 5:ff:X, 6:ff:X, 7:ff:X
34
Vulnerabilidades (3)Vulnerabilidades (3)
• Integridade (Integrity Check Value) baseada em CRC32 (aritmética linear)
• WEP não autentica nem garante a integridade do cabeçalho MAC • Estação pode mudar endereço MAC
• AP não se autentica perante estação• Possível forjar uma AP (Rogue AP)
35
Vulnerabilidades (4)Vulnerabilidades (4)
• Autenticação por SSID • Basta esperar por tráfego (associação), ou obrigar estações a se
reautenticarem enviando-lhes uma trama de desassociação
• WEP não controla sequência de tramas• Ataque de repetição
• Mesma chave WEP para toda a rede• Tráfego pode ser escutado/alterado por qualquer estação
36
802.1X802.1X
37
802.1X802.1X
• Norma definida pelo IEEE para redes 802
• Controlo de acesso de clientes em redes 802• 802.3/Ethernet, 802.11, …
• Controlo orientado à porta L2
• Componentes• Supplicant (cliente)
• Autenticador (equipamento com os recursos, switch, router, ponto de acesso,...)
• Servidor de autenticação (ex: RADIUS)
• Durante fase de autenticação porta aberta apenas para tráfego com o autenticador (tramas EAP)
• Se autenticação positiva � porta é totalmente aberta
• Suporta troca de chaves entre autenticador e supplicant para cifra das tramas
38
February 2005 Jesse Walker, Intel Corporation Slide 39
802.1X 802.1X –– Controlo de acessoControlo de acesso
Porta controlada
Antes da
autenticação
Porta não controladaTráfego 802.1X
Outro tráfego (bloqueado)
Porta controlada
Depois da
autenticação
Porta não controladaTráfego 802.1X
Outro tráfego (desbloqueado)
Segurança em Sistemas e Redes 40
802.1X802.1X
WEP dinâmicoWEP dinâmico
• Recurso ao 802.1X para maior flexibilidade e escalabilidade• Autenticação do utilizador
• Suporte de múltiplos métodos de autenticação
• Base de dados centralizada, independente dos APs
• Autenticação do AP
• Chaves autenticação ≠ chaves de cifragem
• Renovação períodica de chaves de cifragem (WEP)
41
42
WEP dinâmicoWEP dinâmico
2. Geração das chaves
MPPE (Microsoft Point-to-
Point Encryption)
3. Envia chaves para o AP
4. Chaves MPPE
(cifradas com chave simétrica do RADIUS)
2. Geração das chaves
MPPE
5. Geração de chave WEP
6. Cifra chave WEP com
chaves MPPE e envia em
EAPOL-KEY
7. Decifra chave WEP com
chave MPPE
8. Aplica chave WEP 8. Aplica chave WEP
9. Ligação 802.11 cifrada com
WEP
1. Autenticação através de método 802.1X/EAP
802.11i802.11i
802.11i802.11i
• Fracasso do WEP � IEEE 802.11i
• Recurso ao 802.1X
• Autenticação/Controlo de acesso• Pre-shared key (PSK)
• Com servidor de autenticação - 802.1X
• Gestão de chaves• chaves temporárias
• chaves de autenticação ≠ chaves de cifragem
• Protecção dos dados• CCMP (Counter mode Cipher block Chaining MAC protocol)
• TKIP (Temporal Key Integrity Protocol)
• Modos infraestruturado e ad-hoc
44
45
WPAWPA
• Wi-Fi Protected Access
• Baseado no draft 3.0 do 802.11i (2002)• TKIP
• sem suporte do modo ad-hoc
• TKIP aproveita o HW do WEP (algoritmo RC4)
• Tipicamente, migração de WEP para WPA com uma actualização do software/firmware
46
WPA2WPA2
• Wi-Fi Protected Access 2
• Baseado na norma final 802.11i
• CCMP e TKIP
• CCMP baseado no algoritmo AES
• AES é mais seguro que RC4
• AES � requer actualizações de HW
• Suporta ambos os modos, infraestruturado e ad-hoc
47
WPA e WPA2WPA e WPA2
• Dois modos:• Personal
• WPA(2)-PSK
• Sem servidor de autenticação
• Autenticação com Pre-shared key (PSK)
• Tramas EAPOL do 802.1X para distribuição/renovação de chaves
• Enterprise
• WPA(2)-EAP
• Com servidor de autenticação
• 802.1X para autenticação e distribuição/renovação de chaves
48
MMéétodos de autenticatodos de autenticaçção 802.1Xão 802.1X
• Requer servidor de autenticação � WPA(2) Entreprise
• Requer métodos de autenticação baseados no EAP• EAP-PAP, EAP-CHAP, EAP-MSCHAPv1, EAP-MSCHAPv2
• LEAP
• EAP-TLS
• EAP-TTLS
• PEAP
• EAP-SIM
• EAP-GSSAPI (Kerberos)
• EAP-OTP (One-Time Passwords)
• EAP-GTC (Generic Token Card)
• …
49
EAPEAP--TLSTLS
• Usa o TLS para autenticar o servidor e o cliente através de certificados X.509 � requer certificado para o servidor e cliente
• Suporta derivação de chaves dinâmicas (chave de sessão)
• Método de suporte obrigatório no WPA
802.1X (EAPoL)
802.11
TLS (auten. X.509 do servidor e cliente/utilizador)
EAP
RADIUS
UDP/IP
50
AutenticaAutenticaçção sobre tão sobre túúnel TLSnel TLS
• Autenticação em duas fases• Estabelecimento de túnel seguro TLS, o qual autentica o servidor
(e eventualmente o cliente) e evita ataques MIM
• Mecanismo de autenticação do utilizador é encapsulado no túnel. Cliente não necessita de certificado digital.
• EAP-TTLS, PEAP
51
EAPEAP--TTLSTTLS
• EAP- Tunneled TLS
• Usa o TLS para autenticar o servidor e eventualmente o cliente.
• TLS encapsula PAP, CHAP, EAP… para autenticação do utilizador
• EAP permite outros métodos de autenticação (PAP, CHAP…).
802.1X (EAPoL)
802.11
TLS (aut. X.509 do servidor e eventualmente do cliente/utilizador)
EAP
RADIUS
UDP/IP
PAP, CHAP, EAP, …(aut. do utilizador)
52
PEAPPEAP
• Protected Extensible Authentication Protocol
• Idêntico ao EAP-TTLS. Implica o recurso ao EAP para autenticação do utilizador.
• EAP-MD5, EAP-MSCHAPV2, EAP-…
802.1X (EAPoL)
802.11
TLS (aut. X.509 do servidor e eventualmente do cliente/utilizador)
EAP
RADIUS
UDP/IP
EAP
PAP, CHAP, MSCHAPv2, EAP, …(aut. do utilizador)
53
Gestão de chavesGestão de chaves
• Master Key (MK)• Derivada do método de
autenticação
• Pairwise Master Key (PMK)
• Pairwise Transient Key (PTK)• Unicast
• Group Transient Key (GTK)• Multicast/broadcast
• Nota: no modo Personal• Não há AS
• MK não existe
• PMK = PSK
Group key
handshakeGroup key
handshake
54
Gestão de chaves (2)Gestão de chaves (2)
1. MK derivada do método de autenticação 802.1X EAP em cada sessão
2. PMK derivada da MK por sessão
3. PMK enviada até ao AP via protocolo de back-end (RADIUS)
4. Geração da PTK através do “4-way
handshake”
5. Envio da GTK através do “Group key
handshake”
Group key
handshake
55
Gestão de chaves (3)Gestão de chaves (3)
• Master Key (MK)• MK = chave simétrica que representa a estação (STA) e o servidor de autenticação
(AS) durante uma sessão. Derivada do método de autenticação
• Só a STA e o AS podem possuir a MK
• Pairwise Master Key (PMK)• PMK = chave simétrica que controla o acesso da STA e do AP aos canais 802.11
durante a sessão.
• Só a STA e o AS podem criar a PMK • a PMK é derivada da MK
• o AS distribui a PMK ao AP
• Posse da PMK demonstra autorização para aceder aos canais 802.11 durante a sessão
• MK ≠ PMK• Senão o AP poderia tomar decisões de controlo de acesso em vez do AS
56
Gestão de chaves (4)Gestão de chaves (4)
Cifrada com a PTK
PTK = Hash(PMK, Anonce, Snonce, MACaddrSTA, MACaddrAP)
57
ProtecProtecçção dos dadosão dos dados
• TKIP (actualização de equipamentos WEP)
• CCMP (equipamentos novos)
58
TKIPTKIP
• Usa o mesmo HW do WEP
• Alterações em relação ao WEP• Integridade da mensagem: protocolo de integridade das mensagens
(Michael) (WEP usa o CRC32)
• IV funciona como contador: nº de sequência das tramas
• Aumento do tamanho do IV (24 para 48 bits)
• Mistura de chaves por pacote
Integridade das mensagensIntegridade das mensagens
• O ICV (CRC32) não oferece uma protecção real
• Michael processa MPDU em vez de MSDU (inclui o cabeçalho)
• É adicionado o campo MIC com o resumo do Michael àtrama antes do ICV
59
Trama TKIPTrama TKIP
Rsvd RsvdExt
IV
Key
IDRC2
b0 b3 b4 b5 b6 b7
IV / KeyID
4octets
Extented IV
4 octets
Data
>=0 octetsMIC
8 octets
802.11 Header
RC1RC0 TSC2 TSC3 TSC4 TSC5
ICV
4 octets
Encrypted
Authenticated Authenticated
60
61
TKIPTKIP
• TKIP Sequence Counter (TSC)• Tamanho do IV: 24 bits � 48 bits
• IV utiliza um número de sequência para evitar ataques de repetição.
• O IV é criado de forma a evitar IV fracos.
• Protege contra ataques de repetição
• Renovação de PTK � TSC=0
• Por cada pacote � TSC = TSC+1
• Pacotes com TSC inferior a anterior � descartado
62
Mistura de chaves por pacoteMistura de chaves por pacote
• Evita a reutilização de keystreams
• TSC = “48 bit IV value”
• Diminui correlação entre a keystream e a chave de cifragem
63
CCMPCCMP
• Baseado no AES• Modo CCM (Counter Mode) � confidencialidade
• Modo CBC (Cipher Block Chaining) � integridade
• CCMP = Counter Mode Encryption with CBC MAC Protocol
• CCMP está para o AES como o TKIP está para o RC4.
• Requer novo HW
Trama CCMPTrama CCMP
64
Rsvd RsvdExt
IV
Key
IDRsvd
b0 b3 b4 b5 b6 b7
IV / KeyID
4octets
Extented IV
4 octetsData
>=0 octets
MIC
8 octets
802.11 Header
PN1PN0 PN2 PN3 PN4 PN5
Encrypted
Authenticated Authenticated
65
EncapsulamentoEncapsulamento