You are on page 1of 29

2.

FUNDAMENTAO TERICA

2.1 Comunicao sem Fio A maioria das pessoas no sabe, mas a comunicao sem fio no algo recente. O primeiro emissor de ondas eletromagnticas foi criado em 18501, e ainda durante o sculo XIX ocorreu a primeira transmisso falada sem fios do Brasil2. Dessa forma, observamos que o mundo conhece esta tecnologia h bastante tempo. No entanto, sua utilizao tornou-se maior no final do sculo XX, e vem se consolidando como a forma de comunicao do futuro. Diversos equipamentos do nosso dia-a-dia utilizam-se do eletromagnetismo, como por exemplo, o microondas, o celular, o controle remoto da televiso, os PDAs (Personal Digital Assistants), os Notebooks e at mesmo o aparelho de som da sala-de-estar.

2.2 Redes sem Fio As redes sem fio (Wireless Network) assemelham-se s redes de computadores cabeadas, tendo sua principal diferena no estabelecimento da comunicao entre os dispositivos de rede sem a presena de cabos. Tal fato, tornou-se um dos motivos primordiais para a expanso das redes sem fio, sobretudo com a facilidade de instalao, uma vez que no se precisa de fios passando pelas paredes, alm da mobilidade aliada a esta tecnologia. Pode-se segregar as redes sem fio em quatro tipos: WPAN, WLAN, WMAN e WWAM.

Em 1850 o alemo Daniel Ruhmkoff inventa um aparelho capaz de transformar baixa tenso de uma pilha em alta tenso: surge o primeiro emissor de ondas eletromagnticas. FONTE: SITE 01
2 Em 1893 O padre e cientista brasileiro Roberto Landell de Moura realizou a primeira transmisso falada, sem fios, por ondas eletromagnticas. Sua experincia mais importante - praticamente desconhecida do mundo - foi em So Paulo, quando transmitiu por telegrafia sem fio do alto da avenida Paulista para o alto de Sant'Ana. Todos os equipamentos usados forma inventandos pelo prprio Landell de Moura, com patentes registradas no Brasil em 9 de maro de 1901.

FONTE: SITE 01

2.2.1 WPAN As redes pessoais sem fio (WPAN- Wireless Personal Area Network) so voltadas para a conexo entre o computador e dispositivos perifricos, como impressoras, PDA, fones e telefone celulares, dispensando a utilizao de cabos. Elas cobrem pequenas distncias (em torno de 10m) e oferecem baixas velocidades. O padro definido pelo IEEE para a WPAN o 802.15. Dentro da famlia 802.15, o Bluetooth (IEE 802.15.1) o padro mais disseminado nos dispositivos eletrnicos, apesar de existirem os padres IEEE 802.15.3 (UWB Ultra Wide Band alta taxa de transmisso de dados) e o IEEE 802.15.4 (ZigBee- baixas taxas de transmisso de dados).

2.2.2 WLAN As redes locais sem fio (WLAN Wireless Local Area Network) so redes que oferecem um pouco mais de cobertura geogrfica e altas taxas de transmisso de dados. Com isso, as WLANs oferecem grande flexibilidade para seus usurios, em especial, para os usurios de computadores portteis e de PDAs. Este tipo de rede, definido pelo padro IEEE 802.11, conhecido como Wi-Fi, e ser o padro abordado neste trabaho.

2.2.3 WMAN As redes metropolitanas sem fio (WMAN Wireless Metropolitan Area Network) oferecem uma cobertura geogrfica maior que as WLAN e altas taxas de transmisso de dados. Estas redes so definidas pelo padro IEEE 802.16 e so conhecidas como WiMAX.

2.2.4 WWAN As redes distribudas sem fio (WWAN Wireless Wide Area Network) possuem uma grande disperso geogrfica, sendo voltada para as aplicaes

mveis que utilizam celulares, PDAs, dentre outros. As redes de celulares esto em franca expanso e caminhando para se tornar a maior aplicao de WWAN, em razo da grande utilizao destes dispositivos na transmisso de e-mails, imagens, sons e vdeos com excelente qualidade.

2.3 Topologias O padro IEEE 802.11 define dois modos distintos de operao: Ad-Hoc e infra-estrutura.

2.3.1 Ad-Hoc Uma rede ad-hoc funciona de forma a prescindir de um ponto central de conexo [RUFINO,p24]. Assim, cada equipamento conecta-se diretamente um ao outro, sem a necessidade de um ponto de acesso central, semelhante s antigas redes de cabo coaxial, onde um nico cabo conectava vrios equipamentos e permitia a comunicao entre eles. A vantagem da rede ad-hoc sobre a rede cabeada que, mesmo com a falha de um dos equipamentos, a comunicao entre os demais dispositivos no fica comprometida. J na rede cabeada, caso haja o rompimento ou o mau contato de um cabo, todos os dispositivos ligados ao mesmo cabo ficam sem comunicao uns com os outros. Uma das desvantagens deste tipo de topologia exatamente a ausncia de um concentrador, causando problemas em segurana, administrao e gerncia de redes.

2.3.2 Infra-estrutura O concentrador, ou ponto de acesso, a pea principal das redes que se utilizam dessa topologia. Nessa configurao, um ponto nico de comunicao cercado de vrios clientes, fazendo com que todas as configuraes de segurana estejam concentradas em um s ponto. Isso permite controlar todos os itens, como autorizao, autenticao, controle de banda, filtros de pacotes e criptografia. Com a

rede infra-estruturada, tambm possvel realizar a interligao com as redes cabeadas e/ou com a internet, uma vez que o concentrador tambm desempenha o papel de gateway.

2.4 Redes Ethernet e Redes sem fio Diferentes tipos de redes de computadores necessitam de diferentes tipos de ferramentas para segurana. Algumas destas ferramentas podem ser usadas para fins comuns, enquanto outras so desenvolvidas para fins bem mais especficos. Dessa forma, preciso entender as principais diferenas, ou modificaes, existentes entre as redes sem fio e as redes convencionais ou redes ethernet.

