Segurança em redes sem fios – Wi-Fi
Jaime Dias
FEUP > DEEC > MRSC > Segurança em Sistemas e Redes v3
802.11
• Wireless Local Area Network
• Institute of Electrical and Electronics Engineers (IEEE)
• 802.11 (2 Mbit/s) (ISM - 2,4 GHz) (1997)
• 802.11a (54 Mbit/s) (E.U.A) (5 GHz) (1999)
• 802.11b (11 Mbit/s) (2,4 GHz) (1999)
• 802.11g (54 Mbit/s) (2,4 GHz) (2003)
MRSC > SSR > seg_sem_fios_wifi_v3 3
802.11 – Modos de operação
• Infraestruturado
Basic Service Set (BSS)
Quando se pretende ligar a rede Wi-Fi a uma outra rede (ex: Internet) Î através de um ponto de acesso (Access Point – AP)
Extended Service Set Identification (ESSID)
• Ad-hoc
Independent Basic Service Set (IBSS)
Ex: comunicação entre um portátil e um PDA Basic Service Set Identification (BSSID)
Wi-Fi
• IEEE 802.11a • IEEE 802.11b • IEEE 802.11g
• WPA (Wi-Fi Protected Access)
Draft da norma IEEE 802.11i
• WPA2 (Wi-Fi Protected Access 2)
Robust Security Network (RSN) Norma (final) IEEE 802.11i
MRSC > SSR > seg_sem_fios_wifi_v3 5
Arquitectura de segurança tradicional
• Sem redes wireless
MRSC > SSR > seg_sem_fios_wifi_v3 7
Seguranç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ça 802.11
• Autenticação (da estação)
Sem autenticação Î modo aberto (Open mode)
Com Autenticação Î modo partilhado (Shared Mode) (WEP)
o 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 (Service Set Identifier)
o Beacons com SSID não são enviados
o AP não responde a pedidos Probe
o 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
MRSC > SSR > seg_sem_fios_wifi_v3 9
Cifragem
WEP PRNG (RC4)
IV Chave secreta WEP SDU
ICV XOR Criptograma IV Trama 802.11 Header FCS Keystream
Decifragem
WEP PRNG (RC4)
IV Chave secreta WEP SDU
ICV XOR Criptograma IV Trama 802.11 ICV Header FCS Keystream Integridade?
MRSC > SSR > seg_sem_fios_wifi_v3 11
Vulnerabilidades
• Norma permite reutilização do IV ÆKeystream pode ser reutilizada • Reutilização de keystream + plaintext attack Æ possível decifrar dados
sem chave WEP
• Tamanho de IV reduzido Æ Mesmo que não reutilizado, valores para IV tendem a esgotar-se rapidamente Æ necessidade de mudar chave WEP Æ não foram definidos mecanismos para mudança automática da chave WEP • IV fracos (Fluhrer et al.) Æ possível descobrir chave WEP
• Integridade (Integrity Check Value) baseada em CRC32 (aritmética linear) Æ é possível alterar a mensagem e o ICV sem que as estações se
Vulnerabilidades (2)
• Autenticação por endereço MAC Æ WEP não autentica nem garante a integridade do cabeçalho MAC Æ estação pode mudar endereço MAC Æ pode fazer-se passar por outra estação ou AP Æ enviar tramas de
desassociação (ataque DoS)
• 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
• AP não se autentica perante estação Æ é possível forjar uma AP (Rogue
AP)
• Mesma chave WEP para toda a rede Æ tráfego pode ser escutado/alterado por qualquer estação
MRSC > SSR > seg_sem_fios_wifi_v3 13
IV fracos (Fluhrer et al.)
Î descoberta de chave WEP
Atacante sabe qual o valor de IV (vai em claro no cabeçalho)
Alguns IV tem a particularidade de ajudarem na descoberta do valor do byte i da chave secreta RC4
IV fracos: i:ff:X (24 bits)
o i corresponde ao byte i da chave RC4 (relevantes: i = 3 .. N, pois os 3 primeiros são os conhecidos do IV)
o X pode ser qualquer valor
Ex: IV fracos para chave WEP de 40 bits (5 bytes) Î i = 3 .. 7
o 3:ff:X, 4:ff:X, 5:ff:X, 6:ff:X, 7:ff:X
40 bits Î 5 x 256 = 1280 IV fracos 104 bits Î 13 x 256 = 3328 IV fracos
MRSC > SSR > seg_sem_fios_wifi_v3 15
802.11i
• Fracasso do WEP Æ IEEE 802.11i
RSN
• O RSN define um conjunto de protocolos e reutiliza outros já existentes • Cifragem dos dados
CCMP (Counter mode Cipher block Chaining MAC protocol) TKIP (Temporal Key Integrity Protocol) (opcional)
WRAP (Wireless Robust Authenticated Protocol) (opcional)
o Foram reclamadas algumas patentes
• Autenticação/Controlo de acesso 802.1X Pre-shared key (PSK) • Gestão de chaves 802.1X chaves temporárias
chaves de autenticação ≠ chaves de cifragem
MRSC > SSR > seg_sem_fios_wifi_v3 17
RSN
• O RSN implica o suporte do CCMP, o qual baseia-se no AES
• Pelo facto do AES não poder, na maioria dos casos, ser suportado
via software, este tem de ser implementado em HW Æ actualização
do HW
WPA
• O Wi-Fi Protected Access é baseado no draft 3.0 do 802.11i (2002)
• Basicamente, é o “RSN incompleto”
só com TKIP (sem CCMP) sem suporte do modo ad-hoc
• O HW do WEP (RC4) mantém-se
• Tipicamente, migração de WEP para WPA com uma actualização
do software/firmware
MRSC > SSR > seg_sem_fios_wifi_v3 19
WPA2
• Finalização do 802.11i Æ Wi-Fi especificou o WPA2
• WPA2 Æ AES Æ migração dos equipamentos WEP para WPA2
requer actualizações de HW
• Equipamento WPA com HW para AES, pode ser migrado para
WPA2 com uma actualização do software/firmware
WPA e WPA2
• O WPA2 é compatível com o WPA
Suporte simultâneo de WPA e WPA2 no mesmo BSS
• Temporariamente, as certificações WPA e WPA2 mantêm a
compatibilidade com WEP (transição)
MRSC > SSR > seg_sem_fios_wifi_v3 21
WPA e WPA2
• WPA = TKIP + 802.1X + gestão de chaves + modo infra. • WPA2 = 802.11i = RSN = CCMP + TKIP + 802.1X + gestão de chaves + modo infra. + modo ad-hoc802.1X
• Adaptação do Extensible Authentication Protocol (EAP) para IEEE LAN
802.3/Ethernet, 802.11 …
• Controlo de acesso
orientado à porta (associação 802.11)
• Autenticação
autenticação do cliente (supplicant)
autenticação do autenticador (AP) Æ evita rogue APs
suporta diversos métodos de autenticação Æ autenticação do utilizador
• Distribuição de chaves
WEP dinâmico WPA e WPA2
Métodos de autenticação
• PAP
• CHAP, MSCHAPv1, MSCHAPv2
• 802.1X implica o recurso a 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) …
MRSC > SSR > seg_sem_fios_wifi_v3 25
LEAP
• Lightweight Extensible Authentication Protocol • Desenvolvido pela Cisco
• Primeiro protocolo a recorrer ao 802.1X em 802.11
• Suporta derivação de chaves dinâmicas (chave de sessão)
• Cliente e Servidor de autenticação autenticam-se mutuamente através do MSCHAPv1
EAPoL
802.11
MSCHAP (dois sentidos)
EAP
RADIUS
UDP/IP
MRSC > SSR > seg_sem_fios_wifi_v3 27
LEAP
• Identidade do utilizador é enviada em claro
• Senha vulnerável a ataques de dicionário
EAP-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
MRSC > SSR > seg_sem_fios_wifi_v3 29
EAP-TLS
• Identidade do cliente enviada em claro
• CA públicas
problema: custo dos certificados para servidor e clientes
• CA privadas
Autenticação sobre tú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.
• Suporta derivação de chaves dinâmicas (chave de sessão)
• EAP-TTLS, PEAP
MRSC > SSR > seg_sem_fios_wifi_v3 31
EAP-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
• 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
MRSC > SSR > seg_sem_fios_wifi_v3 33
EAP-SIM
• EAP-SIM (Subscriber Identity Module)
Adequado para hotspots Convergência GSM-WLAN
SIM para autenticar em redes GSM/GPRS e em redes WLAN Autenticação do utilizador
o Posse do SIM + cohecimento do PIN
Distribuição de uma chave de sessão Possibilidade de facturação
MRSC > SSR > seg_sem_fios_wifi_v3 35
EAP-SIM
• Autenticação
• Distribuição de chave de sessão • GSM
RAND: 128 bits SRES: 32 bits Kc: 64 bits
• Tamanho de Kc insuficiente para WLAN
• Kc não é para ser utilizado directamente Æ chave de sessão • Solução Æ n*Kc => n*RAND, n*SRES
One Time Password (OTP)
• EAP-OTP
• Sistemas de autenticação de senha única
• Sistemas de autenticação baseados em testemunhos (hardware ou software) que geram senhas únicas.
• Podem ser transmitidas em claro Æ só podem ser usadas uma vez • Exemplos:
S/Key SecurID
MRSC > SSR > seg_sem_fios_wifi_v3 37
Generic Token Card (GTC)
• EAP-GTC
• Exemplo de um GTC: Smartcard com certificado digital X.509
CPU + processor criptográfico R A M R OM E E P R OM Resumo 0%3k$ §5?)/&-§$%&;: &%:-‘# 0%3k$n §5?)/&-# Assinatura Digital PIN ou Impressão digital para aceder ao Smartcard
MRSC > SSR > seg_sem_fios_wifi_v3 39
Gestão de chaves
• WEP
Chaves estáticas
partilhadas por todas as estações
chave de autenticação = chaves de cifragem
• 802.1X + alguns métodos de autenticação EAP
Distribuição de chaves Renovação de chaves
Chaves autenticação ≠ chaves de cifragem
• WEP dinâmico = WEP + 802.1X
• WPA e WPA2 requerem 802.1X
WEP dinâmico
• Uma chave por utilizador
• Estações e AP não necessitam de ser configurados com chave WEP
estática
• Distribuída transparentemente via 802.1X
• Utilizador é autenticado
• Necessidade de um servidor de autenticação
• Nível de segurança
MRSC > SSR > seg_sem_fios_wifi_v3 41
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
9. Ligação 802.11 cifrada com WEP
WPA e WPA2
• Dois modos de operação
Enterprise: Com servidor de autenticação
o 802.1X para autenticação e distribuição/renovação de chaves
Personal: Sem servidor de autenticação
o Autenticação com Pre-shared key (PSK)
MRSC > SSR > seg_sem_fios_wifi_v3 43
Gestão de chaves
• Master Key (MK)
• Pairwise Master Key (PMK) • Pairwise Transient Key (PTK)
Unicast
• Group Transient Key (GTK)
Multicast/broadcast
• Nota: no modo Personal (sem AS)
MK não existe PMK = PSK
Group key handshake
Gestão de chaves (2)
1. MK derivada do método deautenticaçã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
MRSC > SSR > seg_sem_fios_wifi_v3 45
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
o a PMK é derivada da MK o 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
Gestão de chaves (4)
cifrada com a PTK
Protecção dos dados
• TKIP (actualização de equipamentos WEP)
• CCMP (equipamentos novos)
MRSC > SSR > seg_sem_fios_wifi_v3 49
TKIP
Enquadramento - Vulnerabilidades do WEP
• IV muito curto
• Reutilização da mesma keystream
• IV + chave WEP Æ ataque de IV fracos
• Integridade das mensagens
• Mesma chave para autenticação do cliente e confidencialidade
• Não há protecção contra ataques de repetição
Alterações do WEP para o TKIP
• Integridade da mensagem: protocolo de integridade das mensagens
(Michael)
• IV funciona como contador: nº de sequência das tramas
• Mistura de chaves por pacote
MRSC > SSR > seg_sem_fios_wifi_v3 51
TKIP MPDU
MIC FC Dur A1 A2 A3 A4 Qos Ctl Packet number Data FCS C= 1 C=2 C=n-1 Seq Ctl Hlen Header part C=nChaves TKIP
• Temporal Key (TK) (256 bits) é retirada da PTK
• TK é dividida em 3 chaves:
• 1 chave de 128 bits para confidencialidade
A estação e o AP usam a mesma chave
Mistura de chaves por pacote diminui probabilidade de ataque
• 2 chaves de 64 bits para autenticação e integridade dos dados e
cabeçalho
MRSC > SSR > seg_sem_fios_wifi_v3 53
Integridade das mensagens
• O ICV (CRC32) não oferece uma protecção real
• Alternativas requerem novos algoritmos ou operações de
multiplicação mais rápidas
• Michael processa MPDU em vez de MSDU
• Para maior desempenho Æ Michael baseia-se em deslocações e
somas Æ vulnerável a ataques de força bruta Æ adição de
Contramedidas TKIP
• Verifica o ICV, e o IV antes de verificar o MIC
Minimiza a probabilidade de falsos positivos
No caso de uma falha: muito provavelmente resultado de um ataque
• Se um ataque é detectado :
Pára de usar as chaves
2 ataques num minuto => desassociação, renovação de chaves e
espera de 60 s!!!
MRSC > SSR > seg_sem_fios_wifi_v3 55
IV – 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
Mistura de chaves por pacote
• Evita a reutilização de keystreams
MRSC > SSR > seg_sem_fios_wifi_v3 57
CCMP
• Implementação obrigatória em RSN (WPA2) • Solução de longo termo
• 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. • Na maioria dos casos AES requer novo HW
• 1 chave de 128 bits única para o CCM e o CBC: confidencialidade, integridade e autenticidade
CCMP
• Usa o CBC-MAC para calcular um MIC (Message Integrity Code)
sobre o cabeçalho, tamanho do cabeçalho e payload.
MRSC > SSR > seg_sem_fios_wifi_v3 59