1 / 31

Segurança do Protocolo WEP

Segurança do Protocolo WEP. <Alexandre Sarmento> <Francisco Valadares> <Erick Muzart>. {asas - famv – emfs}@cin.ufpe.br. 1. Introdução: Motivação. Redes sem fio em crescimento rápido A proporção de dados trafegados aumenta Predominância das redes WiFi semelhantes à Ethernet

floyd
Download Presentation

Segurança do Protocolo WEP

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Segurança do Protocolo WEP <Alexandre Sarmento> <Francisco Valadares> <Erick Muzart> {asas - famv – emfs}@cin.ufpe.br 1

  2. Introdução: Motivação • Redes sem fio em crescimento rápido • A proporção de dados trafegados aumenta • Predominância das redes WiFi semelhantes à Ethernet • Maiores preocupações com a segurança • Mecanismos de segurança deficientes 2

  3. Sumário • Descrição WiFi • Descrição WEP • Análise dos elementos do WEP • Fraquezas encontradas • Conclusões 3

  4. WI-FI • O que é? • - Uma tecnologia de transmissão de dados via rádio. • - Wi-Fi é uma marca comercial utilizada pela WECA para indicar a interoperabilidade de produtos WLAN (Wireless Local Area Network). • - O nome provém de "wireless fidelity" (fidelidade sem fio). • - A WECA submete os produtos WLAN a testes avançados; os produtos que atendem ao padrão de interoperabilidade recebem o logotipo Wi-Fi. • - WECA é a ONG Wireless Ethernet Compatibility Alliance, 1999 4

  5. WI-FI 5

  6. Elementos WI-FI • Elementos de uma rede sem fio • - Estação Base (ou AP, ponto de acesso): transmissor e bridge • (substituem os switches/hubs, DHPC, NAT (Network Address Translation)) • - “Ondas de rádio” • (substituem os fios) 6

  7. Elementos WI-FI - Adaptador de rede (conversor digital para ondas de rádio) - Portal (interconecta redes 802.11x a outras redes 802 externas) 7

  8. Arquitetura WI-FI • A arquitetura 802.11x é baseada na arquitetura dos celulares • Células (BSS, Basic Service Set), DS (backbones, geralmente Ethernet) 8

  9. WEP • Ambiente • Atrativo: os usuários ficam livres para se moverem enquanto conectados à rede • Vulnerabilidade: o acesso ultrapassa os limites físicos • Wired Equivalent Privacy • - Padrão de segurança para WLANs IEEE 802.11 • - Atua na camada de enlace entre estações e o ponto de acesso (AP) 9

  10. WEP: Características • Confidencialidade • - Oferece a segurança das informações no canal de comunicação. • - Criptografa os dados que passam pelo canal. • Integridade • - Protege pacotes contra erros de transmissão (CRC). • - Mensagem + CRC formam o texto pleno que será criptografado. 10

  11. WEP: Características • Autenticação • - Permite apenas acesso autorizado à rede. • - Distribui uma Chave WEP para quem tem acesso à rede sem fio. • Algoritmo • - É o RC4(será descrito adiante) com uma pequena variante. • - Problemas de segurança relacionados a confidencialidade e • autenticação. 11

  12. Criptografia WEP: Princípios • Uma chave única k de 104 bits compartilhada entre os clientes autorizados e sem política de gestão da chave • Vetor de inicialização aleatório IV (24 bits) para cada pacote • Algoritmo criptográfico: cifra RC4 • Então a chave será o IV concatenado com k(128 bits); 12

  13. Descrição RC4 • RC4 : Gerador pseudo-aleatório de um fluxo de bytes, plenamente determinado pela combinação K=IV·k ; • Composto por dois elementos [1]: • KSA(Key Scheduling Algorithm): usa a chave de pacote K para gerar uma permutação inicial do array S de inteiros 0..N-1 • PRGA(Pseudo Random Generation Algoritm): gera um fluxo de bytes à partir de permutações de S

  14. Criptografia WEP: Esquema de Transmissão 14

  15. WEP- Autenticação • Problema : um adversário que presencia essa troca ganha uma dupla Challenge e IV·(RC4(k,IV) xor Challenge) • Logo, fazendo novamente um xor entre os dois pacotes, obtém: RC4(k,IV) o que é suficiente, fixando-se o IV, para criptografar validamente qualquer pacote ulterior sem sequer precisar da chave! • Assim, o adversário ganhou o acesso em envio à rede, mesmo se ainda não pode decriptar o que recebe. 15

  16. WEP- Confidencialidade • O espaço de IVs de 24 bits é muito pequeno. Assim, o sorteio aleatório de IVs leva a forte probabilidade de repetições, como no paradoxo do aniversário [2]. • Se o adversário dispuser de um par (texto pleno P1, texto criptografado C1) para um dado IVa, ele poderá decifrar qualquer outro pacote que use o mesmo IVa: 16

  17. WEP-Key Recovery • Suponha que você conhece os A primeiros bytes da chave WEP(não levando em conta o IV) ; • Três elementos são suficientes p/ a descoberta do (A+1)– ésimo byte da chave WEP a partir de um pacote capturado com probabilidade não nula( Fluhrer et al [3]) : • O primeiro byte da saída do algoritmo PRGA ; • IV´s de uma certa característica ; • Propriedade do array S no momento da execução do algoritmo KSA ; • Pacotes resolved [3], são pacotes onde se conhece ie ocorre ii ; • No mínimo, em 5% dos pacotes resolved , iii ocorre [4]. 17

  18. 1st PRGA Byte • No Padrão 802.11, pacotes gerados a partir de tráfico ARP possuem o primeiro byte da forma 0xAA ; • O primeiro byte de saída do PRGA que chamaremos de OUT, será • S[ S[1] + S[S[1] ] ] ; • Assim, capture um pacote ARP e observe o primeiro byte do texto cifrado R. Temos que R = 0xAA XOR OUT => OUT = R XOR 0xAA, ou seja, como conheço R e o primeiro texto pleno criptografado posso obter S[ S[1] + S[S[1] ] ] = OUT ; • O valor de OUT será importante p/ a descoberta da chave. 18

  19. IV´s “Fracos” • Embora existam mais condições para os IV´s, nosso trabalho focou-se em IV´s desta forma: • IV[0] = A + 3 ; • IV[1] = 0xFF( 255 em decimal) ; • IV[2] = Qualquer número de um byte ; • Capturar pacotes resolved, seria capturar pacotes ARP cujo IV fosse desta forma ; • Captura-se pacotes resolved suficientes para garantir que pelo menos um deles possuam a propriedade no array S na execução do KSA. 19

  20. Array S no KSA(4/1) • Observando o algoritmo KSA defina Sn e jn como sendo o estado do array S após o loop n(do segundo “for”) do KSA(após o Swap) e como o valor de j após passar pelo primeiro passo do loop n (do segundo “for”) do KSA, respectivamente ; • Note que antes de se passar pelo segundo “for”, S e j já estão pré-definidos ; 20

  21. Array S no KSA(4/2) • Realize i = A + 2 iterações completas do KSA ; • Com esse número de iterações em pacotes resolved: • S2[0] = A+3 e S2[1] = 0 ; • [3] - Com quase 100% de certeza, S2[0] = SA+2[0] e S2[1] = SA+2[1], ou seja, SA+2[0] = A+3 e SA+2 [1] = 0 ; • No fim da iteração A + 2, teremos SA+3[jA+3] = SA+3 [SA+3 [1] + SA+3 [SA+3 [1]] ] = S[S[1] +S[S[1]] ] = OUT !!!!!!! • Desde que conhecemos somente os primeiros A bytes da chave WEP, não poderiamos realizar o laço i = A + 3 (pois precisariamos exatamente de K[A+3], K =3 bytes IV + Chave WEP. 21

  22. Array S no KSA(4/3)

  23. Array S no KSA(4/4) • Após essa iteração teremos a seguinte equação do KSA : • jA+3 = jA+2 +S A+2 [A+3] + K[A+3] • => K[A+3] = jA+3 - jA+2 - SA+2 [A+3]. • Observe que K[A+3] é exatamente o (A+1)– ésimo byte da chave WEP que estamos procurando ; • Temos jA+2 e SA+2 [A+3] obtidos da iteração ; • jA+3 é obtido a partir do conhecimento de OUT!!!! • Dúvidas e mais detalhes podem ser vistos no nosso relatório. 23

  24. Montando o Algoritmo KeyRec(4/1) • Ou seja, conhecendo-se A bytes da chave WEP, posso obter o A+1 ésimo byte...... • Pode ser que o byte achado não corresponda ao byte real..... • Como tratar disso????? • Simples....pegue tantos pacotes quanto forem necessários e pegue o byte deduzido de cada um deles.... O byte que ocorrer mais vezes será provavelmente o byte verdadeiro.... • Com essa idéia já podemos montar o algoritmo [4]. 24

  25. Montando o Algoritmo KeyRec(4/2) • Algoritmo RecoverWEPKey[4] com a subrotina ResolvedPac: 25

  26. Montando o Algoritmo KeyRec(4/3) • A subrotina ResolvedPac explora exatamente a propriedade no array S do KSA e retorna o possível byte da chave : 26

  27. Montando o Algoritmo KeyRec(4/4) • Segundo Adi Shamir[3] , com q em torno de 60 poderemos obter o byte da chave WEP com 0,5 de certeza, portanto para q > 120 obteremos o byte com chance bastante alta.

  28. Demonstração • Nossa implementação desenvolveu uma simulação bem simples baseada na linguagem Perl ; • O script GeradorPacotesFracos.pl recebe a chave WEP como entrada e gera várias ternas de 4 bytes em notação decimal num arquivo chamado Pacotes.log, sendo que os primeiros 3 bytes representa o IV´s Fracos e o 4º byte representa o 1º byte do texto pleno(0xAA que supostamente foi gerado a partir de um pacote ARP ) criptografado com a chave WEP ; • O Script WEPKeyRecovery.pl simplesmente pega essas ternas do Pacotes.log e deduz a chave WEP original utilizando-se das idéias aqui apresentadas. 28

  29. Conclusão • Todos os mecanismos de segurança do protocolo WEP estão comprometidos ; • Não há como melhorá-los mantendo compatibilidade ; • A segurança do 802.11 com WEP é falsa: ataques modernos em menos de 15 minutos ; • Alternativas como o WPA[5] ; • Uso de criptografia em outras camadas de comunicação. 29

  30. Referências • [1] http://en.wikipedia.org/wiki/RC4 , ultimo acesso em 1 de Agosto de 2005. • [2] http://www.cs.ucsd.edu/users/mihir/cse107/index.html , último acesso em 1 de Agosto de 2005. • [3] Adi Shamir , Scoot Fluhrer Itsik Mantin , Weaknesses in the key scheduling algorithm of RC4, escrito em 2001. • [4] Adam StubbleField, Joan Ionnadis e Avil de Rubin , Using the Fluhrer , Mantin and Shamir Attack to Break WEP. • [5] http://en.wikipedia.org/wiki/Wi-Fi_Protected_Access, último acesso em 1 de Agosto de 2005.

  31. Perguntas ?

More Related