FIGURA 01 Modelo ISO/OSI A principal diferena est localizada na camada fsica e na metade inferior da camada de enlace ou camada link de dados. Isto ocorre, principalmente, em razo da mudana do meio fsico de uma rede ethernet, que utiliza cabos, para uma rede sem fio, que utiliza o ar. Outra justificativa para essa mudana suportar a autenticao, associao e privacidade das estaes wireless.

2.5 Camada de Enlace de Dados (Data Link Layer) Da mesma forma que nas redes guiadas, a camada de enlace de dados nas redes sem fio tambm desempenha sua funo, ou seja, lidar com erros de transmisso, regular o fluxo de dados e fornecer interface de servio bem definida camada de rede [Tanembaum, p196]. Ela se localiza entre a camada fsica e a camada de rede, conforme se pode verificar na figura 01. No entanto, diferentemente do modelo ISO/OSI, os protocolos 802 dividem a camada de enlace de dados em duas subcamadas: a LLC (Logic Link Control) e a MAC (Media Access Control), sendo esta ltima, mais prxima da camada fsica, como se pode ver na figura 02.

FIGURA 02 subdiviso da camada enlace de dados A subcamada LLC torna imperceptvel as diferenas entre os diversos tipos de redes 802, atravs de um nico formato e uma nica interface com a camada de rede. Ela oferece trs variaes de servios: servio de datagrama no confivel, servio de datagrama confivel e servio confivel orientado a conexes. A camada MAC efetua o controle de qual estao tem permisso para utilizar o canal, ou o meio, naquele momento. Portanto, a gesto de alocao de canais uma tarefa que esta camada deve prover rede como um todo. A seguir ser exposta uma breve descrio desta subcamada no protocolo 802.11.

2.5.1 Subcamada MAC A subcamada MAC, ou camada de acesso ao meio, no IEEE 802.11 define dois diferentes mtodos de acesso, ou modos de operao: o DCF (Distributed Coordinated Function) e o PCF (Point Coordinated Function). O DCF o mecanismo bsico de acesso ao meio e no utiliza qualquer controle central, ficando a cargo de cada estao o controle de quando deve emitir um sinal, atravs da escuta do canal. O protocolo CSMA/CA (Carrier Sense Multiple Access with Collision Avoidance), que apresenta um mecanismo embutido de preveno de coliso e proporciona um mecanismo distinto de acesso ao meio, utilizado em um DFC. A funo de coordenao de ponto, ou PFC, utiliza a prpria estao-base para controlar a atividade em seu redor. Neste mtodo, a estao-base efetua o polling escuta - das outras estaes, questionando se elas tm algum quadro para enviar. Tendo em vista que a ordem da transmisso totalmente controlada pela estao-base em modo PFC, no ocorre nenhuma coliso.[Tanembaum, p318]. Um PFC e um DFC podem coexistir em uma nica clula, ou seja, um controle centralizado e um controle descentralizado operando ao mesmo tempo em um protocolo 802.11.

2.5.2 Tipos de Frames MAC Em geral, o formato do frame para a subcamada MAC segue o formato abaixo:

FIGURA 03 - formato do frame MAC

Frame Control: tem um nmero de flags e define os vrios tipos de frames. composto pela verso do protocolo (2 bits), tipo e sub-tipo (2 bits) e muitos flags para a definio de funo de distribuio, funo de gerenciamento de energia, indicador de mais fragmentos e dados. Duration/ID: determina a durao do frame, exceto o tipo de controle PS-Poll. No frame PS-Poll ele indica o ID da estao (SID Station ID). Address Fields: so 48 bits de endereo de destino (DA Destination Address), endereo da fonte (SA Source Address), endereo do receptor imediato (RA Receiver Address) e o endereo do transmissor imediato (TA Transmitter Address). Os 24 primeiros bits so definidos pelo IEEE e especficos para cada fabricante, conforme tabela abaixo:

24 primeiros bits (em hexadecimal) 00 00 0C 00 0E 08 00 10 5A 08 00 20 08 00 5A 00 19 5B

Fabricante Cisco LinkSys 3Com Sun IBM D-Link

Tabela 01 bits reservados aos fabricantes endereo MAC Sequence Control: consiste em 4 bits indicando o nmero do fragmento e um seqncia de nmeros de 8 bits do frame MAC. Frame Body: consiste na parte em que esto os dados do frame MAC. Caso esteja usando criptografia, ele conter o texto cifrado, o vetor de inicializao e o valor de verificao de integridade. FCS: O Frame Checking Sequence, contm um controle de erro chamado CRC(Cyclic Redundancy Check), que utiliza um polinmio de grau 32.

2.5.3 Sensibilidade do Canal

A sensibilidade do canal executada ou na portadora do sinal, no meio sem fio, ou verificando o valor de um parmetro denominado NAV (Network Allocation Vector). A camada MAC pede auxlio para a camada fsica para implementar as caractersticas eletrnicas da mensagem. A funo da sensibilidade do canal chamada de Clear Chanel Assessment (CCA), ou de virtual sensing (sensibilidade virtual), por no envolver um mecanismo de deteco do sinal fsico. O valor do NAV inicializado pelos terminais ao detectar uma curta troca de pacotes (handshake) entre o transmissor e o receptor. Os transmissores vizinhos tambm inicializam o valor do parmetro NAV ao detectar um pacote Request to Send (RTS). O RTS enviado por um transmissor para informar ao futuro receptor da reserva de um pedido, e requisitando sua permisso. Ao receber um RTS, o receptor responde com um Clear to Send (CTS) indicando, desta forma, sua permisso e informando aos seus vizinhos da transmisso. Ao detectar o CTS, as estaes da vizinhana do receptor alteram seus valores NAV's.

Figura 05 acordo estabelecido pela reserva feita pelo NAV De acordo com a figura, vimos que o receptor teve que esperar por um perodo de tempo (tr), denominado Interframe Spacing (IFS) antes de enviar um CTS. Esta espera para a transmisso do CTS revela uma das principais caractersticas da camada MAC do padro IEEE 802.11: a preveno de colises. Toda transmisso precisa de um canal sensvel a determinada quantidade de IFS, se o mesmo estiver ocioso. A quantidade efetiva de IFS depende do tipo de dado que deve ser transmitido. Contudo, a quantidade de IFS no garante preveno de coliso. No caso de vrias estaes identificarem simultaneamente

