A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Segurança do Protocolo WEP {asas - famv –

Apresentações semelhantes


Apresentação em tema: "Segurança do Protocolo WEP {asas - famv –"— Transcrição da apresentação:

1

2 Segurança do Protocolo WEP {asas - famv – emfs}@cin.ufpe.br1

3 Introdução: Motivação 2 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

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

5 WI-FI 4 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

6 WI-FI 5 802.11b802.11a802.11g 2.4GHz5GHz2.4GHz 11Mbps54Mbps 100-300m30-100m100-300m A mais utilizada hoje Aplicações específicas/estabilidade Substituindo 11b rapidamente Muito barataRelativamente caraRelativamente barata

7 Elementos WI-FI 6 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)

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

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

10 9 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) WEP

11 10 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. WEP: Características

12 11 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. WEP: Características

13 Criptografia WEP: Princípios 12 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); XOR Texto PlenoCRC RC4 (k, IV) Dados Transmitidos : IVTexto Cifrado

14 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

15 Criptografia WEP: Esquema de Transmissão 14

16 WEP- Autenticação 15 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.

17 WEP- Confidencialidade 16 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: C1 = P1 xor RC4(k,IVa) C2 = P2 xor RC4(k,IVa) C1 xor C2 = (P1 xor RC4(k,IVa)) xor (P2 xor RC4(k,IVa)) C1 xor C2 = P1 xor P2 P2 = P1 xor C1 xor C2

18 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]) : i.O primeiro byte da saída do algoritmo PRGA ; ii.IV´s de uma certa característica ; iii. Propriedade do array S no momento da execução do algoritmo KSA ; Pacotes resolved [3], são pacotes onde se conhece i e ocorre ii ; No mínimo, em 5% dos pacotes resolved, iii ocorre [4]. 17

19 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

20 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

21 Array S no KSA(4/1) Observando o algoritmo KSA defina S n e j n 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

22 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: S 2 [0] = A+3 e S 2 [1] = 0 ; [3] - Com quase 100% de certeza, S 2 [0] = S A+2 [0] e S 2 [1] = S A+2 [1], ou seja, S A+2 [0] = A+3 e S A+2 [1] = 0 ; No fim da iteração A + 2, teremos S A+3 [j A+3 ] = S A+3 [S A+3 [1] + S A+3 [S A+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

23 Array S no KSA(4/3)

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

25 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

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

27 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

28 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.

29 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

30 Conclusão 29 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.

31 Referências [1] http://en.wikipedia.org/wiki/RC4, ultimo acesso em 1 de Agosto de 2005.http://en.wikipedia.org/wiki/RC4 [2] http://www.cs.ucsd.edu/users/mihir/cse107/index.html, último acesso em 1 de Agosto de 2005.http://www.cs.ucsd.edu/users/mihir/cse107/index.html [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.http://en.wikipedia.org/wiki/Wi-Fi_Protected_Access

32 Perguntas?


Carregar ppt "Segurança do Protocolo WEP {asas - famv –"

Apresentações semelhantes


Anúncios Google