Introdução a Computação Móvel Segurança em Redes Sem Fio Bernardo Wanghon Maia Jr. Francisco de Assis Menezes Bastos Filho Redes Sem Fio Conteúdo •Introdução •Modo de Operação •Objetivos de Segurança •Desafios de Segurança •Identidade, Autenticação e Controle de Acesso •Segurança 802.11 e Falhas –SSID –WEP –Autenticação por MAC Redes Sem Fio Conteúdo • Extensões para segurança de redes 802.11 – TKIP – CCMP Redes Sem Fio (WLAN) Introdução • As redes sem fio são vítimas de seu próprio sucesso. Se desenvolveram tão rápido que, quando surgiu a necessidade de segurança (sempre uma prioridade secundária), viu-se que esta é uma questão complexa e difícil de implementar com a tecnologia usada para fazer as redes funcionarem. • São redes que utilizam sinais de rádio para realizarem a sua comunicação. • Tem usos variados, baseados em uma necessidade comum: a mobilidade (Empresas, Comércio, Educação, Depósitos, Hospitais, etc...) Redes Sem Fio (WLAN) IEEE 802.11 Redes Sem Fio (WLAN) IEEE 802.11 Redes Sem Fio (WLAN) Objetivos de Segurança • Por utilizar um meio de transmissão aberto, redes sem fio retomam um problema já bastante conhecido: interceptação de comunicações. • Um dos objetivos do padrão WLAN era de prover segurança e privacidade que fosse equivalente ao sistema com fio. • Os designers implementaram vários mecanismos de segurança para proporcionar: - Autenticação - Confidencialidade - Integridade - Controle de Acesso Redes Sem Fio (WLAN) Desafios de Segurança • Como permitir o acesso apenas a usuários autorizados? • Como evitar que as credenciais de autenticação sejam interceptadas? • Como garantir a confidencialidade da informação trocada? • Como garantir a integridade da informação? Redes Sem Fio (WLAN) Identidade • O endereço MAC era utilizado como a única forma de identidade para os dispositivos e usuários. • Entretanto, atualmente a maioria dos drivers de dispositivos permitem ao usuário alterar o endereço MAC Redes Sem Fio (WLAN) Autenticação • O padrão WLAN atual inclui duas formas de autenticação: - Sistema Aberto: é um processo de autenticação nulo, onde a estação, ou cliente, sempre autentica com êxito. - Código Compartilhado: utiliza um desafio e uma resposta. Redes Sem Fio (WLAN) Autenticação • Mensagens Usadas na Autenticação - A estação requer autenticação utilizando um código compartilhado. - O AP responde com um desafio de 128 bytes gerado aleatoriamente. - A estação recebe o desafio, criptografa utilizando o código compartilhado e o algoritmo RC4 e devolve para o AP. - O AP descriptografa utilizando RC4 e o código compartilhado , verifica se o valor descriptografado combina com o valor aleatório enviado na segunda mensagem. Redes Sem Fio (WLAN) Controle de Acesso • Controle de Acesso é o processo que limita aqueles que podem utilizar um recurso de sistema. • Existem duas formas de controle de acesso usadas nos equipamentos WLAN: - Lista de controle de acesso(ACL) - Rede de trabalho fechada • A maioria dos fornecedores tem optado pela utilização da lista de controle de acesso baseado em endereço(MAC) Redes Sem Fio (WLAN) Controle de Acesso • Lista de Controle de Acesso(ACL) - É uma consulta baseada na identidade(MAC) que indica quais recursos a identidade específica pode utilizar. - Em uma WLAN o único recurso é a utilização de uma rede de trabalho. - Se o endereço MAC não aparecer na ACL, então a estação não poderá usar a rede. Redes Sem Fio (WLAN) Controle de Acesso • Lista de Controle de Acesso(ACL) PROBLEMA: - o MAC é sempre transmitido de forma não criptografada. - uma vez que um MAC autorizado é identificado, basta o atacante alterar o seu para ter acesso. Redes Sem Fio (WLAN) Controle de Acesso • Rede de Trabalho Fechada - O Usuário deve fornecer um segredo ao AP para garantir o acesso. PROBLEMA: - A cadeia usada como segredo compartilhado é o BBS(Conjunto de Serviços Básicos) ou o nome da rede. - Este nome é transmitido claramente em várias estruturas de gerenciamento durante uma operação WLAN Redes Sem Fio (WLAN) Segurança IEEE 802.11 - SSID • Service Set Identifier (Identificador do conjunto de Serviços) - Cada AP é configurado com um ou mais SSID - Para acessar a rede os clientes tem que ser configurados com o SSID correto. • Permite segmentação de uma rede em várias - Criar redes por departamento ou grupo de trabalho • O SSID é um mecanismo de autenticação que funciona como uma password Redes Sem Fio (WLAN) Segurança IEEE 802.11 - SSID Redes Sem Fio (WLAN) Segurança IEEE 802.11 - SSID • PROBLEMAS: - SSID NÃO É um mecanismo de segurança. - Para gerenciamento da rede, AP´s fazem broadcast periódicos do seu SSID (aberto) - AP´s podem ser configurados para não fazerem broadcast do seu SSID mas isso não impede atacantes de ver o SSID na comunicação dos clientes com o AP Redes Sem Fio (WLAN) Segurança IEEE 802.11 - SSID Redes Sem Fio (WLAN) Segurança IEEE 802.11 - WEP • Protocolo de confidencialidade, baseado em encriptação simétrica usando o algoritmo RC4, gerando uma “corrente de chaves” (Key stream) • Utiliza chaves estáticas de 40 e 104 bits, concatenadas com um Vetor de Inicialização de 24 bits chaves de 64 ou 128 bits por pacote • A chave é configurada no AP e 01 cliente (key-maping) ou no AP e vários clientes (default key) Redes Sem Fio (WLAN) Segurança IEEE 802.11 - WEP Redes Sem Fio (WLAN) Limitações do WEP • Chaves pequenas e estáticas levam a uma relativa vulnerabilidade do WEP • Não especifica mecanismo de distribuição e gestão de chaves • Vetor de Inicialização é pequeno e transmitido aberto • Não garante a integridade da informação. Segurança Básica IEEE 802.11 Autenticação por MAC • MAC é um mecanismo de autenticação de clientes. • Cada AP é configurado com uma lista dos endereços MAC dos clientes que podem associar-se ao AP. • Exige uma gestão cuidadosa e exaustiva de cada AP • Só praticável em redes pequenas (com algumas dezenas de clientes e de APs ) • Problema: os endereços MAC podem ser simulados. Extensões de Segurança • As falhas do protocolo WEP demonstram as dificuldades no design de protocolos de segurança • Novos protocolos estão sendo desenvolvidos pelo IEEE 802.11 Task Group i (TGi) para a camada de enlace de dados : TKIP e CCMP • TKIP (Temporal Key Integrity Protocol – Protocolo de Integridade de Chave Temporária) foi criado para melhorar a segurança do esquema WEP na arquitetura existente. Ele mantém compatibilidade, com algumas restrições: – Sistemas instalados devem permitir upgrade (software ou firmware) – WEP instalado no hardware não sofre mudanças – A degradação de performance deve ser minimizada Extensões de Segurança - TKIP • TKIP corrige as falhas identificadas no protocolo WEP com 3 novos elementos: – Um algoritmo MIC (Message Integrity Code – Código de Integridade da Mensagem) para evitar falsificações – Michael – Uma disciplina de sequenciamento de pacotes, para evitar ataques de repetição – Uma função de modificação de chave (key mixing) por pacote, para evitar ataques FMS • TKIP também usa um esquema de gerenciamento de chaves adaptado do padrão IEEE 802.1X para prover chaves novas Extensões de Segurança - TKIP • Algoritmos MIC calculam uma função dos dados a serem transmitidos e envia o valor anexado aos mesmos. O receptor recalcula a função e compara com o valor recebido. Se combinam, os dados são autênticos. Se não, os dados são considerados falsos • O algoritmo MIC do TKIP, Michael, foi desenvolvido porque algoritmos convencionais possuem um custo de computação muito alto • Michael usa uma chave de 64 bits, obtida através de um conjunto restrito de operações (minimizar impacto na performance) ~ 5.5 ciclos/byte num i486 Extensões de Segurança - TKIP • Uso somente de Michael representa pouca segurança, mas TKIP implementa outras medidas a serem usadas em conjunto com ele: – Após uma falha de validação MIC, novas chaves devem ser geradas (rekeying) – Novas chaves só são geradas uma vez a cada minuto (falsos positivos ~ 1 por ano) Extensões de Segurança - TKIP Extensões de Segurança - TKIP • Associado ao algoritmo de MIC, é utilizado um esquema de sequenciamento de pacotes para evitar ataques de repetição • TKIP estende o formato WEP para usar um sequencial de 48 bits associado à chave de encriptação (e não ao valor MIC, por motivos de compatibilidade) • Essa associação é usada para encriptar o valor MIC e o ICV do WEP, tornando possível a detecção de ataques de repetição como falhas de MIC ou ICV Extensões de Segurança - TKIP • Finalmente, a modificação da chave de encriptação para cada pacote ocorre da seguinte forma: uma função de modificação recebe como entrada a chave WEP, o endereço MAC do emissor e o número de sequência do pacote e retorna uma nova chave WEP para cada pacote • O cálculo da função é dividido em 2 fases para diminuir a carga computacional (~ 150 ciclos por pacote): – 1ª fase combina chave WEP, MAC do transmissor e parte mais significante do sequencial para calcular valor intermediário (usado em até 216 pacotes) – 2ª fase “mistura” o valor intermediário com o resto do sequencial para gerar a nova chave, evitando ataques FMS Extensões de Segurança - TKIP Extensões de Segurança - TKIP • O protocolo TKIP usa 2 chaves: – uma de 128 bits para a função de modificação de chave por pacote – Uma de 64 bits para o algoritmo MIC Michael • O esquema 802.1X usado na autenticação e gerenciamento de chaves gera uma chave mestra (master) logo após a associação do cliente ao sistema e a distribui • O cliente e o AP usam essa chave para gerar as duas do protocolo TKIP Extensões de Segurança - TKIP • O TKIP funciona como uma espécie de frontend para o protocolo WEP, aumentando o nível de segurança Chave WEP TKIP Dado Michael Função de Modificação de Chave WEP Dado Cifrado Seqüenciador Dado modificado (MIC + Seq) Extensões de Segurança - CCMP • CCMP (Counter Mode CBC-MAC Protocol) é outra solução de segurança para a comunicação sem fio, mas sem garantia de compatibilidade com o hardware já utilizado • Usa como algoritmo de encriptação o AES (Advanced Encryption System – Sistema de Encriptação Avançado) com chave de 128 bits ao invés do RC4 (WEP 40-104 bits e TKIP 64128 bits) Extensões de Segurança - CCMP • Características desejadas para CCMP: – Chave única para prover integridade e confidencialidade, reduzir overhead de gerenciamento de chaves e minimizar tempo de computação de chaves – Garantir integridade do cabeçalho dos pacotes, e integridade e confidencialidade dos dados (payload) – Permitir pré-computação para diminuir latência – Suportar pipelining para aumentar eficiência – Implementação pequena – Overhead por pacote reduzido – Evitar esquemas patenteados Extensões de Segurança - CCMP • Problema: Nenhum dos modos de operação do AES reúne todas essas características • Solução: Criar novo modo – CCM • CCM utiliza duas técnicas conhecidas: – Encriptação Counter-Mode – CBC-MAC (Cipher Block Chaining Message Autentication Code) para controle de integridade • CCM usa apenas uma senha para garantir integridade e confidencialidade, e usa apenas uma primitiva de encriptação tanto no emissor como no receptor Extensões de Segurança - CCMP • O CCMP possui muito em comum com TKIP, mas é mais elegante por não se restringir pelo hardware • CCMP utiliza um IV de 48 bits, permitindo uma meia-vida bastante longa para a chave AES. O gerenciamento de chaves (802.1X) se limita ao início da associação do cliente ao sistema • Este mesmo IV também é usado como sequencial, para detectar repetições Extensões de Segurança - CCMP • Pela robustez do algoritmo AES frente ao RC4, não há mais necessidade de uma função de derivação de chaves por pacote. A mesma chave AES é usada durante toda a comunicação para garantir integridade e confidencialidade • O controle de integridade usa um algoritmo MIC mais forte que Michael, e não usa ICV associado aos dados • A fraqueza mais visível do CCMP é que, para evitar ataques de fragmentação, ele protege quase todo o cabeçalho de praticamente todos os pacotes Extensões de Segurança WEP TKIP CCMP Algoritmo de Encriptação Tamanho da Chave RC4 40 – 104 bits RC4 64 – 128 bits AES 128 bits Tempo de vida da chave Chave por pacote IV de 24 bits Concatena IV à chave-base IV de 48 bits Função de modificação IV de 48 bits Não precisa Integridade do cabeçalho Não tem Michael CCM Controle de Integridade Detecção de repetição CRC-32 Não tem Michael Força IV sequencial CCM Força IV sequencial Gerenciamento de Chave Não tem IEEE 802.1X IEEE 802.1X Segurança Básica IEEE 802.11 Recomendações de Uso • Usar WEP (Wired Equivalent Privacy), sempre que possível, que permite criptografar o tráfego entre o cliente e o AP. • Verificar se o WEP está habilitado e se a chave é diferente daquela que acompanham a configuração padrão do equipamento. • Considerar o uso de criptografia nas aplicações. Exemplo, PGP para o envio de e-mails, SSH para conexões remotas ou ainda VPNs; • No caso de notebooks com cartões wireless PCMCIA, inserir o cartão apenas quando for usar a rede e retirar ao terminar. Segurança Básica IEEE 802.11 Recomendações de Criação • Ter consciência da área de abrangência da rede. • Alterar o SSID (Server Set ID) padrão dos AP; • Desabilitar o broadcast de SSID; • Usar sempre que possível WEP (Wired Equivalent Privacy) • Trocar as chaves WEP que acompanham a configuração padrão do equipamento. Procure usar o maior tamanho de chave possível (128 bits); • Desligue seu AP quando não estiver usando a rede. Segurança Básica IEEE 802.11 Balanço • É preferível utilizar os mecanismos básicos de segurança do IEEE 802.11 do que não utilizar nenhum. • São aceitáveis em redes de pequena dimensão e com baixo requisitos de segurança • Devem ser utilizados em conjunto, fornecendo um nível moderado para: - Autenticação de APs(SSID) - Autenticação de clientes (endereço MAC) - Confidencialidade no seguimento cliente-AP (WEP) Redes sem Fio (WLAN) Conclusão • Em redes wireless, as questões de segurança são mais agudas - Não confinadas a um espaço físico controlado - Broadcast • A segurança tem um preço: - Desempenho - Facilidade de utilização - Custo • As soluções de segurança devem ser adaptadas ao tipo de rede e ao potencial de risco Redes sem Fio (WLAN) Redes Abertas • Apesar das grandes discussões sobre segurança em redes sem fio, uma determinada classe dessas redes chama a atenção: as redes abertas • Essas redes, na contramão da discussão passada, não utilizam nenhum tipo de segurança, nem impõem qualquer restrição de uso • O barateamento da tecnologia sem fio leva a uma disponibilidade cada vez maior de pontos de acesso públicos (hotspots) Redes sem Fio (WLAN) Redes Abertas • Inicialmente pagos e restritos, esses pontos rapidamente se expandiram em número e localização, e se tornaram praticamente uma amenidade (comparada por alguns à eletricidade, aquecimento ou ar-condicionado) • Nessas redes, é tarefa do usuário proteger seus dados nas comunicações, usando ferramentas como SSH, PGP e VPN´s. Redes sem Fio (WLAN) Bibliografia • Wireless Networking Security • Security Problems in 802.11-Based Networks • Security Flaws in 802.11 Data Link Protocols • Why WiFi Wants to Be Free • Gast, Matthew S. 802.11 Wireless Networks - Definitive Guide. O‘Reilly, 2002. • Cisco Systems Seminar. Securing 802.11 Wireless Networks. Cisco Systems, 2002. • Sampaio, Cláudio. Segurança Wireless. Palestra proferida na I Semana de Informática do Uniceuma, 2004.