um canal ocioso, a coliso pode ocorrer se duas ou mais estaes transmitirem juntas, depois de requerido o IFS.

2.5.3.1 IFS Priorizados Como visto anteriormente, apenas a adoo de IFS no nos d total garantia de que no ocorrer coliso. Dessa forma, para que haja um ganho nesta garantia, fixou-se uma quantidade de intervalos de IFS diferente para os diversos tipos de pacote. O padro especifica quatro nveis de prioridade com seus respectivos perodos IFS, como explicitado abaixo: SIFS O Short InterFrame Spacing, ou IFS curto, utilizado para prioridades extremamente altas de pacotes. Como exemplos destes pacotes, citamos o CTS (Clear to Send) e o ACK (Acknowledgement). Ele possui o menor tempo de espera. PIFS O PCF InterFrame Spacing utilizado para aplicaes em tempo real, possuindo um valor entre o SIFS e o DIFS. DIFS O DFC InterFrame Spacing, o IFS normal. Para iniciar uma transmisso de dados ou de pacotes RTS (Request to Send), a estao precisa encontrar o canal ocioso para uma dada quantidade de DIFS. EIFS O Extended InterFrame Spacing, ou IFS Extendido, usado no caso de ocorrncia de erros, como uma rede de assistncia a congestionamentos, na qual precisa informara presena de um possvel quadro defeituoso. Os valores dos IFS so definidos pela camada fsica, e uma comparao entre os vrios IFS pode ser visualizada na figura a seguir.

Figura 06 comparao entre os IFS priorizados

2.5.3.2 BackOff Quando uma estao encontra o canal ocupado, ela tem que esperar, por algum tempo, para poder novamente escutar o canal. Este perodo no qual a estao aguarda para fazer uma nova escuta no canal chamado de backoff, que selecionado aleatoriamente no padro IEEE 802.11. Verifica-se, ainda, a caracterstica de desencorajar a transmisso de mltiplos pacotes por uma estao. Assim, uma estao que deseja transmitir um pacote dever esperar por um DIFS mnimo alm do tempo aleatrio de backoff. Outra estao, ao gerar novos pacotes, dever esperar somente por um DIFS, tendo prioridade sobre uma estao que possua uma srie de pacotes para transmisso. Embora existam algumas solues para evitar colises, elas podem ocorrer devido a acepes simultneas e transmisso de pacotes com a mesma prioridade. A ocorrncia de coliso caracterizada pela falta do pacote ACK em um determinado perodo. Ao determinar uma coliso, a estao gera um nmero aleatrio entre 0 e x(2n+2 1), onde x o slote time definido pela camada fsica, e n o nmero de transmisses para o mesmo pacote. Assim, na primeira transmisso aps uma coliso gerado um perodo de backoff entre {0, 7x}; na segunda coliso gera-se um nmero entre {0, 15x}, e assim sucessivamente. Este incremento no limite superior de (n+2) responsvel por chamarmos este backoff de Backoff Exponencial de Binrio.

2.6 Modos de Transmisso Existem alguns modos de transmisso como Infravermelho, FHSS, DSS, HRDSS e OFDM. No entanto, exemplificaremos apenas os padres FHSS, DSS e o OFDM devido a seu carter comercial em equipamentos sem fio. 2.6.1 Frequence Hopping Spread Spectrum

Nesta tcnica de transmisso, que opera na banda ISM(Industrial Scientific and Medical) de 2,4 GHz dividida em 75 canais [Rufino] de freqncia com 1 MHz de largura, podendo chegar a 2 Mbps de velocidade. A informao enviada utilizando todos os canais numa seqncia pseudo-aleatria, na qual a freqncia de transmisso dentro da faixa vai se alterando em saltos. Assim, preciso garantir o sincronismo de todas as estaes para que elas mudem para a mesma freqncia simultaneamente, utilizando igualmente os canais de freqncia. O sinal recebido apenas por quem conhece a seqncia de saltos, apresentando-se como rudo para outros provveis receptores. 2.6.2 Direct Sequence Spread Spectrum Este modo de transmisso tambm utiliza a banda ISM de 2,4 GHz. Conhecido como DSSS usa uma tcnica denominada code chips, que consiste em separar cada bit de dados em n intervalos chamados de chips. Assim, cada estao possui uma seqncia pseudo-randmica de n bits, chamada de seqncia de chips. No padro 802.11 definida uma seqncia de 11 bits. A banda dividida em no mximo trs canais. Por enviar os bits de dados por um mesmo canal em diferentes freqncias, torna o DSSS mais susceptvel a ataques diretos em uma freqncia fixa e a rudos que ocupem parte da banda utilizada.[RUFINO, p20] Uma extenso da DSSS, chamada de High Rate DSSS, utiliza 11 milhes de chips/s para alcanar 11 Mbps na banda de 2,4 GHz, podendo trabalhar tambm em 1 Mbps, 2 Mbps e 5 Mbps. 2.6.3 Orthogonal Frequency Division Multiplexing O OFDM trata-se de outro tipo de modo de transmisso utilizado no somente por equipamentos sem fio, mas tambm por redes cabeadas, como ADSL, cujas caractersticas de modulao de sinal e isolamento de interferncias podem tambm ser bem aproveitadas. A tcnica se baseia na modulao por deslocamento de fase, que utiliza mltiplas portadoras. A banda utilizada a de 5 GHz, permitindo transmitir at a velocidade de 54 Mbps. 2.7 Padres para Redes sem Fio 802.11

