Seguran
Seguran ç ç a em Redes WiFi a em Redes WiFi
FEUP>DEEC>MIEIC>Comunica
FEUP>DEEC>MIEIC>Comunicaçções Mões Móóveisveis
Jaime Sousa Dias <jaime.dias@fe.up.pt>
Princ
Princ í í pios de seguran pios de seguran ç ç a a
• Autenticação
• Autorização/Controlo de acesso
• Confidencialidade dos dados
• Autenticidade dos dados
• Integridade dos dados
• Disponibilidade de Serviço
Princ
Princ í í pios de seguran pios 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
Princ
Princ í í pios de seguran pios 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
Princ
Princ í í pios de seguran pios 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 Criptografia
Fundamentos de Criptografia
Fundamentos de Criptografia Fundamentos 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
Criptografia sim
Criptografia sim é é trica trica
• Mensagem é cifrada e decifrada recorrendo à mesma chave
• Chave tem de ser mantida em segredo pelas entidades
comunicantes
Criptografia sim
Criptografia sim é é trica trica
Canal público
Canal seguro
Cifragem decifragem
Criptografia de s
Criptografia 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 p
Criptografia de chave p ú ú blica blica
• 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…
Confidencialidade
Confidencialidade
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.
Assinatura digital (autentica
Assinatura digital (autentica ç ç ão) ão)
Assinatura digital (autentica
Assinatura 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
Não rep
Não rep ú ú dio dio
• 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
Optimiza
Optimiza ç ç õ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)
Criptografia h
Criptografia h í í brida brida Confidencialidade Confidencialidade
• Emissor
Cifrar
+
Chave de sessão (simétrica)
msg
Cifra simétrica
msg
Cifrar Chave pública (receptor)
Cifra assimétrica
Cifra simétrica
msg
Cifra assimétrica
Criptografia h
Criptografia h í í brida brida Confidencialidade (2) Confidencialidade (2)
• Receptor
Decifrar
Chave de sessão (simétrica)
msg
Decifrar Chave privada
Cifra simétrica
msg
Cifra assimétrica
Criptografia h
Criptografia h í í brida brida Confidencialidade (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
Criptografia h
Criptografia h í í brida brida Assinatura Digital Assinatura Digital
• Emissor
Hash
Resumo Cifrar Assinatura
Chave privada
+ msg
msg
Assinatura
Criptografia h
Criptografia h í í brida brida Assinatura Digital (2) Assinatura Digital (2)
• Receptor
Decifrar Resumo
Comparação de resumos Chave pública
msg
Assinatura
Hash Resumo
Criptografia h
Criptografia h í í brida brida Assinatura 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)
Distribui
Distribui ç ç ão de chaves p ão de chaves p ú ú blicas blicas
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”
(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:
Distribui
Distribui ç ç ão de chaves p ão de chaves p ú ú blicas blicas
• 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
SSL/TLS SSL/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
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)
WEP WEP
Seguran
Seguran ç ç a 802.11 a 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)
Seguran
Seguran ç ç a 802.11 a 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
C C ifragem dos dados ifragem dos dados
WEP PRNG (RC4)
IV Chave secreta WEP SDU
ICV XOR
Criptograma IV
Trama 802.11
Header FCS
Keystream
Decifragem dos dados Decifragem dos dados
WEP PRNG (RC4)
IV Chave secreta WEP SDU
ICV XOR
Criptograma IV
Trama 802.11
ICV
Header FCS
Keystream
Integridade?
Vulnerabilidades Vulnerabilidades
• 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
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
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)
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
802.1X
802.1X
802.1X 802.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
802.1X
802.1X – – Controlo de acesso Controlo de acesso
Porta controlada
Antes da autenticação
Porta não controlada Tráfego 802.1X
Outro tráfego (bloqueado)
Depois da autenticação
Porta não controlada Tráfego 802.1X
Outro tráfego (desbloqueado)
802.1X
802.1X
WEP dinâmico WEP 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)
WEP dinâmico WEP 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
1. Autenticação através de método 802.1X/EAP
802.11i
802.11i
802.11i 802.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
WPA WPA
• 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
WPA2 WPA2
• 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
WPA e WPA2 WPA 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
M M é é todos de autentica todos 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)
EAP EAP - - TLS TLS
• 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
Autentica
Autentica ç ç ão sobre t ão sobre t ú ú nel TLS nel 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
EAP EAP - - TTLS TTLS
• 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)
PEAP PEAP
• 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)
TLS (aut. X.509 do servidor e eventualmente do cliente/utilizador)
EAP
RADIUS EAP
PAP, CHAP, MSCHAPv2, EAP, …(aut. do utilizador)
Gestão de chaves Gestã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
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
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
Gestão de chaves (4) Gestão de chaves (4)
Cifrada com a PTK
Protec
Protec ç ç ão dos dados ão dos dados
• TKIP (actualização de equipamentos WEP)
• CCMP (equipamentos novos)
TKIP TKIP
• 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 mensagens Integridade 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
Trama TKIP Trama TKIP
Rsvd Rsvd Ext IV
Key ID RC2
b0 b3 b4 b5 b6 b7
IV / KeyID 4octets
Extented IV 4 octets
Data
>=0 octets
MIC 8 octets 802.11 Header
RC1
RC0 TSC2 TSC3 TSC4 TSC5
ICV 4 octets Encrypted
Authenticated Authenticated
TKIP TKIP
• 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
Mistura de chaves por pacote Mistura 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
CCMP CCMP
• 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 CCMP Trama CCMP
Rsvd Rsvd Ext IV
Key Rsvd ID
b0 b3 b4 b5 b6 b7
IV / KeyID 4octets
Extented IV 4 octets
Data
>=0 octets
MIC 8 octets 802.11 Header
PN1
PN0 PN2 PN3 PN4 PN5
Encrypted
Authenticated Authenticated