Vrios padres foram definidos pelo IEEE (Institute of Eletrical and Eletronics Engineers). Tal Instituto reuniu-se para a definio de padres para a comunicao atravs de redes sem fio. Um desses padres o 802.11, que define os parmetros para a troca de informaes entre dispositivos clientes e um concentrador, ou mesmo a comunicao entre dois dispositivos clientes. Diversas instncias do padro 802.11 foram desenvolvidas ao longo do tempo, mas o padro original, denominado Wi-Fi (Wireless Fidelity), prov no mximo 2Mbps, utilizando uma banda de 2,4 GHz. 2.7.1 Padres para a Camada Fsica O protocolo 802.11 definiu, desde seu incio, basicamente quatro padres para a camada fsica, os quais sero abordados neste tpico.

2.7.1.1 Padro 802.11b Este foi o primeiro sub padro a ser definido, permitindo uma velocidade de transmisso mxima de 11 Mbps, podendo comunicar-se a velocidades mais baixas, como 5,5 Mbps, 2 Mbps ou 1 Mbps. A freqncia utilizada 2,4 GHz e usa apenas DSSS. A quantidade mxima de clientes conectados de 32. Apesar da limitao em termos de utilizao de canais, ainda hoje o padro mais utilizado e com maior nmero de produtos e ferramentas de segurana disponveis no mercado.

2.7.1.2 Padro 802.11a Aps o padro 802.11b, o IEEE definiu o padro 802.11a, como tentativa de resolver alguns problemas e limitaes existentes naquele padro. Como principal caracterstica, podemos citar a alta velocidade de transmisso, chegando, no mximo, a 54 Mbps, o que no impede que opere tambm em velocidades

inferiores. Outra novidade, a faixa de freqncia utilizada, que de 5 GHz, uma faixa com poucos concorrentes, porm com uma menor rea de alcance. A quantidade de clientes conectados tambm outro atrativo, chegando a 64, e o tamanho da chave usada com o WEP, pode chegar a 256 bits (compatvel com chaves menores como 64 e 128 bits). Adota o tipo de modulao OFDM, ao contrrio do DSSS utilizado no 802.11b. Outra vantagem a quantidade de canais no sobrepostos disponveis, totalizando 12, ao invs dos 3 canais livres do 802.11b e 802.11g, permitindo cobrir uma rea maior e mais densamente povoadas. Por trabalhar numa freqncia diferente das dos outros padres, o 802.11a encontra problemas de compatibilidade com uma boa parte dos dispositivos instalados atualmente (802.11b e 802.11g), o que est atrasando sua disseminao no mercado.

2.7.1.3 Padro 802.11g Este padro j mais recente que os anteriores, e por este fato, apresenta algumas vantagens em relao aos mesmos. A utilizao da freqncia de 2,4 GHZ, diferentemente da faixa de 5,0 GHZ usada pelo protocolo 802.11a, facilita sua interroperao com o 802.11b, permitindo que muitos equipamentos possam apresentar os dois padres concomitantemente. No entanto, h tambm semelhanas com o padro 802.11a, como a utilizao de modulao OFDM e de velocidade de 54 Mbps.

2.7.1.4 Padro 802.1n Este padro em desenvolvimento conhecido como WWISE (World Wide Spectrum Efficiency), e busca melhoria na velocidade (de 100 Mbps a 500 Mbps) e aumento de cobertura. Uma das principais mudanas uma modificao de OFDM,

chamada de MIMO-OFDM (Multiple Input, Multiple Out - OFDM). compatvel com os padres existentes atualmente, podendo trabalhar a 40Mhz e tambm a 20 Mhz.

2.7.2 Padres para a Camada de Segurana Diferentemente dos padres 802.11b, 802.11a, 802.11g e 802.11n, os padres a seguir foram definidos para agregarem segurana aos protocolos sem fio.

2.7.2.1 Padro 802.11i Este padro trata de mecanismos de autenticao e de privacidade, que podem ser implantados nos protocolos existentes. O principal protocolo de rede definido neste padro o RSN (Robust Security Network), que permite comunicao mais segura que alguns mtodos atualmente difundidos. Dentre os definidos neste padro est o protocolo WPA, desenvolvido para solucionar algumas questes de segurana do WEP, alm do WPA2, que utiliza o algoritmo criptogrfico AES (Advanced Encryption Standart).

2.7.2.2 Padro 802.1x O 802.1x um padro de controle de acesso baseado em portas, que pode ser configurado para exigir a autenticao mtua entre o cliente e a rede. Caso no haja a autenticao, a comunicao no ser permitida.[SITE03]. Este protocolo utiliza o Extensible Authentication Protocol (EAP) para autenticar o cliente com a rede e a rede com o cliente, garantindo que os dois estejam se comunicando com entidades conhecidas. Mesmo no sendo projetado para redes sem fio, possui caractersticas que so complementares a essas redes, pois permite autenticao baseada em mtodos j consolidados, como o RADIUS (Remote Authentication Dial-in User Service) de forma escalvel e expansvel. [RUFINO, p 29].

Este padro requer: cliente que suporte esta tecnologia, ou seja, que requer autenticao; pontos de acesso sem fio (concentrador) que podem participar do 802.1x; um servidor RADIUS, ou seja, o que autentica; e um repositrio (banco de dados convencional, LDAP ou qualquer outro reconhecido pelo servidor de autenticao). A autenticao feita antes que qualquer servio seja liberado ao usurio requerente. Assim, o usurio solicita uma autenticao ao autenticador, que verifica em sua base de dados as credenciais fornecidas pelo cliente, e conforme a validade dessas credenciais, permite ou no o acesso aos servios de rede.

2.8 Segurana de Redes Como as informaes esto se tornando cada vez mais valiosas, o trfego delas na rede precisa estar seguro. A segurana atingida quando as vulnerabilidades da rede so eliminadas ou reduzidas. Buscando atingir esse objetivo as redes de computadores utilizam diversos mecanismos, dentre os quais esto a criptografia e a autenticao.

2.8.1 Criptografia Etimologicamente, a palavra criptografia descende das palavras gregas cripto, que significa secreta, e grafia, que significa escrita. Portanto, quando realizamos a criptografia de uma dada informao, estamos camuflando-a, de modo a torn-la secreta para as pessoas no autorizadas. Somente o destinatrio da informao, que conhece o processo de criptografia original, ser capaz de decifr-la corretamente, e assim, conhecer seu contedo. O processo bsico de criptografia pode ser explicado da seguinte forma: a mensagem que ser criptografada, chamada de texto simples P, transformada por uma funo E parametrizada por uma chave k. Aps essa transformao, obtm-se como sada o texto cifrado C. Assim, mesmo que um intruso, ou inimigo, capture o texto cifrado C, ele no o poder descriptografar facilmente, pois ao contrrio do destinatrio do texto, o intruso no conhece a chave k utilizada na criptografia.

FIGURA 07 Processo de Criptografia do texto P Tendo esse entendimento, criamos a notao C = EK(P), que denota a criptografia do texto simples P usando a chave k, resultando no texto cifrado C. Para encontrar o texto simples a partir do texto cifrado realiza-se a descriptografia, ou seja, P = DK(C). Assim, temos que DK(EK(P)) = P. Como, normalmente, o algoritmo de criptografia e descriptografia podem tornar-se pblicos, precisamos obter o sigilo na chave, pois ela que seleciona uma das muitas formas de criptografia do algoritmo. Essa idia conhecida como princpio de Kerckhoff, o qual diz que todos os algoritmos devem ser pblicos, apenas as chaves so secretas[Tanembaum,p773]. Podemos dividir historicamente os mtodos de criptografia em duas categorias: algoritmos de chave simtrica e algoritmos de chave pblica. 2.8.1.1 Algoritmos de Chave Simtrica Os algoritmos de chave simtrica so assim chamados em razo de utilizarem a mesma chave para realizar a criptografia e a descriptografia, conforme observa-se na figura 07 deste tpico. Naquele exemplo, uma chave k utilizada para efetuar a encriptao. A mesma chave k deve ser utilizada pelo destinatrio da mensagem para que ele consiga descriptografar o texto cifrado. O tipo mais comum de criptografia a de cifras por bloco, na qual um bloco de texto simples de n bits transformado em outro bloco de n bits de texto cifrado, utilizando-se uma chave. 2.8.1.1.1 DES - Data Encryption Standard Um dos primeiros mtodos de encriptao por chave simtrica utilizados comercialmente foi o DES(Data Encryption Standard), adotado pela IBM. Ele foi

projetado para permitir que a decodificao fosse feita com a mesma chave de codificao[Tanembaum, p786]. Em suma, o processo realiza a transformao do texto simples em blocos de 64 bits produzindo tambm 64 bits de texto cifrado. A chave utilizada tem 56 bits, e o algoritmo trabalha com 19 estgios ou rodadas distintas, utilizando o processo de substituio e transposio. Uma variao do DES, chamada de DES Triplo, foi desenvolvida para aumentar a segurana do DES original. Ele utiliza trs estgios e duas chaves. No estgio 1, o texto criptografado pela chave k1. No estgio 2, o texto cifrado na etapa 1 agora descriptografado pela chave k2. Finalmente, no terceiro estgio, o texto resultante da etapa 2 novamente encriptografado pela chave k 1, resultando ento no texto final criptografado. Cada um dos trs estgios tal qual o DES simples, da chamar-se de DES Triplo. A utilizao de vrias chaves torna o DES Triplo um algoritmo seguro. No entanto, seu desempenho bastante lento, justamente por realizar trs vezes o algoritmo do DES. Anos depois, foi criado um novo padro chamado de AES(Advanced Encryption Standard). Veremos como ele funciona a seguir.

2.8.1.1.2 AES Advanced Encryption Standard Este padro utiliza o algoritmo de Rijndael, criado por Joan Daemen e Vicent Rijmen, vencedores de um concurso realizado pelo NIST(National Institute of Standards and Technology) em 1997. O AES passou a ser o padro criptogrfico para uso no-confidencial do Governo Norte Americano. O algoritmo AES admite chaves de diversos tamanhos, variando de 128, 160, 192, 224 e 256 bits. J o tamanho do bloco ficou definido em 128 bits. Apesar da variedade de tamanhos nas chaves, comumente utiliza-se as chaves de 128 bits e 256 bits. O mtodo desenvolvido para o AES tambm segue o princpio de utilizar vrios estgios, bem como a realizao de substituies e transposies. Para o

caso de se utilizar uma chave de 128 bits, o algoritmo realiza 10 rodadas, aumentando para 14 rodadas no caso de uma chave de 256 bits. Sua principal diferena para o DES a de envolver bytes inteiros em todas as suas operaes, para permitir implementaes eficientes em hardware e em software [Tanembaum,p790]. O algoritmo de rijndael possui trs parmetros para sua execuo: plaintext, ciphertext e Key O plaintext contm o dado de entrada, ou seja, o texto simples a ser cifrado. O ciphertext conter o texto cifrado, que o dado de sada. Key nada mais do que a chave secreta. Todos os parmetros so array de 16 bytes. Internamente, o estado atual dos dados armazenado no array de bytes, com nlinhas x ncolunas chamado state, que para o caso de uma chave de 128 bits ser de 4 x 4 bytes. Primeiramente, a chave ser copiada em 11 arrays iguais ao state, chamados de rk. Um desses arrays ser usado no incio dos clculos, ficando os outros 10 para serem usados nas 10 rodadas seguintes, um em cada rodada. Em seguida, o plaintext copiado para o state, byte por byte, ordenado por colunas. Agora, o rk[0], que o primeiro array de rk que contm a chave, submetido a um XOR com os state, byte por byte. O resultado do XOR armazenado em state. Aqui, iniciam-se as 10 rodadas. Em cada rodada, o state sofre diversas alteraes. Porm, cada rodada ainda possui quatro etapas. Na primeira etapa, cada byte de state submetido a uma operao em uma caixa S, que um mtodo de substituio monoalfabtica, alterando seu valor pelo resultado da caixa S. Na segunda etapa, cada linha de state sofre uma permutao em seus bytes. Na terceira etapa, state tem suas colunas misturadas com o uso de multiplicao de matrizes. A nova matriz state resultado do produto entre o antigo state e uma matriz constante. Enfim, na quarta etapa da rodada, state submetido a um XOR com a chave armazenada em rk da rodada correspondente. A grande vantagem deste algoritmo a sua velocidade se comparado a outros algoritmos comerciais. Caso seja implementado em hardware, seu desempenho aumenta ainda mais.

2.8.1.2 Algoritmos de Chave Assimtrica Os algoritmos de criptografia de chave assimtrica ou de chave pblica trabalham com chaves distintas para efetuar a criptografia e a descriptografia. Eles surgiram com o objetivo de eliminar o problema existente da necessidade de distribuio da chave secreta dos algoritmos de chave simtrica. Assim, as chaves deveriam ser diferentes e de extrema dificuldade para se derivar uma a partir da outra. Um algoritmo de chave assimtrica deve obedecer a trs requisitos: possuir um algoritmo de descriptografia D, que aplicado a uma mensagem criptografada E(P), obtenha o texto simples P. Este requisito pode ser matematicamente escrito por D(E(P)) = P, onde E o algoritmo de encriptografia, D o algoritmo de descriptografia e P o texto simples que se deseja tornar secreto; ser extremamente difcil deduzir D a partir de E; e no poder ser decifrado atravs de um ataque de texto simples. Na figura 08, Alice deseja enviar e receber mensagens secretas. Para isso ela cria dois algoritmos distintos: um algoritmo para criptografar os dados e outro para descriptograf-los. No entanto, o algoritmo para criptografar tornado pblico, juntamente com a sua chave de criptografia, mantendo secreto apenas o algoritmo de descriptografia e a respectiva chave. Para facilitar o entendimento, nomeou-se de EA o algoritmo de criptografia parametrizado pela chave pblica de Alice, e DA o algoritmo de descriptografia parametrizado pela chave secreta de Alice. Bob, o destinatrio da mensagem de Alice, tambm possui seu algoritmo pblico EB e seu algoritmo secreto DB.

Figura Agora Alice ir enviar um texto cifrado para Bob. Para tanto, ela far uso do algoritmo pblico de Bob, EB, para criptografar o texto simples P. Portanto, o que ser transmitido o texto cifrado EB(P). Ao receb-lo, Bob far a descriptografia utilizando seu algoritmo secreto DB, da forma que DB(EB(P))= P. Como somente Bob possui o algoritmo correto para realizar a descriptografia, ningum mais conseguir ler a mensagem. Um exemplo deste tipo de algoritmo o RSA. Seu nome deriva das iniciais dos pesquisadores do MIT que o desenvolveram: Rivest, Shamir e Adleman. Ele atende a todos os requisitos de um processo de chave pblica, no entanto considerado bastante lento, em razo dos 1.024 bits de sua chave exigidos para garantir um bom nvel de segurana. As etapas deste processo no sero detalhadas neste trabalho, bastando informar que elas utilizam alguns princpios de teoria dos nmeros, escolhendo nmeros primos distintos como chaves.

2.8.1.3 RC4 O RC4 um algoritmo de chave simtrica que foi desenvolvido em 1987 por Ronald Rivest, um dos colaboradores do RSA. Sua lgica se manteve secreta at que foi divulgada na internet em 1994. Ele um algoritmo de fluxos, ou seja, criptografa os dados medida que esto sendo transmitidos, diferentemente do DES que um algoritmo de blocos.

O algoritmo gera um fluxo de bits pseudo-aleatrios a partir de uma chave. Esses bits iro ser operados com o texto simples atravs de um XOR, resultando no texto cifrado. Para a realizao do XOR o fluxo de bits gerados deve ter o mesmo tamanho que a informao a ser cifrada. Assim, o RC4 permite tamanhos de chaves que variam de 1 a 256 bytes. Duas etapas internas so utilizadas. Uma o KSA(Key-Scheduling Algorithm) que usado para inicializar a permutao no array S. O array S a estrutura de 256 bits na qual ocorrem todos os clculos do RC4. A outra etapa o PRGA(Pseudo Random Generation Algorithm) na qual outras permutaes so realizadas, bem como o clculo do XOR com o texto simples. O Algoritmo tem como entrada a chave e o texto simples, obtendo o texto cifrado ao final do processo. Um exemplo pode ser vista na figura abaixo.

FIGURA 09

Para garantir que o algoritmo funcione com um desempenho razovel, comumente utilizam-se chaves de 5 a 16 bytes, ou seja, de 40 a 128 bits. Uma de suas falhas a gerao da mesma seqncia de bits a partir da mesma chave.

2.8.1.4 Vetor de Inicializao O vetor de inicializao (Initialization Vector IV) na criptografia um bloco de bits que necessrio para permitir que o algoritmo de criptografia inicie o processo de cifragem, seja ele de cifra de bloco ou de cifra de fluxo. No exemplo da figura 09, sempre que a chave k utilizada no gerador pseudo-aleatrio a mesma seqncia de bits obtida. Com o mesmo grupo de bits, o resultado da criptografia de um texto P tambm ser sempre o mesmo. Com a insero de um IV chave k, uma nova seqncia de bits gerada, e o resultado da criptografia ser diferente daquele apresentado. Para cada IV diferente inserido na chave, o resultado ser distinto, mesmo que a chave seja a mesma. Para que o destinatrio possa descriptografar o texto cifrado, a mesma seqncia de bits deve ser gerada por ele. Como a chave secreta k j conhecida do destinatrio, resta apenas o conhecimento do IV. Uma das formas de fazer o destinatrio conhecer o IV enviando-o s claras junto ao texto cifrado. Mais a diante, ser visto que o protocolo de segurana WEP utiliza um vetor de inicializao agregado ao RC4 para a transmisso de seus pacotes. 2.8.2 Autenticao O termo autenticao vem do verbo autenticar, que significa o ato de confirmar que algo ou algum autntico. Nos sistemas computacionais a autenticao um processo eu busca verificar a identidade digital do usurio de um sistema, geralmente, no momento em que ele solicita um acesso a um programa ou servio. Um dos modos mais tradicionais de se promover a segurana pela autenticao do usurio e/ou equipamento. E a autenticao mais disseminada, e de fcil implementao, feita mediante a solicitao de um usurio e uma senha. No entanto, existem outras formas de autenticao, como a associao com o endereo MAC do equipamento, senhas dinmicas (que variam constantemente, chamadas de one time password) e utilizao de certificados digitais.

Nas redes sem fio, utiliza-se bastante o binmio usurio/senha, seja atravs da exibio de uma tela de autenticao para acesso ao prprio computador, no qual os usurios so autenticados em um domnio de rede local; seja para utilizao de servios comerciais em locais pblicos, no qual o usurio tambm precisa se autenticar para ter acesso ao recurso solicitado, por exemplo, acesso internet. Mais uma vez, vale ressaltar que tanto o par usurio/senha quanto os demais dados trafegados pela rede so susceptveis escuta, simplesmente por tais informaes transitarem pelo ar, podendo ser capturadas e usadas por um atacante malicioso.

2.8.2.1 Autenticao Kerberos O protocolo de autenticao Kerberos foi projetado pelo MIT para permitir que os usurios de estaes de trabalho tivessem acesso a recursos da rede de uma forma segura [Tanembaum, p846]. A origem de seu nome se deve ao co-guarda de 3 cabeas da mitologia grega. Ele utiliza trs servidores: o Servidor de Autenticao (Authentication Server - AS) que verifica a identidade do usurio durante o login; o Ticket- Granting Server (TGS), que gera o bilhete de comprovao de identidade; e o servidor de arquivos, que executa o servio solicitado pelo usurio. O algoritmo de criptografia utilizado o DES, um algoritmo de criptografia simtrica. Simplificadamente, o processo de autenticao Kerberos funciona da seguinte forma: 1. Alice, estao de trabalho cliente, envia seu nome A em texto simples ao AS. 2. O AS retorna uma chave de sesso kS e um bilhete kTGS(A,kS) destinado ao TGS. Esse pacote vem criptografado pela chave secreta de Alice. 3. Ao receber o pacote, Alice digita a senha, que usada para criar K A, com a finalidade de descriptografar o pacote com kS e kTGS(A,kS). A senha eliminada da estao e no enviada pela rede.

4. Efetuado o login, Alice informa ao TGS que deseja utilizar o servidor de arquivos Bob, solicitando um bilhete para usar com Bob. Nesse pacote vo kTGS(A,kS),B e kS. Nesse caso, B o nome de Bob. Associado ao k S vai um timbre de hora criptografado t. 5. O TGS responde com a criao de uma nova chave de sesso, k AB, para Alice utilizar com Bob. So enviadas duas cpias desta chave: uma criptografada com ks, ou seja, ks(B,kAB), e outra criptografada com a chave de Bob kB, ou seja, kB(A,kAB). 6. Alice descriptografa o pacote anterior com a chave kS para obter kAB. Alice envia kAB a Bob para estabelecer uma sesso com ele. Associado chave tambm vai um timbre de hora. 7. Bob responde com kAB com o timbre acrescido de uma unidade. O retorno a Alice garante que ela est se comunicando com Bob. O Kerberos indicado para aplicaes cliente/servidor e no ponto-a-ponto. Permite a utilizao de vrios servidores, dividindo a rede em realms, o que torna o protocolo escalonvel. No entanto, algumas limitaes podem ser observadas, como a necessidade de sincronizao dos relgios dos servidores, em virtude da utilizao do timbre com a hora. Normalmente o protocolo oferece cinco minutos de limite para considerar um pacote como expirado. Senhas fracas tambm podem comprometer a segurana mediante ataque de dicionrio.

2.8.2.2 Autenticao RADIUS O protocolo de autenticao RADIUS(Remote Authentication Dial in User Service), definido pelo RFC 2865, um protocolo do tipo AAA (Authentication, Authorization e Acounting), pois implementa processos de autenticao, de autorizao e de contabilizao. O procedimento de contabilizao refere-se possibilidade de monitoramento do consumo dos recursos pelos usurios da rede. Informaes como tempo de acesso e tipo do servio requisitado so exemplos de contabilizao. Essas

informaes podem ser utilizadas para gerenciamento, planejamento ou mesmo para cobrana de tarifas aos usurios do servio. A autorizao a liberao de determinados servios, baseada na sua autenticao. O servidor verifica quais os servios que podem ser concedidos ao usurio. Possveis restries podem ser definidas como, por exemplo, uma restrio de horrio para acesso. A definio de autenticao j foi abordada no incio desta seo. No processo utilizado pelo RADIUS, temos a participao das seguintes entidades: Usurio: aquele que deseja obter acesso a um determinado servio da rede atravs de um servidor de acesso. Um indivduo com um notebook que deseja conectar-se a uma rede sem fio, por exemplo, considerado um usurio. Servidor de Acesso Rede: ou NAS (Network Access Server), chamado tambm de cliente RADIUS, pois ele que entra em contato com o servidor RADIUS para requisitar a autenticao do usurio remoto. Funciona, dessa forma, como servidor para o usurio e como cliente para o RADIUS. Servidor RADIUS: o servidor RADIUS propriamente dito. ele quem identifica se as credenciais fornecidas pelo usurio so vlidas. Para tanto, ele dispem de uma base de dados na qual esto armazenadas as informaes dos usurios, como login/senha e permisses de acesso. Aps a verificao das informaes, ele responde ao Servidor de Acesso permitindo ou no o acesso do usurio rede. Base de Dados: nele em que ficam armazenadas as informaes necessrias para o RADIUS determinar o acesso ou no de um usurio. A Base de Dados pode estar na mesma mquina, ou ficar em outra mquina da rede. A autenticao de um usurio pelo RADIUS pode ser feita praticamente de dois mtodos: atravs de um Challenge/Response ou por meio de um Login/Senha.

No Challenge/Response o usurio responder a um desafio do RADIUS. O desafio criptografar um nmero randmico enviado pelo servidor e devolver o resultado. Apenas usurios autorizados e equipados com um software adequado para realizar o clculo da resposta ou com smart cards podem realizar este tipo de autenticao. O funcionamento como a seguir: o usurio envia ao NAS uma solicitao de autenticao. Em seguida, o NAS encaminha ao Servidor RADIUS um pacote Acces-Request, contendo, dentre outras informaes, os campos login e senha. Como se trata de um Challenge/Response, o campo senha vai com a informao challenge. O servidor envia de volta um pacote Access-Challenge com um desafio aleatrio numrico. O NAS solicita ao usurio que informe a resposta ao desafio. O usurio digita a chave que ser usada para criptografar o desafio, e s ento o NAS encaminha ao servidor um novo pacote Acces-Request. Este novo pacote agora vai conter no campo senha a resposta ao desafio, criptografada. O servidor, ao receber o pacote, faz a descriptografia para verificar se confere com a resposta esperada, e envia ou um pacote Access-Accept ou um pacote Access-Reject, caso a resposta no seja a correta. Neste caso, o servidor poder enviar, novamente, um outro desafio ao usurio. No modo Login/Senha, o usurio informa seu login e senha para serem validados pelo servidor RADIUS. Aps esta etapa, o servidor RADIUS ainda poder iniciar um Challenge/Response como segurana adicional. Pode-se descrever o processo de autenticao RADIUS, utilizando o metdo login/senha, da seguinte forma: 1. O usurio envia um pacote, contendo o login e senha, para o Cliente RADIUS. Em redes sem fio, esse pacote pode ser enviado utilizando-se o EAP(Extensible Authentication Protocol), protegendo as informaes de login e senha. 2. O cliente RADIUS recebe o pacote, e efetua uma requisio ao servidor RADIUS atravs do pacote Access-Request. O login vai em texto simples no pacote, porm a senha do usurio transmitida criptografada com a chave secreta compartilhada pelo cliente RADIUS e o servidor RADIUS. O

algoritmo RSA-MD5 o responsvel por essa criptogrfia. O cliente aguarda por uma resposta durante um determinado tempo, aps o qual ele efetua nova requisio. 3. Recebida a solicitao pelo servidor RADIUS, este faz a validao do cliente. No entanto, solicitaes de clientes RADIUS que no possuem chave secreta compartilhada so descartadas. Se o cliente for vlido, o servidor consulta o banco de dados a fim de realizar a validao do usurio. Alm da validao, o servidor verifica tambm a autorizao para o servio solicitado. 4. Depois de validadas as informaes do usurio, o servidor RADIUS encaminha um pacote Access-Accept, no caso de o acesso ter sido liberado, ou um pacote Access-Reject, no caso de a validao ter sido negada. O servidor ainda poder enviar um Access-Challenge que dever ser respondido pelo usurio como j apresentado. O protocolo RADIUS define tambm a utilizao de Proxy. Nesse caso, o Servidor RADIUS pode encaminhar a solicitao de requisio para que outro Servidor RADIUS a valide, permitindo, assim, a utilizao de roaming entre redes. No entanto, uma das desvantagens a de o Servidor RADIUS no informar sua condio de ocupado ao Cliente RADIUS. Dessa forma, o Cliente RADIUS precisa calcular inteligentemente um tempo para reenviar o pacote de requisio. Caso isto no ocorra a contento, o servidor poder ficar sobrecarregado e comprometer as autenticaes da rede.

2.8.3 IPSec O IPSec (IP Security Protocol), ou Protocolo de Segurana IP, um projeto definido pela IETF com o objetivo de garantir a confidencialidade, a integridade e a autenticidade nos pacotes IP. O IPSec tem como objetivo tratar todas essas ameaas na prpria camada de rede, para que no sejam necessrias modificaes nos terminais ou nos aplicativos.

Sua principal caracterstica a utilizao de criptografia na camada IP, baseada em algoritmos de chave simtrica, dado seus elevados desempenhos de processamento. Por se implementado na camada de rede, o IPSec fornece uma soluo fim-a-fim, e no ponto-a-ponto, como acontece na camada de enlace. Como os pacotes encriptados tm o mesmo formato de pacotes IP comuns, eles podem ser roteados sem problemas em qualquer rede IP, e sem qualquer alterao nos equipamentos de rede intermedirios. necessria apenas alterao nos dispositivos do incio e do fim das comunicaes IPSec.

2.8.3.1 Modos de Operao O IPSec trabalha com dois modos de operao: o modo de transporte e o modo de tunelamento. No modo de transporte, o cabealho IPSec inserido logo aps o cabealho IP, com um indicativo no cabealho IP indicando que h um cabealho IPSec em seguida. O identificador de segurana da conexo est contido neste cabealho. No modo de tnel, todo o pacote IP, incluindo o cabealho, encapsulado no corpo de um novo pacote IP com um cabealho IP completamente novo[Tabembaum, p822].

2.8.3.2 Cabealhos IPSec Nos pacotes do IPSec, novos cabealhos so inseridos aps o cabealho IP e antes do cabealho da camada superior. So eles que do as informaes para a proteo dos dados do pacote IP. Dois cabealhos foram definidos: Authentication Header (AH) e Encapsulating Security Payload (ESP). O AH e o ESP podem ser usados em conjunto, apesar de a maioria das aplicaes utiliz-los em separado. O AH garante a integridade e autenticidade dos dados, incluindo os campos do cabealho original que no so alterados entre a origem e o destino. Porm, no fornece confidencialidade. utilizada uma funo hash com chave, ao invs de

assinatura digital, pois o mecanismo de assinatura digital bem mais lento e poderia reduzir a capacidade da rede. J o ESP protege a confidencialidade, integridade e autenticidade da informao. Se o ESP for usado para validar a integridade, ele no inclui os campos invariantes do cabealho IP. Apesar de o IPSec no definir qual o algoritmo de criptografia ser utilizado, quase todas as implementaes trabalham com MD5 (da RSA Data Security) e o Secure Hash Algorithm (SHA, do governo dos EUA) para integridade e autenticao. O DES o algoritmo mais comumente usado para a encriptao dos dados, apesar de muitos outros estarem disponveis, de acordo com as RFCs, como o IDEA, Blowfish e o RC4.