UNIVERSIDADE CATÓLICA DE GOIÁS
DEPARTAMENTO DE COMPUTAÇÃO
GRADUAÇÃO EM ENGENHARIA DE COMPUTAÇÃO
SEGURANÇA EM REDES 802.11 COM ÊNFASE NO PADRÃO
IEEE 802.1x
LARISSA SVETLANNE SOARES DE OLIVEIRA
MAURÍLIO HUMBERTO RODRIGUES MIRANDA
OUTUBRO
2007
ii
UNIVERSIDADE CATÓLICA DE GOIÁS
DEPARTAMENTO DE COMPUTAÇÃO
GRADUAÇÃO EM ENGENHARIA DE COMPUTAÇÃO
SEGURANÇA EM REDES 802.11 COM ÊNFASE NO PADRÃO
IEEE 802.1x
Trabalho de Projeto Final de Curso apresentado por Larissa
Svetlanne Soares de Oliveira e Maurílio Humberto Rodrigues
Miranda ao Departamento de Computação da Universidade
Católica de Goiás, como requisito parcial para obtenção do
título de Bacharel em Engenharia de Computação aprovado em
23/11/2007 pela Banca Examinadora:
Professor Rodrigo Pinto Lemos, Dr. UCG – Orientador
Professor Wilmar Oliveira de Queiroz, MsC. UCG
Professor Ulisses Rodrigues Afonseca, MsC. UCG
iii
SEGURANÇA EM REDES 802.11 COM ÊNFASE NO PADRÃO IEEE
802.1x
LARISSA SVETLANNE SOARES DE OLIVEIRA
MAURÍLIO HUMBERTO RODRIGUES MIRANDA
Trabalho de Projeto Final de Curso apresentado por Larissa Svetlanne Soares de
Oliveira e Maurílio Humberto Rodrigues Miranda ao Departamento de Computação da
Universidade Católica de Goiás, como parte dos requisitos para obtenção do título de
Bacharel em Engenharia de Computação.
__________________________
_________________________________
Professor Rodrigo Pinto Lemos, Dr
Professor Jeová Martins Riberio, Esp.
Orientador
Coordenador de Projeto Final de Curso
iv
(DEDICATÓRIA) - EPÍGRAFE
à Deus pela minha vida e oportunidades.
Aos meus pais
pela luta, dedicação, apoio e confiança
durante estes anos de faculdade.
Ao Rogério pela paciência nos dias mais
difíceis no decorrer desse projeto.
à Deus pela minha vida e oportunidades.
Aos meus familiares.
À minha mãe Maria de Lourdes, futura esposa Karolyna
e minha filha Ana Carolina, pelo apoio, afago e diversão.
“Seria mais fácil fazer como todo mundo faz; o milésimo
gol sentado na mesa de um bar. Mas nós vibramos em
outras freqüências, sabemos que não é bem assim. Se
fosse fácil andar nos caminhos das pedras, tantas pedras
no caminho não seria ruim.”
Humberto Gessinger
v
AGRADECIMENTOS
Ao Professor Rodrigo Lemos, orientador acadêmico, pelo apoio e confiança
depositada. Aos professores Wilmar e Ulisses, por aceitarem participar de nossa banca
examinadora. Aos amigos Régis Conde e Renan Além, pelas discussões técnicas e
inestimáveis sugestões. E, finalmente, ao colega Rodrigo Braga, autor do projeto que
inspirou-nos no Estudo de Caso.
vi
OBJETIVO
Este trabalho tem o objetivo de tratar as várias formas de se proporcionar
mecanismos seguros a uma rede 802.11, abordando principalmente do padrão 802.1x e
formalizar que, analisando a aplicabilidade desses mecanismos, é possível desenvolver
ambientes sem fio seguros.
vii
JUSTIFICATIVA
Existe, atualmente, uma grande demanda e interesses nas implementações de redes
sem fio. Porém, poucos serviços visam garantir a segurança dessas informações,
principalmente o controle de acesso. Grandes empresas já tiveram problemas com servidores
de autenticação. Portanto, há uma necessidade no mercado de se aperfeiçoar as maneiras de se
oferecer segurança em redes 802.11.
viii
RESUMO
Baseado no padrão IEEE 802.11i, o trabalho propõe uma solução adequada às
redes IEEE 802.11, mais popularmente conhecidas como redes sem fio. Esta tecnologia vem
trazendo vários benefícios como praticidade e baixo custo a usuários residenciais, comerciais
e industriais. Entretanto, o ar, que é o meio de transmissão das redes sem fio, é bastante
vulnerável a ataques e invasões.
Hoje, muitas implementações já estão configurando
mecanismos de criptografia, objetivando a confidencialidade dos dados. Porém, estas
abordagens são ausentes do controle de acesso e, consequentemente, autenticação. Assim este
trabalho objetiva demonstrar, através do IEEE 802.1x em conjunto com o RADIUS, ser
possível que uma rede 802.11 obtenha soluções eficientes de segurança.
Palavras-Chave: segurança, redes sem fio, IEEE 802.11, IEEE 802.1x, RADIUS.
ix
ABSTRACT
Based on the IEEE 802.11i standard, this work suggests an appropriate solution to
networks IEEE 802.11, more popularly known as wireless networks. This technology is
bringing many benefits as practicality and low cost to users residential, commercial and
industrial. However, the air, which is the means of transmission of wireless networks, it is
very vulnerable to attacks and intrusions. Today, many implementations are already setting
mechanisms of encryption, aiming the confidentiality of the data. But these approaches are
absent from the control of access and therefore authentication. Thus this work aims to
demonstrate, through the IEEE 802.1x in conjunction with RADIUS, be possible for a
network 802.11 obtain effective solutions security.
Key Words: security, wireless network, IEEE 802.11, IEEE 802.1x, RADIUS.
x
SEGURANÇA EM REDES 802.11 COM ÊNFASE NO PADRÃO IEEE 802.1x
SUMÁRIO
LISTA DE FIGURAS ......................................................................................................................................XIII
LISTA DE TABELAS......................................................................................................................................XIV
LISTA DE ABREVIATURAS E SIGLAS ...................................................................................................... XV
1. INTRODUÇÃO ............................................................................................................................................... 17
2. SEGURANÇA DE REDES ............................................................................................................................. 18
2.1. PRINCÍPIOS DE SEGURANÇA ........................................................................................................................ 19
2.1.1. Autenticação ...................................................................................................................................... 19
2.1.2. Disponibilidade e Controle de Acesso ............................................................................................... 19
2.1.3. Integridade e Não Repúdio ................................................................................................................ 20
2.1.4. Confidencialidade .............................................................................................................................. 20
2.2. MECANISMOS DE ATAQUE........................................................................................................................... 20
2.2.1. Interrupção ........................................................................................................................................ 21
2.2.2. Interceptação ..................................................................................................................................... 21
2.2.3. Modificação ....................................................................................................................................... 22
2.2.4. Mascaramento.................................................................................................................................... 23
2.3. MECANISMOS DE DEFESA............................................................................................................................ 23
2.3.1 Criptografia ........................................................................................................................................ 24
2.3.1.1. Criptografia Simétrica..................................................................................................................................24
2.3.1.2. Criptografia Assimétrica ..............................................................................................................................25
2.3.2. Autenticação ...................................................................................................................................... 25
2.3.2.1. Autenticação versus Autorização .................................................................................................................26
2.3.2.2. Tipos de Autenticação ..................................................................................................................................27
2.3.2. Firewall.............................................................................................................................................. 28
3. REDES SEM FIO IEEE 802.11...................................................................................................................... 30
3.1. FUNDAMENTOS E ARQUITETURA ................................................................................................................ 30
3.1.1. Equipamentos..................................................................................................................................... 30
3.1.1.1. Estação-base ................................................................................................................................................31
3.1.1.2. Meio sem fio .................................................................................................................................................31
3.1.1.3. Estações........................................................................................................................................................31
3.1.2. Canais e associação........................................................................................................................... 32
3.1.3. Tipos de redes .................................................................................................................................... 33
3.1.3.1. BSS Independentes .......................................................................................................................................33
3.1.3.2. BSS Infra-estruturados .................................................................................................................................34
3.1.3.3. BSS Estendido ..............................................................................................................................................34
3.2. 802.11 VERSUS ETHERNET.......................................................................................................................... 35
3.2.1 Camada Física .................................................................................................................................... 38
3.2.1.1. Infravermelho ...............................................................................................................................................39
3.2.1.2. FHSS ............................................................................................................................................................39
3.2.1.3. DSSS.............................................................................................................................................................40
3.2.1.4. OFDM ..........................................................................................................................................................40
3.2.2. Sub-camada MAC .............................................................................................................................. 40
3.3. EXTENSÕES................................................................................................................................................. 41
3.3.1. 802.11a .............................................................................................................................................. 41
3.3.2. 802.11b .............................................................................................................................................. 41
3.3.3. 802.11g .............................................................................................................................................. 42
3.3.4. 802.11i ............................................................................................................................................... 42
4. VULNERABILIDADES DAS REDES 802.11 .............................................................................................. 43
xi
4.1. ANÁLISE DAS VULNERABILIDADES 802.11 ................................................................................................. 43
4.1.1. Riscos Internos................................................................................................................................... 43
4.1.1.1. WLANs Grampeáveis..................................................................................................................................44
4.1.1.2. Configurações Inseguras..............................................................................................................................44
4.1.1.3. Associação Acidental ...................................................................................................................................44
4.1.2. Riscos Externos.................................................................................................................................. 44
4.1.2.1. Espionagem ..................................................................................................................................................45
4.1.2.2. Roubo de Identidade.....................................................................................................................................45
4.2. VULNERABILIDADES DO WEP .................................................................................................................... 45
4.3. VULNERABILIDADES DE AUTENTICAÇÃO.................................................................................................... 46
4.3.1. Vulnerabilidades da Autenticação de Sistema Aberto ....................................................................... 46
4.3.2. Vulnerabilidades na Autenticação por SSID ..................................................................................... 46
4.3.3. Vulnerabilidades por MAC ................................................................................................................ 47
4.3.4. Vulnerabilidades do RADIUS ............................................................................................................ 47
4.4. ATAQUES WIRELESS ................................................................................................................................... 48
4.4.1. Ataques de Força Bruta ..................................................................................................................... 49
4.4.2. Ataques de Dicionário ....................................................................................................................... 49
5. CRIPTOGRAFIA............................................................................................................................................ 50
5.1. WEP (WIRED EQUIVALENT PRIVACY)........................................................................................................ 50
5.1.1. Chaves WEP ...................................................................................................................................... 51
5.1.1.1. Chaves padrão..............................................................................................................................................51
5.1.1.2. Chaves mapeando chaves.............................................................................................................................52
5.1.2. Funcionamento .................................................................................................................................. 53
5.1.2.1. RC4...............................................................................................................................................................54
5.1.2.2. Vetor de Inicialização - IV ...........................................................................................................................55
5.1.3. Mecanismos do WEP ......................................................................................................................... 56
5.1.3.1. Transmissão do quadro ................................................................................................................................57
5.2. WPA (WI-FI PROTECTED ACCESS)............................................................................................................. 58
5.2.1. Hierarquia de chaves WPA................................................................................................................ 58
5.2.1.1. Hierarquia Pairwise Key..............................................................................................................................60
5.2.1.2. Hierarquia Group Key .................................................................................................................................62
5.2.1.3. Protocolo TKIP ............................................................................................................................................63
5.3. WPA2 ........................................................................................................................................................ 66
5.3.1. AES .................................................................................................................................................... 66
5.3.2. CCMP ................................................................................................................................................ 67
6. AUTENTICAÇÃO .......................................................................................................................................... 68
6.1. MECANISMOS DE AUTENTICAÇÃO .............................................................................................................. 68
6.1.1. PPP .................................................................................................................................................... 68
6.1.1.1. PAP e CHAP ................................................................................................................................................69
6.1.1.2. Desvantagens do PPP ..................................................................................................................................70
6.1.2. EAP .................................................................................................................................................... 70
6.2. AUTENTICAÇÃO DOS DISPOSITIVOS ............................................................................................................ 71
6.2.1. Autenticação por Chave Pública ....................................................................................................... 71
6.2.2. Autenticação por Certificado............................................................................................................. 71
6.3. MENSAGENS DE AUTENTICAÇÃO ................................................................................................................ 72
6.4. CLASSES DOS MECANISMOS DE AUTENTICAÇÃO ........................................................................................ 72
6.4.1. Senhas livres no espaço ..................................................................................................................... 73
6.4.2. Senhas Únicas.................................................................................................................................... 73
6.4.3. Desafio/Resposta................................................................................................................................ 73
6.4.4. Troca de chave anônima .................................................................................................................... 74
6.4.5. Prova do conhecimento da senha zero............................................................................................... 74
6.4.6. Certificados do servidor com autenticação do cliente....................................................................... 74
6.4.7. Autenticação mútua da chave pública ............................................................................................... 75
6.5. AUTORIZAÇÃO E CONTABILIDADE .............................................................................................................. 75
6.5.1. Autorização........................................................................................................................................ 76
6.5.1.1. Diferenças entre Autenticação e Autorização ..............................................................................................76
6.5.1.2. Padrão e Procedimentos de Autorização .....................................................................................................76
6.5.1.3. Estrutura de Políticas e Autorização............................................................................................................77
6.5.2. Contabilidade..................................................................................................................................... 77
xii
6.5.2.1. Arquitetura de Gerência...............................................................................................................................78
6.5.2.2. Segurança.....................................................................................................................................................78
6.5.2.3. Confiabilidade..............................................................................................................................................79
6.5.3. Autorização em conjunto com a Contabilidade ................................................................................. 80
7. EAP – EXTENSIBLE AUTHENTICATION PROTOCOL........................................................................ 81
7.1. PRINCÍPIOS EAP ......................................................................................................................................... 81
7.2. FORMATO DA MENSAGEM EAP................................................................................................................... 82
7.3. EAPOL ...................................................................................................................................................... 83
7.4. PROCESSO DE AUTENTICAÇÃO COM EAP.................................................................................................... 84
7.5. EAP-TLS ................................................................................................................................................... 85
7.6 EAP-TTLS .................................................................................................................................................. 86
8. IEEE 802.1X – RADIUS ................................................................................................................................. 87
8.1. IEEE 802.1X............................................................................................................................................... 87
8.1.1. Fundamentos...................................................................................................................................... 87
8.2. REMOTE AUTHENTICATION DIAL IN USER SERVICE (RADIUS) ............................................................... 89
8.2.1. Mensagens ......................................................................................................................................... 90
8.2.1.1. Formato da mensagem .................................................................................................................................91
8.2.2. Confiabilidade no transporte ............................................................................................................. 92
8.2.3. RADIUS e segurança ......................................................................................................................... 92
8.2.3.1. Proteção de Integridade nas Mensagens......................................................................................................92
8.2.3.1.1. Autenticador solicitante........................................................................................................................93
8.2.3.1.2. Autenticador Resposta..........................................................................................................................93
8.2.4. Exemplos de Operações ..................................................................................................................... 94
8.2.4.1. PAP ..............................................................................................................................................................94
8.2.4.2. CHAP ...........................................................................................................................................................95
8.2.4.3. RADIUS com EAP ........................................................................................................................................96
8.2.5. Contabilidade..................................................................................................................................... 97
8.2.5.1. Segurança e Confiabilidade .........................................................................................................................99
8.3. DIAMETER ................................................................................................................................................ 100
8.3.1. Fail-Over ......................................................................................................................................... 100
8.3.2. Mensagens iniciadas em Servidor.................................................................................................... 101
8.3.3. Transporte Confiável ....................................................................................................................... 101
8.3.4. Capacidade de Negociação ............................................................................................................. 101
8.3.5. Questões de Segurança .................................................................................................................... 101
8.3.6. Descoberta e Configuração do Par ................................................................................................. 102
8.3.7. Compatibilidade inversa com o RADIUS......................................................................................... 102
9. ESTUDO DE CASO: IMPLEMENTAÇÃO DE UMA REDE SEM FIO NO PARQUE
TECNOLÓGICO DE ITAIPU ......................................................................................................................... 103
9.1. AMBIENTE DE PREPARAÇÃO ..................................................................................................................... 103
9.1.1. Mecanismos Utilizados .................................................................................................................... 104
9.1.2. Estrutura Física ............................................................................................................................... 104
9.2. AMBIENTE DE TESTES ............................................................................................................................... 106
9.2.1. Ferramentas Utilizadas.................................................................................................................... 106
9.2.1.1. Wireless-tools .............................................................................................................................................106
9.2.1.2. Aircrack-ng.................................................................................................................................................107
9.2.2. Abordagens de Segurança ............................................................................................................... 107
9.2.2.1. Autenticação por endereço MAC e SSID....................................................................................................107
9.2.2.2. Criptografia WEP.......................................................................................................................................108
9.2.2.3. Criptografia WPA2 com Servidor RADIUS................................................................................................109
10. CONCLUSÕES E TRABALHOS FUTUROS .......................................................................................... 110
REFERÊNCIAS BIBLIOGRÁFICAS............................................................................................................. 112
xiii
LISTA DE FIGURAS
Figura 1 – Ataque por Interrupção [11] ..................................................................................21
Figura 2 – Ataque por Interceptação [11] ...............................................................................22
Figura 3 – Ataque por Modificação [11] .................................................................................22
Figura 4 – Ataque por Mascaramento [11] .............................................................................23
Figura 5 – Processo de cifragem e decifragem [11]................................................................24
Figura 6 – Criptografia Simétrica [11] ...................................................................................25
Figura 7 – Criptografia Assimétrica [11]................................................................................25
Figura 8 – Exemplo de um Firewall [11] ................................................................................29
Figura 9 – Componentes de um rede sem fio [1] .....................................................................31
Figura 10 – BSS Independente e Infra-estruturados, respectivamente [4]..............................34
Figura 11 – BSS Estendido [4] ................................................................................................35
Figura 12 – Ethernet versus 802.11 a nível de camadas [1] ...................................................36
Figura 13 – Parte da pilha de protocolos do 802.11 [8] .........................................................37
Figura 14 – Problema do Terminal Oculto [5]........................................................................38
Figura 15 – Chave Padrão.......................................................................................................52
Figura 16 – Chaves Mapeando Chaves ...................................................................................53
Figura 17 – Operação do WEP [3]..........................................................................................54
Figura 18 – Uso do Vetor de Inicialização ..............................................................................55
Figura 19 – Adição do ICV ......................................................................................................57
Figura 20 – Adição do IV e ID da chave..................................................................................57
Figura 21 – Pairwise Key e Group Key do WPA [3]...............................................................59
Figura 22 – Cálculo da Chave de Transição [3] .....................................................................61
Figura 23 – Autenticação mútua de duas chaves baseada em certificados [6].......................72
Figura 24 – Modelo de Serviço de Autorização [6].................................................................77
Figura 25 – Formato da Mensagem EAP [3] ..........................................................................82
Figura 26 – Mensagem EAP-Request / EAP-Response [3] .....................................................83
Figura 27 – Formato do quadro EAPOL [3] ...........................................................................84
Figura 28 – Modelo comparativo entre 802.1x e um Switch [3] .............................................88
Figura 29 – Funcionamento do NAS [1]..................................................................................90
Figura 30 – Operação PAP [3]................................................................................................95
Figura 31 – Operação CHAP [3].............................................................................................96
Figura 32 – Inserindo mensagens EAP no RADIUS [6]..........................................................97
Figura 33 – Mensagens de contabilidade no RADIUS [6] ......................................................98
Figura 34 – Troca de Mensagens da Contabilidade [6]..........................................................99
Figura 35 – Arquitetura da rede antes da implementação [1] ..............................................104
Figura 36 – Representação do prédio do PTI e a distribuição dos AP’s [1] ........................105
Figura 37 – Proposta de implantação de rede sem fio segura no PTI [1] ............................105
Figura 38 – Ambiente de Testes[1] ........................................................................................106
xiv
LISTA DE TABELAS
Tabela 1 – Mudança do WEP para TKIP [3] ..........................................................................64
Tabela 2 – Formato do pacote PPP [6] ...................................................................................69
Tabela 3 – Formato dos atributos do RADIUS [6] ..................................................................91
Tabela 4 – Formato do pacote RADIUS [6] ............................................................................91
Tabela 5 – Atributos da mensagem de requisição de acesso usando PAP [6] ........................94
Tabela 6 – Atributos enviados na Requisição de acesso para autenticação CHAP [6] ..........96
xv
LISTA DE ABREVIATURAS E SIGLAS
AAA
Authentication, Authorization and Accounting
AC
Autoridade Certificadora
AES
Advanced Encryption Standard
ADSL
Asymmetric Digital Subscriber Line
AP
Access Point
AS
Authentication Server
BSA
Basic Service Area
BSS
Basic Service Set
CHAP
Challenge Handshake Protocol
CRC
Código de Redundância Cíclica
CSMA/CA
Carrier Sense Multiple Access with Collision Avoidance
CSMA/CD
Carrier Sense Multiple Access with Collision Detection
CCMP
Counter Mode with Cipher Block Chaining MAC Protocol
DHCP
Dynamic Host Configuration Protocol
DOS
Denial of Service
DSSS
Direct Sequence Spread Spectrum
EAP
Extensible Authentication Protocol
ESS
Extended Service Set
FHSS
Frequency Hopping Spread Spectrum
GTK
Group Transient Key
HR-DSSS
High Rate / Direct Sequence Spread Spectrum
IBSS
Independents BSS
ICV
Valor de Checagem de Integridade
ID
Identificador
IEEE
Institute of Eletrical and Eletronics Engineers
IETF
Internet Engineering task force
IP
Internet Protocol
IV
Vetor de inicialização
LAN
Local Area Network
LCP
Link Control Protocol
LLC
Logical Link Control
xvi
MAC
Medium Access Control
MIC
Message integrity code
MPDU
Unidade de Dados do Protocolo MAC
MSDU
Unidade de Dados do Serviço MAC
NAS
Servidor de Acesso a Rede
NCP
Network Control Protocol
NIST
National Institute of Standars and Technology
OFDM
Orthogonal Frequency Division Multplexing
PAP
Password Authentication Protocol
PMK
Pairwise Master Key
PPP
Point-to-point Protocol
PTI
Parque Tecnológico de Itaipu
PTK
Pairwise Transient Key
RA
Requisição de Autenticação
RADIUS
Remote Authentication Dial In User Service
RC4
Algoritmo de Encriptação de Dados
RSN
Robust Security Network
SSID
Service Set Identifier
TCP
Transmission Control Protocol
TKIP
Temporal Key Integrity Protocol
TLS
Transport Layer Security
TSN
Transitional Security Network
UDP
User Datagram Protocol
WEP
Wired Equivalent Protocol
WLAN
Wireless Local Area Network
WPA
Wi-Fi Protect Access
1. Introdução
O conteúdo das informações eletrônicas, atualmente, tem sido alvo fácil de hackers e
indivíduos mal intencionados. Fatores atraentes como praticidade, comodidade, agilidade,
entre outros, atraem, a cada dia, inúmeras pessoas que necessitam de todas essas vantagens.
Paradoxalmente, esse interesse não faz com que os usuários do universo da Tecnologia da
Informação tenham o mínimo de malícia, ou melhor, maturidade e discernimento para saber
que o maravilhoso mundo no qual as Redes de Computadores e a Internet nos proporciona
contém ameaças, riscos e perigos.
O problema é que a maioria das pessoas que utilizam uma rede sem fio, não têm
noção dos perigos que estão expostos. Vários crimes estão sendo praticados diariamente pelas
redes, principalmente a Internet, e a maioria dos usuários ignoram os fatos. Senhas bancárias
de usuários residenciais são roubadas, usuários comerciais e industriais têm seus planos
descobertos por concorrentes, corporações que fornecem o serviço pela rede se vêem de mãos
atadas quando seus servidores estão redirecionados apenas a um usuário.
Isso tudo ocorre em estruturas cabeadas, ou seja, possuem pelo menos a proteção
física. E as redes sem fio, nas quais também há uma crescente popularização? E pior ainda,
em relação à proteção física dos dados no momento da transmissão: nenhuma. Entretanto sua
praticidade é maior ainda do que qualquer outro tipo de rede.
É este o desafio deste trabalho: encontrar a melhor forma de se oferecer segurança às
redes sem fio. Para que este objetivo seja alcançado, o trabalho está dividido em quatro partes.
Na primeira, representada pelos capítulos 2 e 3, serão abordados tópicos fundamentais sobre
seguranças de redes e redes 802.11, respectivamente, visando proporcionar uma base para o
desenvolvimento e conclusão do trabalho. No capítulo 4, serão mostrados os problemas das
redes sem fio. Isso para que nos capítulos de 5 a 8 sejam fornecidos os mais diversos métodos
de defesa. Finalmente, o capítulo 9 relatará um estudo de caso com o objetivo de analisar uma
boa arquitetura capaz de fornecer a segurança necessária às redes sem fio, embora haja alguns
problemas pelos quais serão discorridos nos capítulos 4 e 8.
2. Segurança de Redes
Diariamente são noticiados nos mais diversos meios de comunicação fatos
divulgando ataques a sistemas de segurança. Essa rotina mostra a eficiência de técnicas
utilizadas para cometer crimes virtuais e quão vulneráveis os usuários dependentes da
tecnologia se encontram.
Entretanto, a segurança pode combater os ataques na grande maioria dos ambientes.
Para que isso ocorra, deve-se tomar cuidados, tais como: não estabelecer conexão com quem
não se conhece, não aceitar nada sem garantia, não confiar em ninguém até se ter certeza de
que o mesmo é confiável, usar soluções consolidadas, não confiar naqueles com quem foi
estabelecida conexão a muito tempo. É válido ressaltar que não existe sistema completamente
seguro. Sempre haverá falhas ou brechas de segurança. Quanto menor o número de brechas
ou falhas, mais confiável será o ambiente [3].
Muitas vezes, ocorrem ataques que não são notáveis, como os spywares. Há também,
vírus que causam danos em menores proporções, um exemplo disso é um arquivo de texto
corrompido. Porém, a grande preocupação é combater ataques de grandes dimensões, tais
como inutilizar uma rede, corromper arquivos de um banco de dados, ou ainda, para o
funcionamento de um servidor. Outra abordagem importante em relação à segurança é o
perigo de focalizá-la em apenas um mecanismo como, por exemplo, autenticação ou
criptografia, apenas um não é suficiente e a junção dos mesmos trará melhores resultados.
Princípios de segurança são utilizados para proteção das redes, como conhecer a
origem/destino do tráfego de dados ou não começar uma transmissão sem ter certeza de que
se está conectado com o equipamento correto. Por exemplo, quando uma compra pela Internet
é realizada pode ocorrer de o comprador pagar pelo produto e não recebê-lo, ou ainda não
receber o produto correto. É necessário que o site fornecedor do serviço tenha credibilidade
no mercado que seja suficiente para que o cliente sinta-se seguro e realize a compra. O mesmo
ocorre em uma rede local, um dispositivo precisa conhecer e confiar no outro para começar
uma transação de dados. Portanto, em qualquer comunicação virtual sempre se deve ter
19
certeza de quem é o receptor. Com os novos estudos em segurança e análise das
vulnerabilidades é possível evitar ataques e fazer com que a rede seja mais confiável.
2.1. Princípios de segurança
Por serem alvos de inúmeros ataques, os usuários precisam proteger cada vez mais os
seus dados sigilosos, com isso fazem uso dos princípios de segurança; sendo definidos e
caracterizados como propriedades desejáveis para que se ocorra uma comunicação segura [5].
Embora seja recomendado o uso dos princípios de segurança descritos acima, algumas redes
fazem uso apenas de alguns deles, pois uma implementação rígida pode limitar a utilização da
rede a um ponto em que os usuários, clientes e, até mesmo, os administradores não consigam
acessar seus próprios recursos.
2.1.1. Autenticação
Verifica se o destino no qual está se trocando informações é realmente quem deveria
ser. No cotidiano as pessoas sempre usam diversos meios para se autenticarem. O contato
visual, por exemplo, é o principal meio que fornece a autenticidade ao ser humano.
Entretanto, sem o contato visual, torna mais difícil saber se uma ligação telefônica solicitando
a senha do banco, realmente foi originada pelo bancário. Este caso, entre outros, há de se
confirmar que a outra parte da relação realmente é quem alega ser.
2.1.2. Disponibilidade e Controle de Acesso
Quando um recurso é solicitado este deve ser obtido sem dificuldades objetivando,
também, prevenir que recursos fiquem indisponíveis. Portanto, um requisito fundamental para
ocorrer uma comunicação segura é que ela possa ocorrer normalmente e, ao mesmo tempo,
impedindo que intrusos usufruam do recurso dessa comunicação. O fator controle de acesso
também revela extrema necessidade, pois garante que usuários tenham permissão apenas onde
lhes foi concedida à permissão, obtendo-se acessos bem definidos.
20
2.1.3. Integridade e Não Repúdio
Visa manter os dados sem adulteração, ou seja, da mesma forma que os dados foram
enviados, devem ser recebidos. Portanto, a integridade pode ser oferecida através de somas de
verificação nos protocolos das camadas de transporte e enlace. Da mesma forma que a
confidencialidade, como será abordado posteriormente, a integridade também depende do
nível de segurança que o algoritmo de criptografia oferece.
2.1.4. Confidencialidade
Faz uso de técnicas para que o conteúdo da informação não seja acessado por
terceiros. Aparentemente é a resposta mais solicitada para uma comunicação segura.
Entretanto não é a única solução. Inúmeras empresas, instituições e, até mesmo, usuários
almejam que suas informações sejam confidenciais. Para isso, o texto deve ser cifrado de tal
forma que curiosos não consigam decifrar as mensagens.
2.2. Mecanismos de ataque
A princípio este poderia ser um tópico irrelevante, mas é plausível e correto conhecer
os mais diversos tipos de ataques, fazendo com que seja obtida maior eficiência ao combatêlos.
Têm-se vários tipos de hackers, há aqueles que invadem apenas por diversão ou
ainda, para se apropriarem de dados que não lhe pertencem [3]. Fazendo uma analogia com
uma pirâmide, têm-se três camadas, onde o cume é a primeira camada e a base é a terceira
camada. Na base os atacantes não fazem uso de ferramentas sofisticadas, atacam redes sem
nenhuma proteção e por não haver proteção, geralmente, não há dados confidenciais para se
apropriarem, a não ser o link de acesso à Internet para propósitos ilegais. Na segunda camada
de ataques, visa-se o lucro ou vingança. Quando o objetivo do ataque é o lucro, há a
apropriação indevida de senhas ou qualquer outra informação que pode ser vendida ou
utilizada de forma a gerar retorno financeiro, como por exemplo, senhas bancárias ou ainda,
softwares exclusivos. Ataque por motivo de vingança ocorre com o objetivo de danificar a
rede ou sistema, são então, os ditos ativos, que comprometem o funcionamento. A primeira
21
camada se destaca por ser aquela onde estão os hackers mais sofisticados, que fazem uso de
ferramentas poderosas. O intuito dessas pessoas não é invadir instituições e, sim descobrir
quais as falhas dos mecanismos de segurança para que sejam divulgados e, assim gerar
métodos mais eficazes.
Existem dois grandes grupos que caracterizam o ataque: ativos e passivos. Os
ataques ativos são aqueles que interferem diretamente na rede em questão, deixando as
conseqüências do ataque. Já os ataques passivos passam despercebidos, geralmente, possuem
objetivos de obtenção de informações. Há vários tipos de ataques, mas todos eles são
originados dos quatro listados a seguir.
2.2.1. Interrupção
Impede que os dados cheguem ao destino, gerando obstruções de acesso, desta forma
ataca a disponibilidade do sistema. É classificado como ataque ativo, pois há interferência
direta na rede.
Figura 1 – Ataque por Interrupção [11]
Um exemplo é o Denial of Service (DoS), que visa impedir a operação da rede,
deixando-a indisponível. Pode ser realizado contra um equipamento específico, fazendo com
que este seja impossibilitado de comunicar-se com os demais integrantes da rede. O ataque
também pode ser realizado contra toda a rede, fazendo-a parar de funcionar [1].
2.2.2. Interceptação
Realiza apenas a captação dos dados que trafegam na rede, atacando assim, a
confidencialidade da informação. É um ataque passivo, porque só terão acessado os dados
confidenciais sem que seja notado.
22
Um exemplo é a espionagem. O objetivo da espionagem varia bastante de acordo
com o espião, por exemplo, ele pode invadir uma máquina de um determinado usuário para
roubar a senha bancária do mesmo e depois realizar saques, transferências e outras transações
bancárias, ou ainda, invadir a rede de uma empresa para descobrir informações confidenciais
e depois vendê-la para a empresa concorrente [3].
Interceptador
Figura 2 – Ataque por Interceptação [11]
2.2.3. Modificação
Altera as informações em trânsito sem detecção, atacando assim, a integridade. Tipo
de ataque ativo por interferir no funcionamento da rede. Um exemplo é o Man-in-the-middle.
Esse tipo de ataque é usado para modificar mensagens em trânsito sem detecção. Quando há
dois dispositivos trocando mensagens, o atacante se passa por aquele que irá responder,
modifica a mensagem e envia para o receptor. Ou seja, se existem dois dispositivos, A e B,
trocando mensagens entre si, onde A envia uma mensagem para B e aguarda a resposta, o
atacante C intercepta esta comunicação, finge ser B e responde para A com uma mensagem
adulterada.
B
A
C
Figura 3 – Ataque por Modificação [11]
Desta forma a troca de informação continua, porém A não percebe que é um atacante
23
estabelecendo uma comunicação [3].
2.2.4. Mascaramento
Na comunicação entre dois dispositivos, A e B, um atacante C se passa por um dos
dois dispositivos, sendo que o outro não percebe a diferença. Mesmo que o gerente da rede
faça uma varredura buscando usuários não autorizados, o atacante não será identificado, pois
está ser passando por um usuário autorizado. Desta forma, o ataque é feito à autenticidade e é
um ataque passivo.
Figura 4 – Ataque por Mascaramento [11]
Exemplo desse tipo de ataque é o MAC Spoofing. O invasor consegue capturar o
endereço MAC válido e troca seu endereço MAC por este que foi capturado. Desta forma, o
atacante acessa a rede passando-se por uma pessoa autorizada [1].
2.3. Mecanismos de defesa
A partir do momento que os métodos de ataques estão bem fundamentados e
entendidos, torna-se mais fácil discorrer sobre os métodos de defesa, pois como dito
anteriormente, para saber defender é preciso saber como o ataque é executado.
Existem vários métodos de defesa, mas não é recomendado o uso de apenas um, em
função de que um método de defesa não protege de todos os tipos de ataques. Em função dos
objetivos propostos por este trabalho os métodos abordados serão criptografia e autenticação e
firewall. Embora sejam apenas três, essas ferramentas são suficientes para garantir os
princípios de segurança se forem bem implementados.
24
2.3.1 Criptografia
Segundo o dicionário Aurélio, criptografia é a arte de escrever em cifra ou em código
(1986). É geralmente entendida como sendo o estudo dos princípios e técnicas pela qual a
informação pode ser transformada de sua forma original para outra ilegível. O objetivo
principal é garantir a segurança dos dados que trafegam pela rede, impedindo que pessoas não
autorizadas leiam as mensagens transmitidas. Essa proteção garante a confidencialidade,
autenticidade e integridade.
No processo de criptografia um emissor gera um texto original, utiliza-se então, uma
chave e um algoritmo de cifragem, gerando um texto cifrado [11]. O texto cifrado é
compreensível apenas àqueles que possuem permissão para lê-lo, como observado na Figura
5.
Texto
Plano
Processo de
Cifragem
Processo de
Decifragem
Texto
Plano
Texto
Cifrado
Figura 5 – Processo de cifragem e decifragem [11]
As chaves criptográficas são conjuntos de bits combinados e, quanto maior for essa
combinação, maior a segurança. Há dois tipos de criptografia que dependem dos tipos de
chaves utilizadas, são elas: criptografia simétrica e criptografia assimétrica.
2.3.1.1. Criptografia Simétrica
Também chamada de criptografia de chave única ou ainda, criptografia de chave
secreta tem como base o uso da mesma chave para os interlocutores. A chave utilizada entre
as partes é chamada de chave privada, esta deve trafegar em um canal seguro, como ilustrado
na Figura 6.
Uma desvantagem desse tipo de criptografia é o uso de apenas uma chave para os
envolvidos, caso haja um número muito grande de pessoas querendo se comunicar, serão
necessárias inúmeras chaves, dificultando assim, a gerência das mesmas.
25
Chave
Compartilhada
Chave
Compartilhada
Texto
Plano
Texto
Plano
Texto
Cifrado
Decifragem
Cifragem
Figura 6 – Criptografia Simétrica [11]
2.3.1.2. Criptografia Assimétrica
A criptografia de assimétrica ou criptografia de chave pública, ilustrado na Figura 7,
é um método de criptografia que utiliza um par de chaves: uma chave pública e outra chave
privada. A chave pública é conhecida por todos, enquanto a chave privada deve ser conhecida
apenas pelo seu dono.
Uma mensagem cifrada com a chave pública pode somente ser decifrada pela sua
chave privada correspondente. Se um emissor fizer uso de uma chave privada para cifrar a
mensagem, qualquer um que conhecer a chave pública poderá decifrá-la.
Chave
Privada
Chave Pública
do Receptor
Texto
Plano
Texto
Plano
Texto
Cifrado
Cifragem
Decifragem
Figura 7 – Criptografia Assimétrica [11]
2.3.2. Autenticação
Autenticação, também, é outro método de defesa usado freqüentemente, pois tem a
26
finalidade de garantir a autenticidade na transação das informações, ou seja, quando há um
diálogo, seja ele qual for, ambas as partes devem ter certeza da veracidade uma da outra [5].
Assim, a autenticação pode ser entendida como uma ação que estabelece ou confirma algo (ou
alguém) como autêntico.
Para que ocorra autenticação, o processo deve ter o auxílio de um protocolo de
autenticação, responsável pela troca das mensagens e dos dados. Esse protocolo geralmente é
executado anteriormente a qualquer outro protocolo. Portanto ele estabelece às partes suas
identidades na forma mais confiável possível. Somente depois que o processo de autenticação
está concluído que os autenticados darão início às outras transações. Um dos protocolos mais
utilizado para executar esse método de defesa é o RADIUS, no qual será tratado com detalhes
no capítulo 8.
Como ocorre na maioria dos métodos de defesa, a autenticação tem suas
desvantagens. O principal transtorno dessa abordagem é que ela oferece apenas autenticidade,
tornando uma implementação de segurança completamente vulnerável a ataques de
interrupção, interceptação e modificação. Dessa forma, é necessário que o mecanismo de
autenticação seja implementado junto a outros métodos como a criptografia.
2.3.2.1. Autenticação versus Autorização
Algumas pessoas confundem autenticação com autorização. A autenticação
determina se o indivíduo está ou não se comunicando com uma aplicação específica. A
autorização se preocupa com o que essa aplicação ou usuário tem permissão de fazer [8]. Um
exemplo de aplicação de autenticação e autorização está nas redes sem fio. Quando o
dispositivo de um usuário se identifica, o servidor de autenticação procede da seguinte forma:
1. Essa identificação realmente é usada para pessoa quem aparenta ser?
2. Caso realmente seja, tem permissão para acessar a WLAN?
Estas perguntas tratam da autenticação e autorização, respectivamente. Assim que as
perguntas são respondidas, é que a ação solicitada poderá ser executada. Deve-se observar que
a primeira pergunta é mais importante, pois, a partir do momento que se tem posse da
identificação, a autorização torna-se uma tarefa mais simples. Por essa razão, a autenticação
terá mais relevância neste trabalho. Mais detalhes sobre esse assunto serão abordados no
27
capítulo 6.
2.3.2.2. Tipos de Autenticação
A forma mais comum de promover a segurança da rede é utilizar autenticação do
usuário e/ou do equipamento que deseja usufruir os recursos oferecidos [7]. Dessa forma, a
maioria dos métodos de autenticação se baseia em senhas fixas, mas existem outras opções
como senhas dinâmicas, associação dos endereços MAC dos equipamentos e certificados
digitais; cada um deles com suas vantagens e desvantagens. No capítulo 6 também serão
tratados tipos de autenticação, entretanto serão técnicas voltadas às redes sem fio.
•
Senhas fixas
São as mais utilizadas por serem de implementação simples, além de ser um
mecanismo que o usuário está mais adaptado devido à grande utilização como, por exemplo,
autenticação de usuários em serviços comerciais de acesso à Internet e também em redes
locais. A desvantagem mais relevante nesse tipo de autenticação é o fato de ser susceptível à
interceptação, principalmente nas redes sem fio, onde as informações, simplesmente, trafegam
pelo ar, podendo ser capturadas e utilizadas por um atacante.
•
Senhas dinâmicas (one time password)
Em decorrência dos grandes problemas ocorridos com as senhas fixas, surgem as
dinâmicas. Com uma abordagem semelhante ao método anterior, as senhas dinâmicas se
caracterizam pelo fato de serem trocadas em um tempo pré-determinado. Por exemplo, de
cinco em cinco minutos a senha será renovada. Esse processo dificulta a ação do intruso; de
forma que, quando ele decifrar, a senha já terá mudado.
•
Associação por endereço MAC
Toda interface de rede tem um código (endereço MAC) exclusivo, registrado no
IEEE e tem como objetivo identificar o dispositivo, já que é único [1]. Com o endereço MAC
é possível fazer a identificação do dispositivo na rede de forma eficiente, independente do
modelo ou fabricante. Dessa forma, apenas os endereços MAC registrados na rede, poderão
ser autenticados. A desvantagem desse método é que o atacante pode utilizar ferramentas que
28
capturam o endereço MAC registrado e se identificar com esse endereço capturado.
•
Certificado digital
É um arquivo assinado eletronicamente por uma entidade confiável, chamada
Autoridade Certificadora (AC) [11] e tem como objetivo associar a chave pública a uma
pessoa ou entidade, servindo, assim, como um mecanismo para a divulgação da chave única.
Qualquer entidade que conheça a chave pública da AC pode examinar o conteúdo e confirmar
sua autenticidade de um certificado emitido por essa autoridade, uma vez que a AC assina os
certificados com a sua chave privada.
2.3.2. Firewall
Em uma Rede de Computadores, quando o tráfego entra ou sai de uma rede, ele
passa por uma verificação de segurança; podendo ser aceitado, rejeitado e/ou transmitido [5].
A entidade que faz isso é um dispositivo conhecido como firewall.
Sua tradução literal já caracteriza bem essa abordagem: Parede a Prova de Fogo. Este
nome imponente esclarece sobre um dos mecanismos mais utilizados no que diz respeito à
segurança de redes. Fornecendo o controle de acesso necessário a determinado ambiente, a
principal finalidade do firewall é fazer uma espécie de “cerca virtual” à rede fazendo com que
os pacotes, dados e informações da rede entrem e saem, se autorizados, apenas quando o
firewall permitir. Assim, essa ferramenta filtra quem pode entrar e quem pode sair da rede.
Com a possibilidade de ser configurado em uma máquina específica como um
servidor ou, até mesmo, roteador, o firewall geralmente é localizado na extremidade da rede,
de acordo com a figura abaixo.
29
Rede Interna
Firewall
Internet
Figura 8 – Exemplo de um Firewall [11]
Um firewall é, na realidade, uma poderosa ferramenta integrada ao roteador
interligando duas redes e opera analisando cabeçalhos IP que passam por ele [10]. Ao analisar
os pacotes o firewall fica conhecendo os protocolos usados e as portas TCP e UDP do pacote,
possibilitando a análise do cabeçalho IP/TPC/UDP em questão. Na seqüência, compara o
pacote a uma tabela de regras, configurada pelo administrador, analisando se o pacote pode
prosseguir ou não. Se o pacote tiver permissão, o firewall permite o roteamento; caso
contrário, ou seja, se o pacote não for adaptado a nenhuma regra presente na tabela, ele poderá
ser recusado ou descartado. A diferença entre essas duas possibilidades é que na primeira, o
firewall comunica ao remetente que a comunicação foi bloqueada. No segundo caso, essa
comunicação não existe; o pacote é ignorado pelo firewall e, em conseqüência disso, perdido.
Todas essas configurações são determinadas pelo administrador da rede.
Ainda que o firewall esteja perfeitamente configurado, existem várias brechas em sua
segurança [8]. Se um firewall estiver configurado para permitir apenas a entrada de pacotes de
redes específicas, um intruso de fora pode inserir falsos endereços de origem para ultrapassar
essa verificação. Se o usuário quer mandar arquivos não permitidos de dentro para fora da
rede, ou seja, enganar o firewall, basta scanear ou tirar fotos dos arquivos e salvá-los com
extensão JPEG. Esse é um dos principais tipos de ataques contra firewalls: de dentro pra fora
da rede, executado por funcionários insatisfeitos.
3. Redes sem fio IEEE 802.11
Cada vez mais as redes sem fio estão se tornado uma ferramenta prática e essencial
no cotidiano das pessoas. A praticidade de se locomover, acessar Internet e não precisar estar
conectado por um meio físico ao mesmo tempo, tem atraído muitas pessoas para essa nova
tecnologia. Wi-Fi LANs (Wireless Local Area Network) já é uma alternativa para muitas
instituições que possuem suas sedes em prédios, restaurantes, escolas, aeroportos e várias
outras localidades, pois sem a necessidade de obras para instalação de cabos e remanejamento
do ponto de acesso quando necessário, as redes sem fio ganham espaço no mercado e passam
a ser uma ótima alternativa para aqueles que buscam praticidade e eficiência na comunicação.
Hoje, quando se fala em redes sem fio, é equivalente dizer padrão IEEE 802.11. Esse
fato ocorreu pois no início dessa tecnologia, nada era padronizado, gerando incompatibilidade
entre os produtos [8]. Com isso, um dispositivo de determinado fabricante não era
reconhecido pelo dispositivo de outro fabricante. Para que houvesse a compatibilidade entre
os equipamentos de diferentes indústrias foi necessário criar um padrão. Assim o IEEE –
Institute of Eletrical and Eletronics Engineers instituiu o novo padrão do mercado: IEEE
802.11.
3.1. Fundamentos e Arquitetura
Para entendimento das redes sem fio, é necessário conhecer seus componentes
básicos, funcionamento e estrutura. Os componentes básicos que serão abordados nesse
trabalho são pontos de acesso, sistemas de distribuição, meios sem fio e estações.
3.1.1. Equipamentos
A Figura 9 ilustra a estrutura de uma WLAN com os seus componentes básicos, sendo que
31
estes serão descritos a seguir.
Sistema de Distribuição
Meio sem Fio
Ponto de Acesso
Estação
Figura 9 – Componentes de um rede sem fio [1]
3.1.1.1. Estação-base
Nas LANs padrão IEEE 802.11 as estações-base são representadas pelo Access Point
(AP); dispositivos que possuem o objetivo de gerenciar a rede sem fio, onde os dados são
convertidos de um meio não guiado para meio guiado e é responsável pela coordenação da
transmissão dos dispositivos localizados em sua área de abrangência. Neste caso, pode-se
concluir que o dispositivo está associado à estação-base e a utiliza para fazer comunicação
com a rede na qual o AP está associado [5].
3.1.1.2. Meio sem fio
Uma estação sem fio se comunica com a estação-base ou com outra estação através
do meio, que pode ser o infravermelho, o microondas e rádio. Essas tecnologias que
promovem a comunicação em um meio sem fio transmitem os dados em taxas e distâncias
distintas. Os meios sem fio são utilizados para realizar a comunicação entre redes distintas,
mas também são usadas para interligar dentro de uma mesma rede, roteadores, comutadores e
outros dispositivos de uma rede. [5]
3.1.1.3. Estações
São equipamentos que utilizam a rede para comunicação. Essas estações, em um
32
ambiente de redes sem fio, geralmente, são equipamentos que possuem mobilidade, tais como
notebooks e palmtops, porém podem ser computadores pessoais, que fazem parte de uma rede
sem fio, simplesmente, pela facilidade do não uso de uma estrutura cabeada.
3.1.2. Canais e associação
Antes de começar a troca de informações entre a estação sem fio e a estação-base, é
necessário que estes se associem. Para isto, o administrador da rede ao instalar o AP, precisa
designar o Identificador de Conjunto de Serviços (Service Set Identifier - SSID) e também o
número do canal.
O SSID permite que os administradores designem um identificador para o conjunto de
serviço, esta string é a mesma para todas as áreas de serviço básico - BSA- que compõem uma
área de serviço estendido, também conhecido por ser o nome da rede. O comprimento do
SSID pode variar entre 0 e 32 bytes. Um caso especial é quando o tamanho da string é zero,
sendo denominado de broadcast SSID, e é utilizado somente para quadros de solicitação de
sondagem quando uma estação tenta descobrir todas as redes 802.11 em sua área de
abrangência [4].
Todos os padrões 802.11 fazem associação, porém para o esclarecimento de como
ocorre esta associação, será utilizado o padrão 802.11b. Neste padrão a faixa de freqüência
varia entre 2,4GHz e 2,485GHz. Tem-se uma variação de 85MHz entre a mínima e a máxima
freqüência, esta variação permite a utilização de 11 canais que se sobrepõem parcialmente.
Porém não se utiliza canais que se sobrepõem, os únicos casos em que isto não ocorre é nos
canais 1, 6 e 11, pois não há sobreposição quando os canais estão separados por outros quatro
ou mais canais. Isso significa que o administrador pode criar uma WLAN com taxa de
transmissão de 33Mbps instalando três APs do padrão 802.11b na mesma localização física,
designando os canais citados anteriormente para os APs e interconectando cada um desses
APs com um comutador [5].
Designado o SSID e o canal para transmissão de dados é preciso que o AP se associe
a uma estação sem fio para que a comunicação seja realizada. Quando o AP deseja se
associar, este envia quadros de sinalização que possuem seu SSID e endereço MAC. A estação
sem fio sabendo que o AP deseja se associar, faz uma varredura dos 11 canais em busca dos
quadros de sinalização dos APs que estiverem em sua área de abrangência. Por meio destes
33
quadros de sinalização enviados pelo AP, a estação seleciona um destes pontos de acesso para
se associar.
Após a estação sem fio ter escolhido qual AP deseja associar-se, estes se comunicam
usando o protocolo de associação 802.11 e, se o resultado deste diálogo for eficiente, a
estação sem fio se associa ao AP selecionado. Quando se fala que uma estação se associou,
significa que esta faz parte da sub-rede à qual pertence o ponto de acesso selecionado.
Concluída esta etapa de associação, a estação sem fio envia uma mensagem de descoberta
para a sub-rede através do AP, para que se obtenha o endereço IP da sub-rede ao qual a
estação pertence.
Possivelmente, depois de realizada a associação, a estação sem fio terá que se
autenticar diante do AP. Há varias formas de autenticação, as abordagens utilizadas é a
autenticação baseada no endereço MAC ou ainda o uso de usuário e senha. Normalmente o
ponto de acesso se comunica com o servidor de autenticação através de protocolos, como por
exemplo, o Radius, que será abordado neste trabalho posteriormente [5].
3.1.3. Tipos de redes
A comunicação entre duas ou mais estações de trabalho, as chamadas redes, pode
ocorrer com a comunicação entre as estações sem que haja nenhum elemento que gerencie
essa troca de informação, ou ainda, haver esse elemento que gerencie a comunicação dessa
rede. Esse grupo de estações que se comunicam, são chamados de Conjunto de Serviço
Básico (BSS – Basic Service Set), e essa comunicação é realizada dentro de uma Área de
Serviço Básico (BSA – Basic Service Area). Os tipos de redes sem fio que existem são BSS
Independentes e BSS Infra - Estruturados, mas há ainda a junção de várias redes, que será
abordado logo a seguir.
3.1.3.1. BSS Independentes
Também chamadas de redes IBSS (Independent BSS) ou simplesmente Ad-hoc,
nessas redes as estações se comunicam diretamente entre si com nenhum controle central.
Geralmente, um BSS independente é composto por uma quantidade pequena de estações e é
necessário que os equipamentos estejam próximos uns dos outros, pois se trata de uma
abordagem de pequeno alcance e sem infra-estrutura a fim de concretizar a comunicação [5].
34
Devido a esses fatores, são estruturas utilizadas freqüentemente. Entretanto,
justamente pelo fato da ausência de um concentrador, problemas como segurança e
administração da rede ficam comprometidos [7].
3.1.3.2. BSS Infra-estruturados
Ao contrário do BSS Independente, esta abordagem é caracterizada pela presença de
um concentrador, geralmente um (AP), já que se trata de um ambiente com maior área de
abrangência. Portanto, BSS Infra-Estruturados são ideais para redes de grandes corporações,
pois os dados tornam-se altamente gerenciáveis, facilitando a configuração e administração da
rede.
Em conseqüência dos fatores descritos anteriormente, esta abordagem possui
técnicas proporcionando configurações de segurança; ou seja; autorização, criptografia e
autenticação são características implementáveis nos BSS Infra-estruturados [7]. A Figura 10
ilustra BSS Independente e BSS Infra-estruturado.
Figura 10 – BSS Independente e Infra-estruturados, respectivamente [4]
3.1.3.3. BSS Estendido
É um conjunto de vários BSS Infra-Estruturados também conhecido por ESS. Esse
tipo de rede caracteriza-se pela associação de vários APs, intencional ou acidentalmente.
Quando se trata de uma associação intencional, os APs das várias redes envolvidas estão
interligados entre si por uma meio cabeado, a fim de redirecionar todo tráfego para um
backbone [4]. Já uma associação acidental, o AP de uma determinada rede recebe sinal de
outra que está localizada nas proximidades [5].
35
Figura 11 – BSS Estendido [4]
A finalidade da implementação de um ESS é fazer com que o alcance da rede sem fio
atinja maiores extensões, já que área de abrangência de um AP unido com a de outros,
aumenta a área de abrangência.
3.2. 802.11 versus Ethernet
Neste capítulo, até o momento, foram demonstrados os principais conceitos e
fundamentos básicos do IEEE 802.11, que são primordiais para o entendimento do padrão
como um todo. Para facilitar e aprofundar o entendimento das redes sem fio é de fundamental
importância demonstrar as diferenças entre os padrões 802.11 e Ethernet, já que são padrões
semelhantes. Algumas características das redes sem fio são comuns às das redes cabeadas, as
diferenças entre estas serão analisadas e discutidas em seguida. Mais a diante, baseado nessas
diferenças, o padrão IEEE 802.11 será detalhado de maneira específica em suas camadas
diferenciais.
Pelo nome das tecnologias, é intuitivo dar início ao tratamento de diferenças entre as
redes cabeadas e sem fio: o meio de comunicação, ou seja, a camada física. O padrão Ethernet
utiliza os tradicionais cabos metálicos, já o 802.11 não. Ao considerar uma LAN cabeada
36
convencional, substituir as placas Ethernet por placas com antenas sem fio e o switch (ou hub)
por um ponto de acesso é o suficiente para notar que, da camada de rede até a camada de
aplicação, praticamente nada irá mudar de uma rede cabeada para não cabeada [5]. Portanto, o
que realmente diferencia o padrão Ethernet do IEEE 802.11 é a camada física e de enlace,
tornando sugestiva uma ênfase no estudo destas camadas. A Figura 12 ilustra as diferenças
em nível de camadas.
Figura 12 – Ethernet versus 802.11 a nível de camadas [1]
Em relação à pilha de protocolos, toda a família 802 tem características em comum,
inclusive 802.11 e Ethernet [8]. O que determina a distinção do 802.11 é a camada de enlace,
que é subdividida em subcamada MAC (Medium Access Control – Controle de Acesso ao
Meio) e, logo acima, subcamada LLC (Logical Link Control – Controle de Enlace Lógico). Já
na camada física, o padrão 802.11 especifica seis técnicas de transmissão ilustradas na Figura
13, nos quais serão explicados no tópico 3.2.1. Apesar das grandes distinções nas camadas de
níveis mais baixas, os principais problemas (e diferenças também) do 802.11 estão
concentrados no nível de enlace.
Várias diferenças importantes existem entre um enlace com fio e um enlace sem fio
como atenuação do sinal [5], no qual ondas eletromagnéticas tornam-se dispersas à medida
que se afastam da fonte geradora, ou seja, quanto mais distante da origem, mais atenuação a
onda sofrerá. O próprio ar é causador de atenuações, dependendo de sua umidade, por
37
exemplo, mas, quando essas ondas precisam atravessar paredes e divisórias, a perda de
potência do sinal pode ser significativa.
Camadas
superiores
Controle de Enlace Lógico
Camada de
enlace de
dados
Subcamada MAC
802.11 Infra
vermelho
802.11
FHSS
802.11
DSSS
802.11
OFDM
802.11 HRDSSS
802.11
OFDM
Camada fícica
Figura 13 – Parte da pilha de protocolos do 802.11 [8]
Além da atenuação de sinal, há interferência de outras fontes onde equipamentos
eletro-eletrônicos que emitem ondas eletromagnéticas na faixa de 2,4 GHz como telefone sem
fio, forno de microondas e equipamentos hospitalares, podem causar danos nos sinais
emitidos, já que alguns dispositivos 802.11 atuam nessa faixa de freqüência. Dispositivos ao
alcance dessas irradiações mútuas não operarão corretamente; nem o telefone sem fio nem a
estação base. Portanto, qualquer ruído eletromagnético localizado no ambiente, pode causar
interferência.
Por fim, tem-se a propagação em percursos múltiplos. Freqüentemente as ondas
transmitidas podem sofrer desvios, em obstáculos ou no solo, que causam seu espalhamento.
Isto torna a transmissão menos eficiente, promovendo a chegada das reflexões ao receptor de
forma desordenada, com diferentes atrasos conforme o comprimento do caminho percorrido.
Caso os obstáculos estejam em movimento, os caminhos das ondas refletidas variam no
tempo, prejudicando ainda mais o desempenho.
Portanto, quanto mais obstáculos o ambiente possuir, maior será a degradação do
sinal, menor será o alcance atingido pelo mesmo e maior deverá ser a potência de sinal
originado na estação-base. Todos esses fatores discutidos anteriormente evidenciam que erros
de transmissões nos enlaces sem fio são muito mais freqüentes do que nos enlaces com fio.
Em função disso, os protocolos do padrão 802.11 são projetados a tratar correção de erros
38
com maior eficiência; além da detecção do erro eles deverão ser capazes de retransmitir
quadros corrompidos [5].
Outro fator relevante nas redes sem fio são as mensagens de broadcast. Apesar de ser
um processo comum e simples nas redes cabeadas, não pode ser considerado da mesma forma
nas redes 802.11. Problemas tais como terminal oculto e desvanecimento causam transtornos
e estão presentes na maioria das redes sem fio. O terminal oculto é caracterizado quando, em
determinado ambiente, entre três equipamentos A, B e C; A e C não se “enxergam” enquanto
B pode se comunicar tanto A como C. A Figura 14 ilustra o problema do terminal oculto.
Adicionalmente, o desvanecimento do sinal de interesse favorece a recepção de sinais
interferentes e, possivelmente, colisão. Esses problemas de terminal oculto e de
desvanecimento tornam o acesso múltiplo em redes sem fio bem mais complexo que em redes
cabeadas.
Figura 14 – Problema do Terminal Oculto [5]
3.2.1 Camada Física
Em 1997, o padrão 802.11 especificou três técnicas de transmissão para a camada
física. Uma delas é o infravermelho, semelhante à tecnologia utilizada nos controles remotos
de televisores. As outras duas tecnologias, FHSS e DSSS, utilizam ondas de rádio a 2,4 GHz,
freqüência que não exige licenciamento para ser implantada. Equipamentos eletrônicos
domésticos como telefone sem fio, microondas e controle remoto de portão também atuam
nessa faixa de freqüência, podendo gerar conflitos quando for utilizada alta potência. Em
1999, a fim de alcançar maior largura de banda, foram criadas outras duas técnicas: OFDM,
HR-DSSS [9].
Cada uma dessas técnicas se difere na tecnologia utilizada e nas taxas de transmissão
39
que podem ser alcançadas; porém todas elas têm o objetivo de fornecer à subcamada MAC os
quadros de uma estação para outra. A seguir será descrita, de maneira geral, cada uma dessas
técnicas.
3.2.1.1. Infravermelho
Como dito anteriormente, o infravermelho é uma técnica de transmissão entre
equipamentos sem fio no qual é utilizada uma tecnologia semelhante aos controles remotos de
TV. Portanto, da mesma forma que estes controles, os sinais de infravermelho não atravessam
paredes permitindo com que, em ambientes que necessitam de dispositivos separados por
paredes, não haja presença de conflitos.
O infravermelho opera com taxas de 1 Mbps e 2 Mbps; os sinais recebidos são
facilmente distorcidos pela luz solar. Esses, especialmente as baixas taxas, são os principais
fatores que fizeram com que o infravermelho caísse em desuso [9].
3.2.1.2. FHSS
Diferentemente do Infravermelho, o FHSS (Frequency Hopping Spread Spectrum Espectro de Dispersão de Saltos de Freqüência) utiliza transmissões por rádio ocupando a
faixa de freqüência de 2,4 GHz que é dividida em 79 canais, cada um com 1 MHz de largura.
A principal característica do FHSS é o gerador de números aleatórios usado para produzir
uma seqüência de saltos entre os canais, ou seja, de maneira aleatória, o canal usado é alterado
automaticamente por todos os dispositivos presentes na rede [9].
Essas mudanças são
ajustadas para ocorrerem a cada 100 ou 400 ms.
Operando dessa forma, esta técnica possui vantagens como oferecer relativa
segurança, pois, o atacante não entrará no sistema se não souber a seqüência na qual são
transmitidos os canais. Outra vantagem é a não interferência de ondas em duas redes distintas
com a mesma área de abrangência; os mesmos canais terão uma possibilidade extremamente
pequena de serem gerados no mesmo instante e, caso afirmativo, ocorrerá interferência apenas
durante os 100 ou 400 ms configurados [10]. Isso a torna bastante popular na interligação
entre edifícios. E em decorrência da freqüente alternância de canais, a principal desvantagem
do FHSS é a baixa velocidade; em torno de 1 ou 2 Mbps.
40
3.2.1.3. DSSS
O DSSS (Direct Sequence Spread Spectrum – Espalhamento Espectral de Seqüência
Direta) trabalha com um padrão denominado chip ou código de chip, que funciona gerando
uma seqüência de bits redundantes, para cada bit transmitido, permitindo aos receptores a
filtragem de sinais não padronizados, como ruídos e interferências [1].
Esta técnica é incompatível com a FHSS, uma antena FHSS não se comunicará com
uma antena DSSS. Devido à troca de canais ser feita de forma seqüencial, a grande vantagem
do DSSS em relação ao FHSS é a velocidade; geralmente de 5,5 a 11 Mbps. A forma
seqüencial de trocar os canais dá origem à desvantagem do DSSS: a segurança; afinal, não há
grandes dificuldades em capturar os dados conhecendo a seqüência dos canais [10].
3.2.1.4. OFDM
Sendo, de fato, a primeira técnica de alta velocidade, a técnica OFDM (Orthogonal
Frequency Division Multplexing – Multiplexação Ortogonal por Divisão de Freqüência) pode
alcançar até 54 Mbps na freqüência de 5 GHz, sendo dividida em 52 faixas: 48 para dados e 4
para sincronismo, semelhante ao ADSL. Apesar de ser uma forma de espectro de dispersão, é
considerada diferente do FHSS e DSSS, já que as transmissões estão presentes em várias
freqüências ao mesmo tempo.
3.2.2. Sub-camada MAC
Este é um dos principais tópicos do capítulo pois é na subcamada MAC da Camada
de Enlace que se encontra a principal distinção entre redes cabeadas e sem fio: o acesso ao
meio.
A partir do momento em que um dispositivo está associado a determinado AP,
certamente um processo de envio e recebimento de quadros de dados irá ocorrer. Como já foi
discutido no tópico 3.2, várias estações irão, no mínimo, tentar enviar estes quadros no
mesmo instante gerando; conseqüentemente; conflitos, colisões e perdas dos quadros.
Baseado no Ethernet, os projetistas do 802.11 padronizaram um protocolo de acesso
aleatório para as redes sem fio. Daí surgiu o CSMA/CA - Acesso Múltiplo por Detecção de
Portadora com Prevenção de Colisão. Do mesmo modo que o CSMA/CD do Ethernet, o
41
CSMA/CA também usa o acesso aleatório por detecção de portadora, ou seja, antes de
transmitir, o dispositivo verifica se o canal está livre. Caso o canal esteja ocupado, o
dispositivo não transmite.
Entretanto, diferenças entre CSMA/CD e CSMA/CA existem e são evidenciadas
devido à incapacidade do 802.11 de detectar colisões. Para que ocorra detecção de colisão, o
próprio sinal da estação deve ser capaz de transmitir e receber dados ao mesmo tempo. Essa
capacidade, a princípio, não é possível em dispositivos sem fio devido à perda do sinal. Para
reduzir essa perda, grandes investimentos deveriam ser aplicados aos equipamentos sem fio,
tornando-os economicamente inviáveis. Mesmo que não ocorra a redução da perda do sinal, o
problema do terminal escondido e o desvanecimento impossibilitariam a detecção de todas as
colisões [5]. Todos esses fatores foram cruciais para que o protocolo MAC 802.11
(CSMA/CA), ao invés de detecção de colisão, usasse técnicas de prevenção de colisão.
3.3. Extensões
O 802.11 foi o primeiro padrão desenvolvido para redes sem fio, especificamente em
1997. Esse tipo de rede, até então, trabalhavam com freqüência de banda de 2GHz e taxas de
transmissão de 1Mbps a 2Mbps. Posteriormente, foram criados ramificações deste padrão, são
eles: 802.11a, 802.11b, 802.11g e 802.11i [4].
3.3.1. 802.11a
Foi o segundo padrão desenvolvido (1999) , possibilitando um aumento da taxa de
transmissão para até 54Mbps. Esta rede opera na freqüência de 5 GHz e inicialmente suporta
64 utilizadores por ponto de acesso. Utiliza como mecanismo de modulação o OFDM [4].
3.3.2. 802.11b
Terceiro padrão criado, este alcança taxas de transmissão entre 5.5Mbps até 11 Mbps
e opera na freqüência de 2.4 GHz. Inicialmente suporta 32 utilizadores por ponto de acesso.
Um ponto negativo neste padrão é que pode haver interferência tanto na transmissão como na
recepção de sinais, pois a frequencia em que funciona é equivalentes aos telefones móveis,
fornos microondas e dispositivos Bluetooth. O aspecto positivo é o baixo preço dos seus
42
dispositivos, fazendo com que seja amplamente utilizado por provedores de Internet sem fio.
Utiliza o como método de modulação o DSSS.
3.3.3. 802.11g
Oferece uma velocidade de 54 Mbps e opera dentro da frequência de 2,4 GHz. Este
padrão é mais utilizado atualmente por fabricantes de equipamentos para redes sem fio. Uma
desvantagem é o fato de que pode haver incompatibilidade entre dispositivos de diferentes
fabricantes. A vantagem é a taxa de transmissão maior do que o padrão 802.11b . O
mecanismo de modulação é o OFDM.
3.3.4. 802.11i
Criado para aperfeiçoar as funções de segurança do protocolo 802.11 seus estudos
visam avaliar, principalmente, os seguintes protocolos de segurança: WEP (Wired Equivalent
Protocol ), TKIP (Temporal Key Integrity Protocol ), AES (Advanced Encryption Standard ) e
IEEE 802.1x para autenticação e segurança. O principal benefício do projeto do padrão
802.11i é sua extensibilidade permitida, porque se uma falha é descoberta numa técnica de
criptografia usada, o padrão permite facilmente a adição de uma nova técnica sem a
substituição do hardware.
4. Vulnerabilidades das Redes 802.11
Mesmo com toda praticidade, as redes sem fio podem se tornar em um dos maiores
vilões no universo da Tecnologia da Informação. Caso o administrador não esteja ciente das
vulnerabilidades das redes sem fio, certamente estará fadado a um ambiente completamente
inseguro e propício a invasões.
Como foi descrito nos capítulos anteriores, as redes sem fio são bem mais propícias a
ataques quando comparadas às cabeadas e, a fim de conter essa desvantagem, é de suma
importância conhecer detalhadamente as Vulnerabilidades das Redes sem Fio.
Portanto, este capítulo tem como finalidade, estruturar os principais riscos do padrão
IEEE 802.11; interligando introdução (capítulos 1, 2 e 3) ao desenvolvimento (capítulos 4 em
diante) do trabalho.
4.1. Análise das Vulnerabilidades 802.11
Também conhecidas como riscos [2], as vulnerabilidades das redes 802.11 podem ser
tratadas de maneiras diversificadas. Algumas delas se devem a mecanismos de defesa (nos
quais serão tratados nos próximos capítulos) ineficientes ou padrões de segurança
implementados erroneamente. Entretanto, a maioria das abordagens wireless são frágeis em
decorrência da configuração inadequada dos equipamentos utilizados.
Para que seja feito um estudo da análise das vulnerabilidades do 802.11 é necessário
conhecer os riscos nos quais determinada implementação está sujeita. Esses riscos são
classificados como internos e externos.
4.1.1. Riscos Internos
Não sendo necessária a ação direta de um atacante para expor a vulnerabilidade, os
riscos internos são efetivados, principalmente, por dispositivos mal configurados. A seguir
44
serão descritos alguns dos riscos internos.
4.1.1.1. WLANs Grampeáveis
São as implementações ausentes de configurações seguras, fazendo com que o SSID
seja enviado abertamente. Geralmente, esse tipo de implementação é efetuadas por leigos,
sem capacidade técnica que, motivados pela praticidade, se vêem aptos a efetivar a instalação
dos dispositivos. Nesse caso, todo e qualquer equipamento que, porventura, esteja na área de
cobertura, terá acesso à informações de rede.
4.1.1.2. Configurações Inseguras
Na maioria dos casos o administrador utiliza meios ineficientes e/ou incapazes de
proporcionar a devida segurança. Desta forma, implementações de segurança que, para o
administrador, aparentemente robustas e suficientes, na verdade não são. Seria como ter um
serviço de autenticação eficaz e bem implementado e, entretanto, não possuir a criptografia
adequada.
4.1.1.3. Associação Acidental
Por se tratar de dispositivos facilmente configuráveis e de difícil controle da área de
cobertura das redes, existe grande possibilidade de sinais pertencentes a dois ou mais pontos
de acesso, acidentalmente, efetuar intersecção entre si. Portanto, dispositivos são conectados
em redes desconhecidas sem o usuário perceber.
O principal fator que propicia o intercalamento das redes é o SSID, pois, em muitos
casos, a configuração padrão de fábrica (default) não é alterada pelo usuário. Isso tudo faz
com que o trabalho do invasor seja reduzido drasticamente.
4.1.2. Riscos Externos
Neste tipo de risco, existem ações diretas do atacante, ou seja, há a intenção de
45
provocar o ataque. O hacker procura os pontos vulneráveis da rede e se aproveita das mesmas
para efetivar a invasão.
4.1.2.1. Espionagem
Também chamado de Eavesdropping, esta vulnerabilidade é a porta de entrada para
diversos tipos de ataque, pois, a partir da análise e captura do tráfego da rede, o intruso
prepara-se para ataques mais sofisticados.
Em redes sem fio, esse risco torna-se ainda maior comparada às redes cabeadas,
devido ao meio de transmissão ser mais propício e, também, pelo fato de não ser necessário
estar conectado fisicamente à WLAN.
4.1.2.2. Roubo de Identidade
Caracterizado como uma das principais conseqüências da espionagem, no roubo de
identidade o hacker possui acesso às informações que trafegam pela rede e, a partir disto é
possível ter acesso à login e senhas para se passar por um usuário válido na rede.
4.2. Vulnerabilidades do WEP
WEP é um mecanismo de defesa responsável por criptografar as informações. Os
detalhes sobre WEP serão tratados no próximo capítulo. Um dos problemas relacionados a
este mecanismo, é o fato dele usar uma chave única chave estática, compartilhada entre todos
os dispositivos da rede e o Access point. Outra questão está no fato da distribuição destas
chaves serem feitas manualmente, tornando assim, inviável seu uso em redes de grande porte.
Porém, a maior vulnerabilidade do WEP está na utilização do algoritmo de
encriptação (RC4) e o vetor de inicialização (IV). O RC4 recebe os dados e, a partir deste,
gera um outro dado criptografado bem diferente do original, mas com o mesmo tamanho
facilitando, desta forma, o ataque, pois, o atacante saberá previamente o comprimento do dado
original.
O IV é um valor aleatório que possui 24 bits e é alterado a cada pacote enviado pelo
access point. Se a cada pacote enviado, um novo valor do IV for utilizado, é possível ter 17
46
milhões de valores distintos. Supondo um access point de 11Mbps, seria possível enviar até
700 pacotes por segundo; desta forma, em menos de 5 horas todas as possibilidades do IV se
esgotariam. Além disso, muitos sistemas após reiniciarem, usam o mesmo valor do IV, então
este continua a mesma seqüência para cada pacote, utilizada antes de reiniciar o sistema. Se
vinte dispositivos iniciarem seus sistemas ao mesmo tempo, todos começarão com o mesmo
valor do IV e permanecerão com a mesma seqüência. [3]. Desta forma o hacker pode realizar
ataques do tipo força bruta ou ataque de dicionário e descobrir a informação original.
4.3. Vulnerabilidades de Autenticação
A autenticação tem o auxílio de um protocolo de autenticação, que é responsável
pela troca das mensagens e dos dados entre dispositivos móveis e o ponto de acesso. Porém,
assim como outros métodos de defesa, este mecanismo possui pontos frágeis que devem ser
analisados para que não haja o comprometimento da segurança nas redes sem fio.
4.3.1. Vulnerabilidades da Autenticação de Sistema Aberto
Inicialmente, antes de qualquer configuração por parte do administrador, o AP opera
em modo aberto, ou seja, é permitida a entrada de qualquer usuário na rede sem a devida
verificação da identificação das estações [1]. As estações que desejam ser autenticadas na
rede precisam enviar o pedido de autenticação ao AP e este responde autorizando sua entrada.
Sendo assim, o AP não verifica a identidade do cliente e qualquer indivíduo pode associar-se
à rede.
Geralmente, esse método, que será tratado com mais detalhes no capítulo 6, pode ser
utilizado em pequenas redes domésticas nas quais não existam dados secretos como senhas de
banco sendo trafegados. Na verdade, essa abordagem é ausente de segurança não sendo
recomendada na maioria das implementações wireless.
4.3.2. Vulnerabilidades na Autenticação por SSID
Como visto na Seção 3.1.2, o SSID é o nome da rede ao qual pertence o AP. Nesse
tipo de autenticação, o SSID não fica disponível a todos os usuários que estejam na área de
47
cobertura da rede. Para que alguma estação se associe, é necessário conhecê-lo previamente.
Apesar de o usuário ter que conhecer SSID antecipadamente, não é prudente utilizálo sozinho, pois este não garante a segurança da rede em questão. Quando o usuário solicita a
autenticação, o pedido é enviado ao AP sem nenhuma proteção. Desta forma, um invasor que
estiver analisando o tráfego da rede, consegue obter o SSID válido e ter o acesso.
Entretanto, existe uma configuração no roteador wireless que pode ser feita a fim de
impedir o SSID de ser enviado livremente. Dessa forma, para se conectar na rede, apenas os
usuários que souberem o SSID terão acesso.
4.3.3. Vulnerabilidades por MAC
Nesse tipo de autenticação, o ponto de acesso possui uma lista de endereços MAC e,
terão acesso à rede apenas os dispositivos com o endereço MAC cadastrados no access point.
A princípio, esta forma de autenticação seria eficiente. Porém, o endereço MAC é
enviado do dispositivo para o ponto de acesso sem nenhuma proteção. Assim, o invasor
utilizará do mecanismo de mascaramento [1]. Como visto na Seção 2.2.4, no mascaramento o
atacante obtém algum endereço MAC válido, fará o uso deste endereço em seu dispositivo e
obterá acesso à rede facilmente. Modelos de autenticação mais eficientes serão tratados a
partir do capítulo 6.
4.3.4. Vulnerabilidades do RADIUS
O uso dos compartilhamentos secretos para prover funções de segurança básicas com
Radius têm causado muitas vulnerabilidades e, nesta sessão serão descritos o que causam as
fragilidades. Um dos primeiros problemas envolve os compartilhamentos secretos précompartilhados, pois estes são configurados manualmente no NAS e, como estes
equipamentos existem em grandes quantidades nas várias redes, os técnicos, muitas vezes, os
configuram com o mesmo compartilhamento secreto para evitar o trabalho de configurar cada
NAS com um compartilhamento secreto diferente [6].
Outra situação que expõe as falhas do Radius é a consulta dos compartilhamentos
secretos, onde o servidor Radius a fim de prevenir spoofing, usa o endereço IP de origem no
pacote UDP do Radius (ao invés do endereço IP NAS ou ID do atributo) para consultar os
48
compartilhamentos secretos. Isso acontece porque o ID do NAS é adicionado apenas como
atributo para solicitação de acesso e, isso pode causar problemas no caso do IP do NAS ser
alterado. Contudo, o NAS pode precisar obter seu endereço IP dinamicamente através do
DHCP e, isso ocorre em muitos pontos da WLAN. Porém, gerenciar pontos de uma rede sem
fio com grande quantidade de pontos de acesso sem DHCP causará problemas
administrativos.
Em relação ao atributo oculto, que prevê seletiva proteção à camada de aplicação, na
verdade não fornece qualquer proteção de segurança (autenticação ou encriptação) para as
mensagens RADIUS ou para os protocolos das camadas (UDP, IP), onde estas se encontram.
Isso significa que o endereço IP pode ser facilmente falsificado ou outros atributos poderiam
ser alterados [6].
4.4. Ataques Wireless
As redes sem fio necessitam de maior atenção em relação à segurança, pois o meio
em que os dados trafegam é aberto e qualquer indivíduo pode ter acesso. A maioria das
formas de ataques descritas no capítulo 2 são equivalentes tanto para arquiteturas 802.11
quanto para arquiteturas cabeadas, o que altera, geralmente, é a forma como a defesa será
realizada [3]. Um problema que o invasor terá que enfrentar caso queira atacar uma rede onde
foi implementada segurança são os dados criptografados e suas respectivas chaves.
O atacante precisa saber qual o algoritmo utilizado na criptografia dos dados, pois a
partir dessa informação é que o indivíduo irá buscar as falhas do algoritmo e decifrar o dado
original anterior à cifragem. Essa etapa é bastante pertinente, pois se as chaves não são
conhecidas, será impossível (ou pelo menos quase) ter acesso ao conteúdo original.
Uma maneira utilizada para atacar as chaves é baseada no cabeçalho dos protocolos
presentes no datagrama. O cabeçalho 802.11, por exemplo, não é cifrado, entretanto os dados
desse datagrama, que são os almejados pelo atacante, são criptografados. Considerando que,
grande parte do conteúdo do datagrama 802.11 é baseada no TCP/IP, o invasor poderá
deduzir alguns campos do datagrama e, consequentemente, obter a chave. Portanto, na prática,
os ataques às redes wireless se resumem em ataques de força bruta ou de dicionário [3].
49
4.4.1. Ataques de Força Bruta
Apesar de ser a forma mais utilizada pelos hackers, os ataques de força bruta são os
mais difíceis para obter as chaves, dependendo do tamanho das mesmas. Seu funcionamento é
relativamente simples: todas as possibilidades de chaves existentes são testadas [3]. No WEP,
por exemplo, é usado chaves de 40 bits, o que representa 550 bilhões de possibilidades
distintas de chaves. Supondo que um computador comum seja capaz de processar 100
operações (100 possibilidades de chaves) a cada 1µs, desta maneira, um invasor é capaz de
quebrar esta chave em, aproximadamente, uma hora e meia.
4.4.2. Ataques de Dicionário
São semelhantes ao anterior, todavia é mais eficiente, pois uma parte da chave já é
supostamente conhecida pelo atacante. Esse trabalho é feito eliminando, com auxílio de um
banco de dados, criado pelo próprio invasor, com as possibilidades menos prováveis. Uma
chave de 104 bits pode ser reduzida a 72, pois o atacante já conhece 32 bits. Entretanto, em
função de novos protocolos de segurança do IEEE 802.11, a maioria dos sistemas modernos
de segurança não é suscetível ao ataque de dicionário [3].
50
5. Criptografia
A partir desse capítulo, será iniciada uma nova e principal etapa do trabalho:
Segurança em Redes wireless. Portanto, serão tratados, neste capítulo, os principais
mecanismos de criptografia das redes 802.11: WEP (Wired Equivalent Privacy), WPA (Wi-Fi
Protect Access) e WPA2 (nova versão do WPA).
Uma forma de tratar as Vulnerabilidades das Redes sem fio é adaptá-las aos tipos
de ataques que existem atualmente [3]. No início da era das Redes de Computadores, a
preocupação estava na segurança física das redes. Abordagens recentes como o 802.11, estão
muito além de segurança física; sem desmerecê-la. Segurança hoje, especificamente em meios
sem fio, está intimamente relacionada com a facilidade de capturar ondas eletromagnéticas e
inimigos invisíveis.
Embora, a ênfase deste trabalho seja o 802.1x (que será tratado no capítulo 8), é de
fundamental importância que a criptografia seja abordada, já que é a principal forma de tornar
os mecanismos de autenticação mais robustos.
5.1. WEP (Wired Equivalent Privacy)
Primeiro método de segurança definido pelo padrão IEEE 802.11, este mecanismo
é utilizado a fim de propor a criptografia e autenticação dos dados que transitam pela rede.
Em seu projeto, o WEP baseou-se em alguns princípios relevantes para seu desenvolvimento,
tais como algoritmo adequado ao usuário, reconhecimento automático dos dispositivos na
área de cobertura do ponto de acesso, implementação em equipamentos comuns
(computadores pessoais) e de uso móvel [7].
No WEP é utilizado o algoritmo simétrico RC4, no qual será tratado com detalhes
brevemente, no qual utiliza duas chaves: uma dinâmica e outra estática, podendo ser de 40 ou
51
104 bits; além de uma chave dinâmica denominada Vetor de Inicialização (IV) possuindo 24
bits. Portanto, o WEP pode ter chaves de 64 a 128 bits nas quais são compartilhadas entre os
dispositivos e o ponto de acesso, sendo configuradas manualmente em cada um dos
equipamentos.
Outra característica relevante do WEP se dá ao fato de que todo pacote é tratado
como novo; ou seja, a criptografia desse mecanismo ocorre em todos os pacotes [3]. Com esta
funcionalidade, todos os pacotes serão criptografados, mesmo em caso de perda.
5.1.1. Chaves WEP
Há dois tipos de chaves no padrão WEP, as chaves padrão e as chaves que
mapeiam chaves. Estas chaves possuem comprimento fixo de 40 ou 104 bits; são estáticas, ou
seja, não há mudança em seu valor a não ser que haja uma reconfiguração; são chaves
compartilhadas, o AP e o dispositivo móvel possuem uma cópia desta mesma chave; e são
simétricas, a mesma chave usada para criptografar os dados, também é utilizada para decriptálos.
Estes dois tipos de chaves existentes no padrão WEP, possuem abordagens
distintas. A primeira delas está relacionada ao fato de que todos os dispositivos móveis e o AP
terão a mesma chave, chamados de chave padrão, vide Figura 15. Outra abordagem possível é
cada dispositivo móvel e o AP terem uma chave específica para cada conexão, estas são as
chaves mapeando chaves; ilustradas na Figura 16.
5.1.1.1. Chaves padrão
São mais utilizadas em redes domésticas ou em redes corporativas de pequeno e
médio porte, isto ocorre porque, nesse tipo de abordagem, as chaves devem ser configuradas
manualmente pelo administrador da rede e, se esta for muito grande, fica inviável e dificulta a
manutenção das chaves padrão.
Existem quatro tipos de chaves padrão para cada dispositivo, mas apenas uma destas
é realmente necessária para a segurança. Quando a rede sem fio é instalada, o administrador
escolhe uma destas chaves para configurar o AP, e esta mesma chave será configurada em
todos os dispositivos móveis pertencentes à rede. A decisão de trocar a chave cabe ao gerente,
52
pois é este quem define qual melhor tempo para tal circunstância.
Pode-se também, usar duas chaves padrão simultaneamente. Desta forma, a chave
usada para criptografar os dados é definida, chamada de chave ativa, já a chave de decriptação
dos pacotes, pode ser qualquer uma das duas chaves. Mas não é apenas assim que chaves
padrão podem ser utilizadas, pois, existem quatro chaves, e até agora só foram utilizadas duas.
É possível a utilização de múltiplas chaves, onde duas delas serão usadas no AP e as restantes
pelos dispositivos móveis. É importante ressaltar que, não é obrigatório o uso das quatro
chaves, pois como dito anteriormente, o padrão pode operar bem com o uso de apenas duas
delas [3].
Figura 15 – Chave Padrão
5.1.1.2. Chaves mapeando chaves
É de fácil uso em grandes corporações, pois neste caso, cada dispositivo móvel
possui sua própria chave, não tendo o administrador da rede que configurar cada máquina
individualmente. Existem três tipos de mensagens que trafegam pela rede: unicast, multicast e
broadcast. As mensagens unicast são aquelas enviadas a um único destinatário; mensagens
multicast são enviadas a vários destinatários e, por fim, broadcast são as mensagens enviadas
a todos os componentes da rede.
As chaves mapeando chaves só utilizam as mensagens unicast, pois seu objetivo é
fazer com que o AP envie a chave apenas para um destinatário e, sendo assim, não poderia
utilizar nenhum dos outros tipos de mensagens, já que as demais são de envio de informações
53
para mais de um componente da rede.
Assim como as chaves padrão, esse tipo de chave também utiliza pelo menos duas
chaves em cada dispositivo e possui uma chave ativa. Só que neste caso, é mais complicado
do que o anterior, pois o AP precisa saber qual chave ativa os equipamentos ligados a ele.
Quando recebe um pacote, o AP precisa distinguir os remetentes dos endereços MAC e
utilizar um indexador para encontrar a chave certa para desencriptação. E, antes de transmitir,
precisa saber qual a chave certa do endereço de destino.
Figura 16 – Chaves Mapeando Chaves
Outra dificuldade desse tipo de chave é que a lista de chaves restringe o tamanho da
memória e, se houver vários pontos de acesso, todos eles precisam ter uma cópia para usá-la.
Isso torna a administração da rede mais complicada e mais propensa a erros.
5.1.2. Funcionamento
Quando o WEP é utilizado, tenta-se fazer com que os dados sejam criptografados
de tal forma que um atacante não consiga compreender o referente conteúdo. Para decifrar
determinada criptografia WEP, o IEEE 802.11 estipulou que é necessário primeiramente
burlar a autenticação do WEP e, em seguida, a criptografia.
O WEP opera, como ilustrado na Figura 17, já foi dito, baseado em uma chave
estática e outra dinâmica. Estas chaves são concatenadas e, em seguida, aplica-se o algoritmo
RC4 no resultado das chaves. Desta forma é gerada a key stream, uma chave definitiva. Após
a conexão da chave estática, serão geradas outras quatros chaves, onde apenas de uma delas
54
será a escolhida para criptografar os dados e só será trocada quando a chave estática original
também sofrer alteração. Para dificultar a ação de ataques de força bruta ou de dicionário é
adicionado, a esta chave, o Vetor de Inicialização.
Figura 17 – Operação do WEP [3]
5.1.2.1. RC4
O padrão IEEE 802.11, define duas fases para uma segurança mais adequada da rede,
sendo que a primeira é que a autenticação e, em seqüência, a criptografia dos dados. Sistemas
seguros baseiam-se em duas premissas: o fluxo cifrado e o bloco cifrado.
O fluxo cifrado pega uma seqüência de dados comuns (plaintext) e a transforma em
dados criptografados (ciphertext). Já no bloco cifrado, ao invés de se pegar bytes individuais,
pega-se blocos de dados, sendo que neste caso é suportado apenas um bloco a cada período de
tempo. Cada bloco possui um comprimento fixo e, geralmente são formados de 8, 16 ou 32
bytes. A diferença entre estes dois tipos é que o fluxo cifrado atualiza seu estado assim que o
55
dado é processado, enquanto no bloco cifrado, seu estado é resetado para cada bloco antes que
seja feito seu processamento [3].
O WEP utiliza o fluxo cifrado, chamado de RC4. É exatamente na criptografia que o
RC4 desempenhará sua função de cifrar. Ou seja, cada informação que passar pelo RC4 sairá
completamente diferente do texto original, tornando-se ilegível, porém com o mesmo
comprimento. Desta forma, o conteúdo trafega pelo meio e, chegando ao destino, o processo
de decriptografia é realizado objetivando a legibilidade do pacote.
Cada pacote é tratado como um fluxo de dados, se algum deles se perder, os que
virão em seqüência ainda podem ser decriptados. A vantagem do RC4 está na sua facilidade
de execução, devido à ausência de cálculos complicados.
5.1.2.2. Vetor de Inicialização - IV
Existe um problema em relação ao uso de chaves com tamanho fixo, pois pode
acontecer do algoritmo de criptografia fixar os bytes criptografados em uma determinada
posição, desta forma, sabe-se que os plaintext original está sendo repetido. O endereço IP,
sempre permanece na mesma posição no pacote, então se já é conhecido o local onde os bytes
encriptados estão localizados, sabe-se também que a mensagem é pertencente ao mesmo
endereço IP. Este tipo de situação facilita para o atacante obter dados vitais da rede [3].
A solução para este problema é o Vetor de Inicialização (IV); composto por 24 bits
aleatórios nos quais são combinados à chave resultante que será e emitida ao RC4, vide Figura
18. Dessa forma, mesmo que os dados originais sejam idênticos, eles terão aparência
completamente diferente após a criptografia.
Figura 18 – Uso do Vetor de Inicialização
56
Embora esta abordagem adote chaves com o mesmo valor para cifrar com relativa
freqüência, há um grande problema em usar troca de chaves para cifrar todos os pacotes: o
invasor irá saber, em tempo relativamente curto, o método de cifragem.
Mesmo sendo emitido à rede abertamente, ou seja, livre de criptografia, o IV é
teoricamente sem utilidade para o atacante; já que, além do vetor, deve-se conhecer a chave
secreta, fazer a combinação e, ainda, passar o resultado pelo RC4. Além disso, o IV é
dinâmico, sendo mudado constantemente, incrementando um grau de dificuldade para o
invasor.
5.1.3. Mecanismos do WEP
A comunicação realizada entre as redes sem fio e os dados do sistema, precisam
passar pela camada de serviço MAC do padrão IEEE 802.11. Os pacotes de dados que
trafegam pelas redes sem fio são chamados de MSDU – Unidade de dados do serviço MAC.
Normalmente, o MSDU sai da camada de serviço MAC no dispositivo de destino, é passado
para o sistema operacional, ou então, é entregue para a aplicação alvo. Porém, antes de chegar
à transmissão via rádio, esse MSDU pode fragmentar-se, tem-se então um processo de
fragmentação. Cada fragmento é processado durante a criptografia WEP e, a ele, será
adicionado um cabeçalho MAC na parte frontal e, em seu fim, será adicionado um verificador
de palavras. Este MSDU, agora com mais bytes adicionados ao seu corpo, passa a se chamar
MPDU – Unidade de dados do protocolo MAC que possui tamanho variando entre 10 e 1500
bytes, dependendo do conteúdo do MPDU. Outra fase importante da criptografia é a adição de
mais bytes a esse conjunto, os valores de checagem de integridade (ICV).
Como o próprio nome sugere, o ICV busca garantir a integridade dos dados, para
encriptação e decriptação. Possui 4 bytes de checagem de palavra, que são calculados a partir
da combinação de todos os bytes de dados, é adicionado ao final do quadro para, em seguida,
tanto os dados quanto o ICV, sejam criptografados, de acordo com a Figura 19. Desta forma, a
nova combinação estará pronta para a transmissão pode ser processada.
57
Figura 19 – Adição do ICV
5.1.3.1. Transmissão do quadro
Após a etapa descrita anteriormente, o quadro está pronto para ser criptografado. Na
fase seguinte, o sistema escolhe o IV e o anexa à chave secreta WEP (seleção da chave ativa),
com isso é iniciada a criptografia através do algoritmo RC4. O bloco de dados e ICV são
criptografados, o resultado desta combinação chama-se stream cipher, ou fluxo de cifras.
Porém, para decifrar a mensagem, são necessários quatro bytes adicionais no início
da mesma, ou seja, o receptor precisa conhecer o ID da chave e o valor do IV, como mostra a
Figura 20. Os primeiros três bytes são reservados para o IV, enquanto o último byte é
reservado para o ID da chave, que pode ser 0, 1, 2 ou 3.
A partir dessa fase, o quadro pode ser enviado. O processo de recebimento é lógico,
pois o bit WEP é setado e o receptor pode ler e armazenar o valor do IV, assim como, realizar
a mesma operação em relação ao ID da chave. Desta forma o receptor pode selecionar a chave
WEP correta, anexar o IV e, realizar o processo de desencriptação. O RC4 não faz distinção
entre encriptar e decriptar, desta forma, se for feito o processo de criptografia duas vezes no
mesmo dado, consegue-se o dado original. O passo final é calcular o ICV e verificar se este
combina com o da mensagem recebida.
Figura 20 – Adição do IV e ID da chave
58
5.2. WPA (Wi-Fi Protected Access)
Com o intuído de suprir as falhas de segurança em redes wireless nas qual o WEP
atuava, o IEEE padronizou uma nova abordagem de segurança que, além de corresponder às
expectativas de segurança, é compatível com implementações WEP. A essa abordagem deu-se
o nome de IEEE 802.11i, padrão responsável por estipular uma série de novos mecanismos de
segurança, objetivando concretizar o que é denominado de RSN (Robust Security Network –
Rede de Segurança Robusta). Para que a RSN seja obtida, é necessária uma etapa de
adaptação denominada TSN (Transitional Security Network – Rede de Segurança Transitória),
na qual podem operar em paralelo o RSN e o WEP [3].
Baseando-se em todos esses mecanismos, o WPA foi criado e, da mesma forma
que o WEP, também é um protocolo de encriptação de dados para redes sem fio. Além disso,
o WPA também oferece dois novos mecanismos de segurança: hierarquia de chaves e o
protocolo TKIP.
5.2.1. Hierarquia de chaves WPA
A hierarquia de chaves WPA foi desenvolvida com o intuito de gerenciar os dois tipos de
chaves existentes nesse protocolo, pairwise e group key, ilustradas na Figura 21.
59
Figura 21 – Pairwise Key e Group Key do WPA [3]
Pairwise Key
Utilizada em comunicação unicast por se tratar de uma comunicação privada entre
duas partes, esta chave protege a comunicação entre o dispositivo móvel e o AP, sendo que o
primeiro precisa armazenar uma pairwise key, enquanto o segundo precisa armazenar um
conjunto de pairwise key (uma para cada dispositivo móvel a ele associado).
Group Key
Utilizada em comunicação broadcast (ou multicast), por se tratar de uma
comunicação onde os dados são enviados para todos ou para muitos dispositivos móveis,
formando assim, um grupo de confiança. Portanto, esta chave deve ser compartilhada entre
todos os membros do grupo de dispositivos confiáveis e, cada equipamento móvel confiável e
o AP possuem uma group key.
60
5.2.1.1. Hierarquia Pairwise Key
A hierarquia começa com uma chave mestra chamada PMK (Pairwise Master Key).
Existe uma PMK para cada dispositivo móvel e, é a partir desta chave que todas as pairwise
key são geradas. Existem duas formas, através do qual, a PMK pode ser gerada. A primeira
delas é através do servidor de autenticação, no qual se gera a PMK. Porém esta chave só é
repassada à estação e ao AP depois de concluído o processo de autenticação que utiliza o
protocolo EAP, no qual será abordado em maiores detalhes no capítulo 7; a segunda
possibilidade seria através de chave pré-compartilhada, neste caso, a PMK é configurada no
dispositivo móvel e no AP.
A PMK não foi criada com o intuído de realizar a proteção. Ela, na verdade, tem
como objetivo criar um conjunto de quatro chaves, chamada PTK (Pairwise Transient Key),
para proteger a comunicação entre os dispositivos. Esse conjunto é formado pelas seguintes
chaves:
•
Chave de encriptação de dados
•
Chave de integridade de dados
•
EAPOL-Key Encryption Key
•
EAPOL-Key Integrity Key
Cada uma destas chaves possui 128 bits, sendo assim, a PTK possui comprimento
total de 512 bits. Cada vez que uma nova estação se associa ao AP, uma nova PTK é gerada.
Para garantir que a mesma chave não seja utilizada por um longo período de tempo, é
adicionada a ela o chamado liveness, que é conseguido através de um valor adicionado no
cálculo, chamado Nonce. O valor Nonce é um valor aleatório, e cada dispositivo gera o seu
próprio Nonce. É importante que cada componente passe seu Nonce para o outro a fim de
gerar a PTK. Além desses valores, também é necessário incluir o endereço MAC de cada um
dos componentes, e da mesma forma que ocorre com o valor Nonce, estes devem ser passados
da estação para o AP, e vice-versa, para a geração da PTK. A Figura 22 ilustra o cálculo da
chave de transição, onde há as entradas descritas e as quatro chaves geradas na saída.
61
Figura 22 – Cálculo da Chave de Transição [3]
A duas primeiras chaves são utilizadas para criptografia e verificação da integridade
dos dados, respectivamente. As duas últimas são usadas para proteger a comunicação entre o
AP e o dispositivo móvel durante o início do handshake. Esse processo é a troca de valores
Nonces entre o AP e a estação, para garantir que ambos possuem a PMK.
Todo processo de handshake é feito utilizando a mensagem do protocolo EAPOL
chamado EAPOL-key e é iniciado com a criação do valor Nonce de cada componente. O
Nonce gerado pela estação (suplicante) é chamado de SNonce, já o gerado pelo AP
(autenticador) é o ANonce. Depois desta etapa, existe a troca desses valores, feito por troca de
mensagens em quatro fases (A, B, C e D).
• Mensagem (A): Autenticador para Suplicante
Esta é a primeira mensagem EAPOL- key, enviada do autenticador para o suplicante.
Esta mensagem não possui nenhum tipo de criptografia ou proteção contra adulteração, mas
qualquer tipo de modificação, por mais simples que seja, faz o handshake falhar. É nesta
mensagem que o suplicante recebe o valor do ANonce. Na verdade, com essa mensagem, o
suplicante já possui todas as informações necessárias para a geração da PTK, já possui o
ANonce e o endereço MAC do autenticador, conhece seu próprio SNonce e seu endereço
MAC, e conhece também a PMK.
• Mensagem (B): Suplicante para Autenticador
Agora o suplicante enviou ao autenticador o valor do SNonce. A mensagem continua
sem nenhum tipo de criptografia, porém, desta vez, possui um valor de verificação de
integridade (MIC) para prevenir qualquer tipo de adulteração do conteúdo, sendo a primeira
62
vez que a mensagem de integridade do EAPOL-key foi utilizada; o mais importante é saber se
o suplicante realmente conhece o PMK. Haverá uma comparação entre as PMKs, se a chave
do suplicante não for igual ao do autenticador haverá falha na verificação da mensagem.
Como a mensagem não está criptografada, é possível extrair o SNonce da mensagem, gerar o
PTK e então fazer a verificação da mensagem.
• Mensagem (C): Autenticador para Suplicante
Esta mensagem é enviada ao suplicante para informar que o autenticador está pronto
para iniciar a encriptação dos dados. É importante que haja sincronização, pois se algum dos
dispositivos iniciarem a encriptação antes que o outro gere a PTK, a conexão falhará.
• Mensagem (D): Suplicante para Autenticador
Esta última mensagem completa as fases do handshake e indica que o suplicante
instalará as chaves e começará a encriptação. Ao receber esta mensagem, o autenticador
também instala suas chaves e a partir de então, todas as mensagens subseqüentes serão
criptografadas. Para isso, foram realizados os seguintes passos:
1. Troca de ANonce e SNonce.
2. Chaves temporárias calculadas.
3. Suplicante prova conhecer PMK.
4. Autenticador prova conhecer PMK.
5. Ambos os dispositivos são sincronizados e iniciam o processo de encriptação dos dados.
5.2.1.2. Hierarquia Group Key
Diferentemente da pairwise key, para comunicação em broadcast ou multicast,
utiliza-se as group key. Como dito anteriormente, todos os dispositivos móveis e o AP
compartilham um único conjunto de group key. A chave é gerada pelo access point, e apenas
este pode enviar mensagens em broadcast ou multicast, porém quem inicia a comunicação é a
estação a ele associado.
63
Na distribuição da group key é usada a mensagem EAPOL-key, assim como nas
pairwise key, porém, ao invés de quatro chaves, são distribuídas apenas duas. O AP gera uma
chave máster, chamada GMK, com comprimento de 256 bits. É a partir desta, que a GTK
(Group Transient Key) é criada, para desta forma, gerar as duas chaves de encriptação e
integridade dos dados, que são:
•
Group Encryption Key (128 bits).
•
Group Integrity Key (128 bits).
A comunicação da pairwise key inicia-se em uma conexão insegura e corre o risco de
sofrer com ataques de espionagem. Depois dessa fase inicial, as mensagens que se seguem
passam a trafegar com um canal seguro. A group key, pode aproveitar-se desse canal seguro
logo após a pairwise key estabilizarem a comunicação, e desta maneira, utilizar um meio mais
seguro para enviar o valor da group key. E por fim, o AP calcula a group key e realiza a
distribuição.
5.2.1.3. Protocolo TKIP
É um protocolo de segurança melhor que o WEP e pode ser operado nos mesmos
sistemas e hardwares que o anterior atuava por meio de atualizações. O TKIP acrescenta
algumas melhorias para corrigir as falhas existentes do WEP. Mas antes de descrever as
melhorias, serão apresentadas as deficiências, são elas:
1. Valor do IV muito pequeno e não é protegido de reutilização;
2. As chaves construídas a partir do IV possuem as mesmas fraquezas do seu gerador;
3. Não há proteção efetiva contra adulteração de mensagens;
4. Utiliza a chave mestre diretamente e não foi construído dentro do WEP nenhum
mecanismo que cuide das chaves durante a atualização;
5. Não existe proteção contra chaves replicadas.
Agora que as falhas já são conhecidas, as soluções para elas já podem ser
apresentadas, como mostra a tabela 1.
64
Tabela 1 – Mudança do WEP para TKIP [3]
Mensagem de integridade
Para verificar se não há adulteração das mensagens, o TKIP acrescentou uma
mensagem de integridade de dados com o auxílio do algoritmo Michael. Este algoritmo
calcula um valor de checagem de 8 bytes chamado MIC (Message integrity code) e este é
anexado ao MSDU antes da transmissão. A vantagem do Michael é que ele utiliza sua própria
chave de integridade, que é diferente da chave de encriptação. Sendo assim, apenas quem
possui a chave de integridade pode realizar alguma modificação na mensagem. A chave
reservada para este fim no WPA é o Data Integrity Key.
Seleção do IV
No WEP o valor do IV era escolhido randomicamente para cada pacote enviado. No
WPA as regras em relação a como escolher esse valor mudam. O IV passa a ter valor inicial
zero e a cada pacote enviado, este valor é incrementado em uma unidade.
Comprimento do IV
O grupo IEEE 802.11 decidiu aumentar o tamanho do IV para evitar seu reuso.
Resolveu-se então, que seriam acrescidos 32 bits, totalizando 56 bits, porém apenas 48 bits
65
são utilizados na prática. Considerando um dispositivo que envie 10 mil pacotes por segundo
(pacotes de 64 bytes a 11Mbps), com um IV de 24 bits este seria gerado novamente em pouco
menos de uma hora e meia, mas com o novo comprimento de 48 bits, isto só ocorreria em
torno de 900 anos. Desta maneira, o IV passa a ter como objetivo ser contador de seqüência, já
que a cada pacote enviado o próximo valor é previsível.
Chave por pacote
O TKIP oferece um mecanismo novo em relação a encriptação, que é o fato de cada
pacote enviado utilizar uma chave diferente. A chave de encriptação – Data Encryption Key –
não é o único elemento utilizado para este fim, além desta chave, há também o IV e o
endereço MAC do transmissor, sendo todos utilizados no algoritmo RC4.
O processo de geração da chave para criptografia dos dados por pacote é dividido em
duas etapas. A primeira delas envolve todos os dados estáticos, como: chave de encriptação
de dados, 32 bits da mais alta ordem do IV e endereço MAC. A segunda etapa é um cálculo
rápido, que inclui o único elemento dinâmico do pacote, os 16 bits de mais baixa ordem do
IV.
•
Dados utilizados:
IV = 48 bits, onde:
HIV = 32 bits de mais alta ordem;
LIV = 16 bits de mais baixa ordem.
MAC = endereço MAC do transmissor (48 bits);
KEY = chave de encriptação de dados (128 bits);
P1K = resultado da primeira etapa (80 bits);
P2K = resultado da segunda etapa (128 bits).
•
Cálculo utilizado:
P1K
etapa1 (MAC, HIV, KEY);
P2K
etapa2 (P1K, LIV, KEY);
O valor de IV é resetado para 0 toda vez que o sistema inicia ou quando ocorre
mudança na chave. O sistema calcula o P1K e o armazena para gera o P2K. O resultado da
primeira etapa precisa ser calculado apenas quando há mudança no valor do HIV, isso ocorre
66
a cada 65.536 pacotes enviados. Após a mudança do HIV, o P1K já pode calcular novamente
seu valor, pois assim, quando todos os pacotes tiverem sido enviados, este valor já estará
pronto e o P2K já será calculado imediatamente, evitando atrasos.
5.3. WPA2
O WPA é um mecanismo de segurança das redes sem fio e, assim como descrito na
Sessão 5.2, foi seguiu as especificações do padrão IEEE 802.11i. Porém, como o WPA
antecede a conclusão deste padrão, ele não implementou todas as especificações. Sendo
assim, foi criada uma segunda versão deste mecanismo, chamado WPA2, que implementou
todos os mecanismos de segurança introduzidos pelo IEEE 802.11i.
No WPA2, um novo protocolo de segurança é criado, chamado CCMP (Counter
Mode with Cipher Block Chaining MAC Protocol), introduzindo um novo algoritmo para
encriptação de dados chamados AES (Advanced Encryption Standard). A hierarquia de
chaves, visto na Sessão 5.2.1, continua a mesma utilizada pelo WPA, diferenciando pelo fato
de haver uma única chave para encriptação e integridade dos dados. Desta forma, a hierarquia
de chaves do WPA2, se estabelece da seguinte forma:
•
Hierarquia do Pairwise Key, o PTK subdivide-se em:
Data Encryption/Integrity Key (128 bits);
EAPOL-Key Encryption Key (128 bits);
EAPOL-Key Integrity Key (128 bits).
•
Hierarquia do Group Key, o GTK subdivide-se em
Group Encryption/Integrity Key (128 bits).
5.3.1. AES
O AES não é um protocolo de segurança, é um algoritmo de encriptação de bloco de
dados. Esse método combina uma chave (Data Encryption/Integrity Key) e um bloco de
dados de 128 bits (não criptografados), produzindo um outro bloco de dados diferente
67
(criptografado). O processo utilizado para encriptação é o mesmo para desencriptação dos
dados, desta forma facilitando para os fabricantes, pois estes não precisam implementar
processo decriptação, sendo que apenas o de encriptação já é o suficiente.
5.3.2. CCMP
É o protocolo de segurança do WPA2. Por utilizar o AES, este protocolo é
responsável por dividir os quadros em blocos de tamanhos iguais de 128 bits, pois o algoritmo
AES só realiza a encriptação do bloco se estes possuírem tamanho fixo.
O CCMP também é responsável por incluir um total de verificação no dado a ser
enviado, possibilitando a verificação de possíveis erros durante a transmissão. Esse total de
verificação é calculado pegando o primeiro bloco de 128 bits da mensagem e o encripta
utilizando o AES. Faz-se uma operação XOR entre o resultado anterior e o próximo bloco, e o
resultado deste é encriptado novamente. E por fim, faz-se outra operação XOR entre o
resultado anterior com o próximo bloco, e assim sucessivamente, até findar os blocos.
O resultado desse total de verificação é um bloco de 128 bits com a combinação de
todos os blocos, sendo que qualquer alteração realizada em um dos blocos, o resultado final
também será alterado.
6. Autenticação
O conceito de autenticação é algo de fácil entendimento, entretanto, existem
problemas de autenticação como seus mais variados métodos de implementação e solução
ideal e completa com difícil obtenção, já que requisita um profundo conhecimento de todos os
problemas que a autenticação envolve [6].
A autenticação é responsável pelo controle de acesso da rede, ou seja, define quem
irá (ou não) usufruir os recursos do ambiente em questão. Dessa forma, a definição e
implementação de um mecanismo de autenticação torna-se uma das formas mais importantes
para a obtenção de uma rede wireless confiável. Afinal, é muito tranqüilizador o fato de se ter
certeza que a pessoa realmente seja quem diz ser.
A seguir serão vistos alguns mecanismos de autenticação, alguns mais simples e,
portanto, vulneráveis; outros mais sofisticados e complexos. Estes últimos são os ideais a fim
de fornecer uma autenticação robusta.
6.1. Mecanismos de Autenticação
Vários mecanismos de autenticação foram desenvolvidos para oferecer um serviço
dial-up para os usuários. Dentre estes mecanismos, o que mais se destaca é o Protocolo ponto
a ponto (Point-to-point Protocol – PPP); desenvolvido com o objetivo de facilitar a forma
com que o usuário faz a autenticação e, ao mesmo tempo, armazenando seus dados [6].
6.1.1. PPP
Entre outros serviços oferecidos, o PPP fornece encapsulamento dos dados entre o
cabeçalho PPP e a redundância cíclica (CRC), propiciando resistência a erros de canais
aleatórios; porém não há proteção contra ataques intencionais. Para isso, são realizadas três
69
fases. Primeiramente, o usuário e a rede negociam parâmetros da conexão como o tamanho do
quadro, por exemplo. A esta fase, é dado o nome de LCP (Link Control Protocol – Ligação de
Controle do Protocolo). Em seguida ocorrerá a fase de autenticação, onde assegura que a
autenticação ocorra da forma com que a fase de negociação estipulou. Originalmente, o PPP
suporta o PAP (Password Authentication Protocol – Protocolo de Autenticação de Senha) e o
CHAP (Challenge Handshake Protocol – Protocolo com Desafio Handshake) como métodos
de autenticação. A definição entre a escolha destes protocolos é explicitada no campo
protocolo do cabeçalho PPP. E, finalmente, na fase NCP (Network Control Protocol –
Protocolo de controle de Rede) serão negociados os protocolos da camada de rede, como o IP.
O formato do PPP está ilustrado na tabela 2.
Tabela 2 – Formato do pacote PPP [6]
Nome do
campo
Cabeçalho
PPP
Sub-campo
Endereço
Controle
Protocolo
Código da
mensagem
Dados
Mensagem ID
Tamanho da
Mensagem
CRC
Descrição
Para distinguir erros e mensagens de controle
ID para protocolo, para os dados tanto encapsulados em pacotes
PPP quanto para dados PPP (0021 para IP, C023 para PAP, C223
para CHAP)
01 para configurar requisição, 02 e 03 para configurar ack e Nack
04 para configurar rejeição
Ativa uma seqüência de números para averiguar requisições e
respostas.
Tamanho da mensagem
Verifica dados originais
6.1.1.1. PAP e CHAP
O PAP é o protocolo de autenticação utilizado pelo PPP mais primitivo, no qual
consiste em um fornecimento de senha ao usuário. Portanto, apenas usuários com senhas
fornecidas corretamente ao autenticador serão autenticados. Quando um usuário informa sua
senha, o autenticador produz um pedido de autenticação PPP encapsulando as credenciais
deste usuário interno a um quadro PPP. A partir do momento que estas ações são trafegadas
ausentes de proteção, o uso do PAP através do PPP é considerado bastante inseguro [6].
Com o intuito de corrigir os problemas do PAP, foi desenvolvido o CHAP, no qual
propõe um desafio ao usuário. Este desafio é representado por uma pergunta que é enviada
pelo servidor ao suplicante e, este último, por sua vez, responderá a pergunta fornecendo-a
70
juntamente com um algoritmo denominado MD5. O servidor, ao obter essa resposta, usará o
mesmo MD5 a fim de certificar se o suplicante será autenticado. Vários algoritmos podem ser
utilizados no CHAP. Contudo, o MD5 é o único especificado na RFC 1994, na qual o CHAP é
tratado. Para melhorar a segurança do CHAP, o servidor pode fazer com que o desafio seja
alterado frequentemente, assim ficará mais difícil para algum atacante capturar a resposta
correta. De maneira similar ao PAP, quando o CHAP é utilizado como mecanismo de
autenticação sobre PPP, os próprios pacotes do CHAP são inseridos em quadros PPP como
dados PPP.
Apesar de a senha do usuário não ser transmitida livremente, seu armazenamento
pode ser comprometedor; o que torna o CHAP sujeito à insegurança. O PAP impede esse
armazenamento de valores de senhas em tabelas hash, mas essa operação não é possível no
CHAP. O inconveniente é que o desafio e os valores em hash são enviados ao longo da
mensagem, estando sujeito a ataques de dicionário e de força bruta.
6.1.1.2. Desvantagens do PPP
Quando o PPP é utilizado, um outro protocolo deve auxiliar a proteção desses dados
desde a extremidade PPP do usuário até o servidor de autenticação de forma segura. Mais
adiante será tratada essa abordagem focando a segurança do acesso fornecido pelo PPP.
Em relação ao PAP e CHAP, são apenas protocolos de autenticação; não de
criptografia. Assim, dados que transitam utilizando PPP não têm a confidencialidade, estando
completamente desprotegidos. Isso se deve ao fato de que o PPP foi desenvolvido para ser
utilizado em linhas telefônicas, nas quais dificilmente são atacadas [6]. Por estas razões o
PPP é completamente inadequado para autenticação em redes 802.11, fazendo com que sejam
criados mecanismos de autenticação específicos.
6.1.2. EAP
As desvantagens do PPP fizeram originar o EAP (Extensible Authentication Protocol
– Protocolo de Autenticação Extensível) com o objetivo de complementar os mecanismos de
autenticação antecessores. Este novo protocolo pode ser considerado como um substituto do
PAP e CHAP. A grande diferença entre o EAP e os outros é que sua autenticação de
71
parâmetros ocorre na fase de autenticação, enquanto PAP e CHAP ocorrem durante a fase
LCP; ou seja, uma fase antes.
Atualmente, o EAP é considerado um método que suporta vários mecanismos de
autenticação. Mais detalhes sobre o EAP será tratado posteriormente.
6.2. Autenticação dos Dispositivos
A maneira ideal de se fazer autenticação de um dispositivo é através de certificados e
do fornecimento de uma autenticação baseada neste certificado. Para isso, é necessário que o
dispositivo seja autenticado anteriormente ao usuário. Caso contrário, um usuário mal
intencionado, como um intruso, poderá facilmente adentrar na rede.
Com o intuito de facilitar o entendimento, será considerada, neste próximo tópico,
que as duas extremidades possuem, cada, uma chave privada e outra pública.
6.2.1. Autenticação por Chave Pública
Nesta abordagem o suplicante usa sua chave privada para se autenticar. Já o
autenticador fará a verificação usando chave pública. Considerando a exclusividade de
conhecimento da chave privada, o suplicante torna-se, também, o único capaz de decifrar a
mensagem do suplicante.
6.2.2. Autenticação por Certificado
Este mecanismo, segundo NIST (National Institute of Standars and Technology –
Instituto Nacional de Padrões e Tecnologia dos Estados Unidos), é ausente de definições e
regras a serem consideradas, tais como desafios e certificados. Entretanto há uma seqüência
de passos que devem ser seguidos, como mostra a Figura 23.
Opcionalmente, o suplicante emite um pedido para ser autenticado. Nesta etapa, não
há definições concisas, possibilitando a escolha de um protocolo específico, sendo variado de
acordo com a implementação. O autenticador, por sua vez, aleatoriamente gera e envia um
número com o desafio. Ao receber este desafio, o suplicante calcula a resposta, incluindo um
certificado de chave pública, a fim de que o autenticador analise a assinatura. A partir desta
72
análise, o autenticador certifica a assinatura. Caso essa verificação seja efetivada
positivamente, o suplicante será autenticado.
Figura 23 – Autenticação mútua de duas chaves baseada em certificados [6]
6.3. Mensagens de Autenticação
Visando fornecer integridade, as informações trafegadas por determinado meio de
transmissão são de responsabilidade dos mecanismos de mensagens da autenticação [6].
Para que este embasamento tenha eficácia, o remetente precisa fornecer uma
autenticidade à mensagem, ou seja, provar quem ele é. Este procedimento não é complexo,
basta que o remetente faça, na mensagem, uma espécie de assinatura digital exclusiva na qual
é conhecida pelas partes envolvidas na comunicação. Com maior eficiência, estas assinaturas
têm bases no índice das mensagens, nos quais são substituídos frequentemente.
Uma tentativa de ataque do tipo main-the-midde certamente será em vão. Na
tentativa de se passar por outra pessoa ou dispositivo, o atacante não terá bons resultados, já
que a assinatura é exclusiva e ele não tem conhecimento da mesma.
A produção da assinatura digital exige que a mensagem do remetente passe por um
algoritmo do tipo hash, gerando uma chave denominada código de autenticação de mensagem
na qual é encaminhada ao receptor para verificação. O principal algoritmo utilizado com o
intuito de realizar esse trabalho descrito acima é o MD5. Seu funcionamento detalhado vai
além do escopo deste trabalho e, portanto, não será abordado.
6.4. Classes dos Mecanismos de Autenticação
Como a quantidade de mecanismos de autenticação é bastante vasta, uma
73
padronização dos mesmos tornou-se necessária. A fim de auxiliar essa classificação, alguns
critérios foram utilizados. Neles, a autenticação é considerada um mecanismo em que as
entidades a serem autenticadas devem: ter uma prova física, conhecer uma senha e ser
conectada [6].
6.4.1. Senhas livres no espaço
Entre os métodos de autenticação, este é o mais tradicional e simples. Nele, o usuário
encaminha, juntamente com o pedido de autenticação, seu login e senha. O pedido é
verificado por um servidor no qual compara, com o auxílio de um algoritmo, a senha
fornecida; visando diferenciar este usuário de prováveis intrusos. Este método está sujeito a
vários problemas como ataques de Sniffing, Denial of Service e de Dicionário, conforme
capítulos anteriores.
6.4.2. Senhas Únicas
Esta abordagem trata de senhas que serão utilizadas apenas uma vez. Sem grandes
mudanças nos sistemas, corrige a maioria dos problemas encontrados na classe anterior e,
portanto, o protocolo de comunicação é praticamente o mesmo. Dessa forma, uma lista de
senhas diferentes é repassada ao usuário, porém, elas devem ser usadas apenas uma vez, como
dito anteriormente. A partir do momento em que o objetivo dessa classe é alcançado, a senha
pode trafegar livremente, como na classe anterior.
6.4.3. Desafio/Resposta
Semelhante ao CHAP, tratado na sessão 6.1.1.1, nesta classe o autenticador (ou
servidor) encaminha uma pergunta em forma de desafio: caso a resposta do suplicante esteja
correta, ele será autenticado. Caso contrário terá o acesso negado. As principais finalidades do
Desafio/Resposta são de evitar emissão de senha através do meio (no casso do 802.11, o ar) e,
consequentemente, evitando ataques do tipo Sniffing.
Em situações de projetos inadequados, essa classe pode se tornar menos eficiente que
o sistema de senhas. Quando o servidor deixa uma senha do usuário livre enquanto analisa a
74
resposta, adquirir as senhas torna-se uma tarefa bem simples aos atacantes. A solução deste
problema é utilizar o MD5 de dois estágios. Nele, o servidor calcula a senha usando uma
falsificação e um armazenamento. Quando o servidor envia o desafio e a falsificação para o
usuário, enquanto espera a resposta, é realizado o MD5 de dois estágios. Nesse momento, a
senha armazenada é ao usuário juntamente com a falsificação. Em seguida, quando o usuário
responder normalmente ao desafio, essa resposta estará junta com a falsificação e, quando
chegar ao servidor, este saberá que, juntamente à resposta, há uma falsificação.
6.4.4. Troca de chave anônima
De forma sucinta, trata-se de chaves públicas compartilhadas que dão origem às
chaves privadas. Deve-se ressaltar que chaves públicas e métodos de criptografia são
solicitados apenas para trocar as chaves iniciais e não para a autenticação propriamente dita.
A principal desvantagem é que o cliente deve saber tratar criptografia de chave pública. Alem
disso, se os pares não fornecem prova de identidade, a troca de chaves será considerada
anônima. Uma solução para este problema é fazer com que cada parte tenha uma certificação
confiável. Assim, será incluída no certificado de chave pública, a própria chave pública e a
assinatura de certificado confiável.
6.4.5. Prova do conhecimento da senha zero
Esse método foi muito bem desenvolvido, evitando problemas nos mecanismos de
autenticação que requer chaves pré-compartilhadas ou senhas que podem sofrer ataques de
Snifing ou man-in-the-middle. Entretanto trata-se de um método proprietário, tornando-se
bastante rejeitado e inacessível quanto seu funcionamento.
6.4.6. Certificados do servidor com autenticação do cliente
Essa classe baseia-se na premissa de que um canal de comunicação seguro baseado
na autenticação unidirecional foi estabelecido entre cliente e servidor. Após essa etapa a
autenticação torna-se bidirecional com um dos métodos descritos anteriormente. Entretanto,
mesclar classes pode não ser muito seguro, reduzindo drasticamente a confiabilidade do
75
método mais robusto. De certa forma, é mais prático fornecer senhas apenas aos servidores,
onde normalmente são em menor número que os clientes. Assim, depois de estabelecida a
conexão segura, o servidor certifica os usuários com sua própria senha. Essa prática tornou-se
bastante popular em negócios pela Internet (e-comerce e e-business).
6.4.7. Autenticação mútua da chave pública
Este é o método mais robusto e seguro no qual tanto servidor quanto cliente possui
um certificado de chave pública, visando a autenticação. A robustez se deve ao fato de que
nenhuma comunicação é concretizada antes de se ter certeza que ambas as partes são elas
mesmas. Já a segurança é considerada confiável, pois, nenhum intermediário à mensagem irá
romper o certificado que as partes encaminham.
O problema é que trabalhar com certificados requer conhecimentos avançados.
Portanto, uma chave que foi perdida, por exemplo, compromete toda a segurança. Por
exemplo, manter as chaves dos clientes confidenciais é frequentemente mais difícil, sendo
considerado o principal problema dessa classe. A conscientização do cliente a fim de manter o
dispositivo e a senha sempre seguros torna-se um grande aliado em prol da segurança,
principalmente se a senha for memorizada.
6.5. Autorização e Contabilidade
Existe uma abordagem na qual tem o objetivo de trabalhar em conjunto com a
Autenticação, melhorando e complementando seu desempenho. Essa abordagem é um
conjunto de serviços denominado de AAA (Authentication, Authorization and Accounting –
Autenticação, Autorização e Contabilidade). O conjunto AAA, na verdade, preconiza que
estes três serviços sejam oferecidos por um servidor apenas: o servidor AAA. Porém, esse
servidor pode ser implementado separadamente.
Dependendo da aplicação, em muitas redes, a autenticação está em conjunto com a
autorização. Esse é o exemplo do funcionário que deseja conectar-se à rede de sua empresa.
Em outros casos a autorização está acoplada na contabilidade, como nas redes pagas.
Apesar de várias aplicações, como na telefonia, um servidor AAA tem papel
fundamental nas implementações 802.11, pois fornece elevado grau de segurança. Portanto,
76
além da autorização, é de grande valia tratar também da autorização e contabilidade.
6.5.1. Autorização
Autorização é definida como o ato de determinar se um privilégio pode ser
concedido a um dispositivo ou usuário em particular [6]. Esse privilégio pode ser, por
exemplo, uma permissão de acesso à Internet ou qualquer outro tipo de recurso que é
oferecido pela rede.
6.5.1.1. Diferenças entre Autenticação e Autorização
Dependendo das regras estipuladas pelo administrador da rede, uma identificação do
usuário, ou seja, a autenticação em alguns casos não é o suficiente para conceder serviços ao
usuário. A rede deve proporcionar alguma forma de definir os tipos de usuários e decidir se
autoriza ou não determinado recurso.
Em termos práticos, usuários são divididos por grupos; uns com mais privilégios
outros com menos. Por exemplo, uma rede pode dividir seus usuários em três grupos: no
primeiro, os usuários teriam acesso ilimitado à Internet; no segundo, acesso à Internet, mas
sem fazer downloads e no último, os usuários teriam acesso apenas à Intranet. Já em redes
pagas como wi-fi em aeroportos e shoppings, o dispositivo só será autorizado se, após a
autenticação, for confirmado que o pagamento do usuário está em dia. Outro exemplo está nas
empresas onde o funcionário será autorizado apenas quando provar sua filiação à empresa.
Em suma, pode-se concluir que um usuário (ou dispositivo) autenticado não significa
que ele está autorizado. Para se obter autorização é necessária a autenticação. Na rede tudo
que está autorizado está autenticado, mas nem tudo que é autenticado será autorizado.
6.5.1.2. Padrão e Procedimentos de Autorização
Uma arquitetura simplificada em sistemas que executam mecanismos de autorização
é ilustrada na Figura 24. Quando o usuário emite um pedido de recurso ou serviço, ou seja,
uma autorização, a Rede Provedora de Serviços consulta primeiro um servidor de autorização
(servidor AAA) que contenha os perfis do usuário para, então, determinar se o usuário será
autorizado ou não. Esse procedimento ocorre apenas para usuários autenticados.
77
A figura inclui também o Equipamento de Serviço, definido como uma entidade que
fornece o serviço propriamente dito; que pode ser caracterizado como uma funcionalidade da
rede. Entretanto, os tipos de funcionalidades fornecidas pela rede, geralmente são
transparentes para os usuários.
Figura 24 – Modelo de Serviço de Autorização [6]
6.5.1.3. Estrutura de Políticas e Autorização
A fim de manter o processo de autorização consistente, a decisão do ato de autorizar
é frequentemente feita com a ajuda de políticas pré-definidas, principalmente quando há
mesclagem entre políticas de segurança e de afiliação. O conjunto de políticas a serem
adotadas deve incluir algumas informações tais como: os serviços disponíveis, decisões para
cada um dos recursos e o controle de cada uma das autorizações efetivadas.
A estrutura das políticas também deve ter compatibilidade com as outras entidades
da rede. É importante saber que o servidor AAA pode necessitar de interações com as
entidades pois reforça a política durante o processo de autorização.
6.5.2. Contabilidade
Muitos acreditam que contabilidade trata apenas de faturamento. Entretanto, vai
muito além disso. No geral, contabilidade é definida como a coleção de informação de
78
consumo do recurso em partes ou em toda a rede [6].
Essa informação geralmente é consultada como dado de contabilidade. O dispositivo
da rede que fornece serviços ao usuário (em redes 802.11, é representado pelo Access Point),
coleta a informação sobre a quantia de recurso que este usuário consumiu de acordo com as
necessidades da contabilidade. Em seguida, os dados coletados são transportados pelos
protocolos de contabilidade gerenciados por cada aplicação da contabilidade.
As aplicações variam de acordo com a política de segurança adotada na rede e com o
nível de segurança proporcionado por esses protocolos. Portanto, não é fácil definir um
protocolo de contabilidade para cada aplicação. A solução desse problema está na gerência da
contabilidade, com o objetivo de fornecer um conjunto de ferramentas que podem ser
combinadas com as exigências de cada aplicação.
6.5.2.1. Arquitetura de Gerência
A arquitetura da gerência de contabilidade especifica interações entre dispositivos da
rede e usuários da contabilidade, definindo também procedimentos para coletar dados
utilizados. Alguns termos também são utilizados para auxiliar a gerência da contabilidade, tais
como:
•
Métrica da contabilidade: os dados coletados são transferidos através do
protocolo de contabilidade;
•
Servidor de Contabilidade: responsável por processar os dados oriundos do
dispositivo da rede, evitando dados duplicados. No final de todo o processamento será gerado
o faturamento;
•
Faturamento: é responsável por contabilizar quanto o usuário deverá pagar
pelo uso da rede.
6.5.2.2. Segurança
Em uma estrutura de contabilidade, dois tipos de transmissões de dados são
necessários: troca de políticas e armazenamento dos registros de contabilidade. Ambas as
comunicações introduzem perigos potenciais à segurança. Assim, as aplicações diferentes da
contabilidade podem impor exigências diferentes na segurança do protocolo da contabilidade,
79
tais como:
• Entidades não autorizadas não podem ler ou mudar políticas ou registros de
contabilidade mantendo-os, portanto, em segredo.
• A autenticação deve assegurar que os dados são originados de fontes seguras.
Isso pode ser feito através de assinaturas digitais.
• Os dados também não podem ser alterados durante o trajeto. Assinaturas
digitais também evitam esse transtorno.
A exatidão dos dados de contabilidade gerados por um fornecedor de serviço deve
ser assegurada. Um fornecedor pode gerar registros de contabilidade incorretos
deliberadamente
ou
involuntàriamente
com
alguma
configuração
defeituosa.
Em
conseqüência, contas incorretas podem ser efetivadas. Os clientes podem verificar a exatidão
dos dados de contabilidade com os dados coletados por um terceiro partido confiado, podendo
ser um fornecedor de serviço independente da contabilidade ou uma entidade mais geral que
fornece um serviço específico.
6.5.2.3. Confiabilidade
Tipicamente, as falhas na contabilidade incluem perda de pacote, falhas do servidor
de contabilidade, falhas de rede, e reboots do usuário. Torna-se, então, de grande importância
a escalabilidade e confiabilidade dos sistemas de gerenciamento da contabilidade. Entretanto,
como descrito anteriormente, diferentes aplicações de contabilidade exigem diferentes
protocolos. Em aplicações como faturamento, a perda de dados de contabilidade pode resultar
em prejuízos financeiros.
Contabilidade Temporária
Aplicações de faturamento exigem que o NAS emita mensagens ao servidor AAA,
indicando o início e o término das sessões para que a contabilidade seja processada.
Entretanto, a quantia de informação necessária para o processo de faturamento, tal como o
tempo da sessão, número de bytes transferidos, está disponível somente nas mensagens que
são emitidas no fim da sessão [6]. Caso o NAS tenha algum problema como reboot, falha de
inicialização ou problema na rede, as informações estarão indisponíveis tornando a
contabilidade completamente ineficaz.
80
Um procedimento denominado de contabilidade temporária soluciona este tipo de
problema, pois, ela faz com que o NAS envie atualizações periódicas ao servidor AAA
contendo as informações das sessões dos usuários. Caso ocorra algum dos danos citados
anteriormente, pouca informação será perdida.
Entretanto, a aplicabilidade da contabilidade temporária pode causar transtornos
maiores caso o problema na rede seja congestionamento. Nesse caso, o envio de atualizações
aumentaria a taxa de ocupação do canal oferecido. Assim, o uso de contabilidade temporária é
recomendado apenas para dados extremamente importantes. Isso assegura que a maioria das
sessões não gere procedimentos de contabilidade temporária, fazendo com que a largura de
banda bem como a memória disponível a esse mecanismo seja limitado.
Protocolos de Transporte
Os protocolos responsáveis pelos dados da sessão não precisam garantir o envio de
pacotes, uma vez que estes passam frequentemente através de vários pontos de acesso de rede
(NAS). Portanto, o protocolo mais comum para realizar o transporte das sessões é o UDP.
Quando implementado nesta abordagem de contabilidade, devem-se levantar várias questões
em relação ao UDP, tais como o comportamento da retransmissão, devendo esperar um tempo
suficiente da primeira tentativa transmissão.
6.5.3. Autorização em conjunto com a Contabilidade
Um dos principais exemplos onde a autorização está em perfeita sintonia com a
contabilidade é o serviço de telefones celulares pré-pagos. Neste tipo de serviço, o usuário
será autorizado a fazer ligações apenas quando efetivar a inserção de créditos em seu
dispositivo. A partir daí entra a contabilidade, diminuindo a quantia desses créditos à medida
que são feitas ligações.
Essa abordagem é tratada na mesma metodologia em redes wireless. O usuário paga
a determinada empresa uma quantia e, ao chegar com seu dispositivo em áreas de cobertura
de uma rede 802.11, terá seu acesso permitido de acordo com o pacote fechado com a
fornecedora do serviço.
81
7. EAP – Extensible Authentication Protocol
Em um ambiente cuja transmissão é realizada pelo ar, é muito mais fácil para um
atacante observar os dados que trafegam pela rede. Para que haja um meio mais seguro para
troca de informações, não basta projetar um método de controle de acesso onde apenas requer
que o usuário se autentique na rede. É preciso que a identidade do usuário esteja protegida dos
diversos tipos de ataques.
Como dito anteriormente, no PAP o usuário passa suas credenciais em ambiente sem
nenhum tipo de proteção, facilitando assim, ataques de captura de tráfego. O atacante, através
dessa técnica, captura a identidade e a senha do usuário e, pode imitar tal indivíduo na rede
sem nenhuma dificuldade. Porém, o PAP não é o único mecanismo de autenticação
vulnerável, o método de resposta desafio também possui suas fraquezas. Através da
espionagem, o atacante pode gravar a pergunta desafio enviada pela rede e capturar a resposta
desafio enviada pelo usuário. Feito isso, um ataque de dicionário é lançado e, será testada uma
grande quantidade de conjunto de chaves, chegando às respostas originadas do desafio, desta
forma, adivinha-se a senha.
A melhor maneira de proteger a identidade do usuário seria o anonimato do mesmo,
mantendo também em sigilo a localização durante o processo de autenticação. Para que essa
solução fosse possível, seria necessário projetar mecanismos de segurança mais flexíveis.
Pensando desta maneira, surgiu o EAP (Extensible Authentication Protocol) [6]. E, é neste
capítulo, que será visto seu funcionamento e, como tal mecanismo auxilia no controle de
acesso mais eficaz.
7.1. Princípios EAP
Como foi visto no capítulo 6, existe a troca de mensagens entre o suplicante e o
autenticador, para que o primeiro seja reconhecido como elemento válido na rede. É neste
instante que o EAP participa do processo de autenticação, promovendo um ambiente mais
seguro, possuindo um conjunto de mensagens que são utilizadas no início e no fim do acordo
82
entre os dispositivos envolvidos no processo de autenticação. Assim, foram definidos quatro
tipos de mensagens a serem enviadas:
•
Solicitação: usada para enviar mensagem do autenticador para o suplicante;
•
Resposta: usada para enviar mensagem do suplicante para o autenticador;
•
Sucesso: enviada do autenticador para indicar o sucesso do processo;
•
Falha: enviada do autenticador para indicar a falha do processo.
É importante ressaltar que, em um ambiente onde não há apenas o autenticador, mas
também um servidor de autenticação é este último que gera as mensagens de solicitação,
sucesso ou falha, cabendo ao autenticador intermediar esse processo [3].
7.2. Formato da mensagem EAP
Todas as mensagens EAP possuem basicamente o mesmo formato, como mostra a
Figura 25 abaixo.
Figura 25 – Formato da Mensagem EAP [3]
O campo código é utilizado para indicar o tipo de mensagem que está sendo
transmitida. Possui apenas um byte onde: solicitação (01), resposta (02), sucesso (03) e falha
(04). O identificador é um valor entre 0 e 255 e é incrementado a cada mensagem enviada.
Este valor permanece o mesmo tanto para solicitação quanto para resposta. É usado para
ajudar a corresponder a solicitação a sua respectiva resposta. Comprimento, como o próprio
nome sugere, é o tamanho total de bytes da mensagem EAP e possui 16 bits. Dados é a
solicitação ou resposta atual que está sendo enviada.
Os pacotes contendo sucesso ou falha não possuem dados e, apenas uma destas pode
ser utilizada ao término do processo de autenticação para indicar o resultado. Já os detalhes de
como se procede à autenticação estão contidos em um campo chamado Tipo, que se encontra
nas mensagens de solicitação e resposta.
A mensagem EAP de solicitação é chamada de EAP-Request, enquanto a de resposta
83
é chamada de EAP-Response. O formato desta mensagem é mostrado na Figura 26.
Figura 26 – Mensagem EAP-Request / EAP-Response [3]
O campo Tipo indica que tipo de informação está sendo transportado na mensagem
EAP. Esse campo possui vários subtipos, sendo que as seis primeiras são definidas no padrão
e, as seguintes são reservadas para métodos de autenticação específica. O mais importante
destes é o subtipo Identidade (valor 1). É tipicamente utilizado na fase inicial da autenticação.
Uma mensagem EAP-Request/Identity é enviada pelo autenticador ao novo suplicante. Em
resposta, o suplicante envia uma mensagem EAP-Response/Identity, contendo seu nome de
usuário ou alguma outra informação que será compreendida pelo servidor de autenticação [3].
As mensagens identidades do EAP são:
•
EAP-Identity request;
•
EAP-Identity response;
•
EAP-Success ou EAP-Failure.
7.3. EAPOL
O EAP não é utilizado em qualquer tipo de LAN, é designado para autenticação dialup via modem. O comitê IEEE 802.1x definiu um protocolo com o intuito de passar o EAP
por uma LAN, chamado EAPOL (EAP over LAN). Mas para que esse processo ocorra, o EAP
deve ser encapsulado dentro de quadros EAPOL [3]. O EAPOL definiu quatro tipos de
mensagens:
•
EAPOL-Start: esta mensagem é enviada pelo suplicante quando este deseja conectarse à LAN. O envio desta mensagem acontece porque, inicialmente, o suplicante não
conhece o endereço MAC do autenticador. Sendo assim, o EAPOL-Start é enviado a
um grupo multicast, contendo o endereço MAC reservado para o autenticador IEEE
802.1x, deixando explícito que o suplicante requer acesso [6].
84
•
EAPOL-Key: foi designada inicialmente para suportar autenticação e distribuição de
chaves, permitindo que esta última fosse realizada do autenticador para o suplicante.
Porém, a especificação 802.1x não esclareceu como estas chaves seriam protegidas
durante a transferência [6]. Sendo assim, esta mensagem não é muito utilizada por
comprometer a segurança.
•
EAPOL-Packet: esta é a mensagem que carrega as mensagens EAP. Como mostra a
Figura 27, o pacote EAPOL é composto por um cabeçalho MAC Ethernet (para
identificar o tipo de mensagem EAPOL), e o corpo do pacote, onde a mensagem EAP
é carregada [6].
•
EAPOL-Logoff: é utilizada para indicar o desejo de se desconectar do suplicante.
Figura 27 – Formato do quadro EAPOL [3]
7.4. Processo de autenticação com EAP
Em redes cabeadas é fácil perceber quando um novo dispositivo deseja integrar-se à
rede, basta conectar o cabo de rede a um hub ou switch. Mas quando se trata de redes sem fio,
este processo é realizado de maneira diferente.
Primeiramente, o dispositivo que deseja conectar-se à rede, envia uma mensagem
EAPOL-Start no ambiente em que se encontra para descobrir se há algum autenticador
disponível. Se houver um, este envia uma mensagem EAP-Request/Identity para saber se o
dispositivo móvel é conhecido. Em seguida, o suplicante responde com uma mensagem EAPResponse/Identity. Agora com a identidade do suplicante, o autenticador se comunica com o
servidor de autenticação para saber se aquele suplicante terá sua entrada permitida na rede [3].
Quando o servidor de autenticação analisar os dados enviados pelo suplicante, ele
pode então, enviar ao autenticador se o suplicante foi aceito ou negado e, este por sua vez,
envia a decisão ao suplicante, cumprindo seu papel de intermediário.
85
7.5. EAP-TLS
O EAP foi projetado, a princípio, como uma extensão do protocolo PPP (Point-topoint) para dar ênfase à autenticação sobre conexões PPP. Observou-se que apesar dos
diversos métodos de autenticação existentes, vários deles não realizavam autenticação mútua,
encriptação ou serviço de gerência de chaves. Foi a partir de então que se iniciaram os
trabalhos para que houvesse autenticação mútua e gerência de chaves sobre conexões PPP,
surgindo assim, o chamado EAP-TLS [6].
A autenticação no modelo TLS (Transport layer security) é realizada através da troca
de certificados digitais entre o cliente e o servidor RADIUS com o intermédio do AP. A
autenticação mútua baseia-se na comprovação da autenticidade, ou seja, os certificados do
cliente e do servidor RADIUS foram assinados pela mesma AC [7].
O TLS possui duas camadas: handshake e de registro. A camada handshake é
responsável pela execução do processo de autenticação, negociação do código e troca de
chave. Já a camada de transporte de registro é responsável pela segurança da camada de
transporte de uma ponta a outra. O TLS foi projetado para ser carregado sobre um protocolo
de transporte e todos os dados TLS também. É encapsulado dentro de pacotes EAP e, assim,
serão carregados sobre a conexão PPP ou LAN. Com isso, a estrutura EAP pode acomodar o
método de autenticação TLS e também o método de gerência de chaves [6].
Como dito na Sessão 7.2, as mensagens EAP-Request e EAP-Response possuem um
campo Tipo, no qual valores iguais ou maiores a 4 lhe são atribuídos e são designados para
métodos de autenticação específica. Quando esse valor é igual a 13, significa que está sendo
utilizado o método de autenticação EAP-TLS. As mensagens TLS enviadas do servidor para o
cliente são encapsuladas nas mensagens EAP-Request, enquanto as mensagens TLS enviadas
do cliente para o servidor são encapsuladas nas mensagens EAP-Response [6].
Contudo o EAP-TLS possui algumas desvantagens que são relevantes para a
segurança dos sistemas que fazem uso desse método, algumas delas estão descritas abaixo:
•
Necessidade de certificação digital: o EAP-TLS é recomendado apenas para ambientes
que necessitam da autenticação mútua entre servidor e cliente, pois em cenário onde
não é necessário esse tipo de ação, como por exemplo, autenticação simétrica, o EAP-
86
TLS tem pouca aplicabilidade. Exigir certificados digitais dos usuários pode ser
bastante trabalhoso.
•
Identidade do usuário: o EAP-TLS não protege a identidade do usuário
•
Eficácia do protocolo: o certificado EAP requer longas trocas de protocolo, e isso não
é recomendado para usuários móveis que necessitam se re-autenticar depois de um
handover.
Como ocorre na autenticação por validação através de usuário/senha, no EAP-TLS
não há nenhuma criptografia para proteção do tráfego de informações. Para minimizar esse
risco, foi desenvolvido um outro mecanismo semelhante ao EAP-TLS, porém criando um
túnel criptográfico para que as autenticações transitassem com maior segurança, desta forma,
surgiu o EAP-TTLS.
7.6 EAP-TTLS
Esse método não substitui o uso de um mecanismo de autenticação, pois ele apenas
cria um túnel criptográfico a fim de proteger o tráfego que transita pela rede. O EAP-TTLS é
semelhante ao EAP-TLS, diferindo apenas pelo fato do cliente não necessitar de certificado
digital para estabelecer a conexão e fechamento do túnel [7].
8. IEEE 802.1x – RADIUS
Agora, será iniciado o protocolo IEEE 802.1x. Com o objetivo de fornecer
autenticidade à rede, esse mecanismo traz consigo alguns assuntos relevantes para a conclusão
do trabalho; dentre eles está a Autenticação.
Por isso, este capítulo abordará, também, conceitos do 802.1x e protocolos que
atuam juntamente a ele, com ênfase ao EAP. Entretanto, o principal foco será dado ao
RADIUS (Remote Authentication Dial In User Service), a principal abordagem e mais
utilizada quando se fala em padrão IEEE 802.1x e Autenticação.
Não por acaso que se trata de um dos capítulos mais extensos de todo o estudo
realizado já que os assuntos serão tratados da maneira mais explicativa possível, fazendo com
que, no final, seja justificado o porquê dessa abordagem de segurança voltada à autenticação.
8.1. IEEE 802.1x
De maneira sucinta, o 802.1x é o padrão desenvolvido pelo IEEE com o objetivo
de fazer o controle de acesso à rede, ou seja, quem tem permissão ou não de usufruir dos
recursos dessa rede. Para que o objetivo seja alcançado, o 802.1x visa três elementos
fundamentais: o suplicante, que pretende obter acesso à rede; o autenticador, entidade
responsável por controlar o acesso e o autorizador, decidindo se o suplicante terá ou não
acesso [3].
Fazendo uma comparação com o 802.11, o suplicante seria o dispositivo móvel do
cliente (notebook, palm), autenticador é representado pelo ponto de acesso e o autorizador
normalmente está em forma de Servidor de Autenticação.
8.1.1. Fundamentos
Originalmente falando, o 802.1x é um padrão compatível com várias arquiteturas
88
de rede como Ethernet e Token Ring pois, foi criado antes mesmo de todas padronizações
para redes sem fio [3]. Apesar disso, o padrão de controle de acesso tornou-se perfeitamente
ajustável perante o 802.11 devido ao conceito de portas. Este conceito faz com que, na
abordagem do funcionamento aparente, o 802.1x tenha uma grande proximidade com um
simples switch das redes Ethernet. Assim como um switch, o 802.1x possui portas, cada uma
pertencente a um dispositivo da rede, porém no Ethernet são utilizadas portas físicas. Já no
802.1x são usadas portas lógicas. Daí a razão pela qual a combinação 802.11 e 802.1x
obtiveram bons resultados. A Figura 28 ilustra o 802.1x.
Para exemplificar a comparação, cada um dos elementos fundamentais do 802.1x
possuem seus respectivos objetivos. Cada um dos suplicantes almeja obter acesso em
determinada porta. À princípio, todas as portas estão fechadas cabendo, então, ao autenticador
decidir se abrirá ou não cada uma delas. Essa decisão será providenciada de acordo com o
Servidor de Autenticação.
Autenticador
Dispositivo
Conectado
Servidor de
Autenticação
Autenticador
Dispositivo
fazendo
Requisição
Autenticador
Autenticador
Figura 28 – Modelo comparativo entre 802.1x e um Switch [3]
De forma resumida, um suplicante qualquer “bate” na porta e o autenticador
“pergunta quem é”. De posse da resposta, o autenticador “pergunta” ao Servidor de
Autenticação se este suplicante pode ser autorizado. Caso o servidor autorize, o autenticador
“abrirá” a porta e o suplicante terá acesso livre à porta. Caso contrário, o autenticador não
abrirá a porta e, consequentemente, o suplicante não terá acesso.
É válido ressaltar que a porta estará disponível apenas para um suplicante por vez
89
sem a obrigatoriedade de ser sempre a mesma porta para o mesmo suplicante. As maneiras
pelas quais o servidor de autenticação e o autenticador trata cada suplicante serão abordadas
no tópico 8.2.
8.2. Remote Authentication Dial In User Service (RADIUS)
Caracterizado basicamente como uma arquitetura de Servidor de Autenticação, o
RADIUS é a principal ferramenta na qual implementa o mecanismo de autenticação
padronizado ao IEEE 802.11i [3], além de ser um dos protocolos AAA que mais se destaca.
Para que seja iniciado esse tópico, será necessário definir alguns nomes e
conceitos. Durante o processo de autenticação, o Servidor RADIUS ou AS (Authentication
Server – Servidor de Autenticação) contará com um cliente denominado NAS (Network
Access Server – Servidor de Acesso a Rede). Apesar de paradoxal, essa definição de um
servidor como cliente não é tão complexa; afinal, o NAS é um cliente do servidor (cliente
RADIUS), mas não é um usuário. Este usuário, neste contexto, é representado pelos
dispositivos [6].
Inicialmente, o usuário reconhece o NAS e vice versar, como na etapa 1 da figura
29. Na verdade, o NAS é responsável por encaminhar solicitações dos usuários ao servidor e
esperar respostas deste último, como um intermediário. A etapa 2 ilustra essa situação. Já na
etapa 3, é quando o Servidor de Autenticação libera o acesso à Internet ao usuário. Isso
significa que este usuário teve concessão para usufruir do recurso da rede.
Dependendo da implementação, o NAS pode ser necessário apenas no caso de
uma autenticação de sucesso ou também na autenticação diretiva do servidor para abrir as
portas de tráfego aos dispositivos. Além disso, o NAS é utilizado também para estabelecer
segurança nos canais de comunicação com o cliente antes de estabelecer alguma comunicação
com o usuário final. Outra tarefa interessante do NAS é o recolhimento de dados utilizados
pelos dispositivos e, posteriormente, enviando-os ao servidor a fim de se realizar a
contabilidade.
O servidor Radius, por outro lado, é responsável por processar as solicitações,
autenticar os usuários, e retornar a informação necessária para a configuração cliente entregar
o serviço ao usuário [6].
90
NAS
Usuário
Figura 29 – Funcionamento do NAS [1]
8.2.1. Mensagens
O conjunto de mensagens do RADIUS é bastante simples e consiste em oito
mensagens apenas. São elas:
Solicitação de acesso: gerada do NAS para o AS, essa mensagem tem a
finalidade de informar ao servidor que um usuário está solicitando acesso.
Consequentemente, o servidor envia solicitação do usuário;
Acesso por desafio: do AS para o NAS, essa mensagem objetiva fazer com
que o servidor negocie algo com o NAS ou o próprio usuário;
Acesso permitido: enviada do AS para o NAS, esta mensagem significa
que a solicitação foi aceita, ou seja, o usuário está autenticado;
Acesso negado: enviada do AS para o NAS, esta mensagem significa que a
solicitação foi rejeitada, ou seja, o usuário não será autenticado;
Requisição de contabilidade: é enviada do cliente para que o servidor faça
a contabilidade de tal usuário;
Resposta de contabilidade: a partir do momento em que a contabilidade do
usuário é efetivada com sucesso, o servidor retornará esta mensagem ao NAS, em caráter de
informação;
As outras duas mensagens do RADIUS são experimentais: status do
servidor e status do cliente.
Em cada mensagem, as informações são incluídas em forma de atributos, ou seja,
91
cada atributo é um conjunto de informações com funções diferentes que variam de acordo
com o tamanho, formato, tipo e valor dessas informações [6]. A tabela 3 ilustra essa situação.
Tabela 3 – Formato dos atributos do RADIUS [6]
Atributo
Tipo
Características
Acima de um octeto (no máximo 255 atributos) para descrever o tipo deste
atributo.
Comprimento Comprimento do atributo em octeto, indicando o comprimento total do
atributo contabilizado, incluindo os campos de tipo e comprimento
Valor
Contem informações que o atributo supostamente carrega
Geralmente, o corpo principal das mensagens de solicitação de acesso e acesso por
desafio é usado para carregar atributos do NAS para o Servidor RADIUS e vice-versa. Como
os atributos carregam quase todas as informações requeridas para definir a operação do
RADIUS, duas mensagens diferentes de solicitação de acesso carregam diferentes atributos e
apresentam diferentes funções dependendo dos atributos que eles carregam.
8.2.1.1. Formato da mensagem
O formato do pacote RADIUS inclui um código, ID, comprimento e campo
autenticador, seguido por um contador de atributos. O fim da lista de atributos é indicado pelo
campo de comprimento. A tabela 4 ilustra os campos do pacote RADIUS.
Tabela 4 – Formato do pacote RADIUS [6]
Nome do campo
Cabeçalho
Atributo 1
...
Atributo N
Sub-campos
Código
ID
Comprimento
Autenticador
Descrição
Identifica o tipo do pacote RADIUS
Verifica requisições e respostas
Dois octetos a mensagem inteira
16 octetos
Primeiro atributo do pacote
Último atributo do pacote
Os atributos do RADIUS é o principal meio para transportar informações das
mensagens. Por isso, são deles que surgem as oportunidades de estender a funcionalidade do
RADIUS a fim de interagir com outras entidades e propósitos.
Segundo a última especificação (RFC 3580), o RADIUS possui mais de trinta
atributos. RFC’s anteriores chegaram a mais de quarenta. Portanto, trata-se de uma lista
92
bastante extensa que foge ao escopo deste trabalho e não será tratada no mesmo.
8.2.2. Confiabilidade no transporte
Considerado um protocolo de aplicação, o RADIUS na camada de transporte
utiliza o UDP. Por questões de alto consumo de processamento e tempo envolvendo a
máquina, o TCP não foi o escolhido. Essa escolha pelo UDP faz com que o RADIUS tenha
sérios problemas de confiabilidade no transporte. O tópico 4.3.4 detalhou sobre esses
problemas.
Além de prejudicar a contabilidade, o RADIUS é afetado pela degradação da
performance, perda de pacotes em condições adversas da rede, da escalabilidade e do controle
de congestionamento [6]. Por todos esses fatos, o IETF está desenvolvendo um novo modelo
de protocolo: Diameter, que será abordado na sessão 8.3.
8.2.3. RADIUS e segurança
A segurança do RADIUS é trivial. São fornecidas duas funções principais: um é o
atributo oculto (principalmente senha) e o outro é a autenticação de determinadas mensagens.
Ambas as funções são desempenhadas usando o MD5 e um segredo que é compartilhado
entre o servidor RADIUS e o NAS [6]. O segredo é usualmente chamado de segredo
compartilhado RADIUS.
8.2.3.1. Proteção de Integridade nas Mensagens
Como visto na descrição do formato da mensagem RADIUS, o campo
autenticador é adicionado em todas as mensagens RADIUS. Na mensagem solicitação de
acesso, este campo autenticador é chamado de autenticador solicitante, enquanto nas
mensagens de acesso desafio, aceitação e rejeição o campo é chamado de autenticador
resposta. Entretanto, as principais diferenças não estão na terminologia, mas no nível de
proteção que cada um promove [6].
93
8.2.3.1.1. Autenticador solicitante
Quando o campo autenticador é autenticador solicitante, o cliente gera um número
aleatório de 16 octetos (128 bits) no qual é adicionado ao campo. Como não se trata de um
campo de grande valia para garantir a integridade da mensagem, então não existe criptografia.
Tudo que é requerido pelo autenticador solicitante será exibido abertamente.
Os pedidos do autenticador solicitante podem ser abrangentes, para que seja o
mesmo NAS a fazer a autenticação; ou podem ser também temporários, a fim de evitar ataques
repetitivos. A cada solicitação de acesso, um novo ID é gerado; exceto em retransmissões. Se
a solicitação for um resultado do NAS no qual recebe um acesso desafio do servidor, também
será gerado um ID. Neste caso, o NAS cria um desafio CHAP para o usuário e se o valor do
CHAP for menor que 16 octetos, ele poderá ser inserido no campo autenticador da solicitação
de acesso. Caso contrário é adicionado atributo no CHAP.
Entretanto, autenticador sozinho não fornece proteção de integridade. Para corrigir
esse problema, o servidor RADIUS verifica se o endereço IP de origem realmente seja do
NAS. Por ter sido projetado para autenticação remota e, desde que a senha do usuário seja
protegida por um compartilhamento secreto compartilhado entre o NAS e o servidor RADIUS,
será necessário outro mecanismo de segurança adicional para proteger contra ataques de
segurança.
A mensagem de solicitação de acesso na qual é protegida com uma mensagem de
autenticação, o cliente calcula MD5 sobre a mensagem inteira usando o compartilhamento
secreto no qual compartilha com o servidor RADIUS e inclui o resultado do MD5 no campo
data do atributo Autenticador de Mensagem.
Quando na mensagem de solicitação de acesso que é recebida inclui este
autenticador, o servidor RADIUS calcula o autenticador, utilizando o segredo compartilhado
e se não estiver de acordo, o servidor descarta a mensagem.
8.2.3.1.2. Autenticador Resposta
Ao contrário da mensagem de solicitação de acesso, a mensagem do servidor
RADIUS para o cliente (acesso desafio, acesso permitido e acesso negado) recebe uma
proteção de integridade mais robusta. O valor do campo autenticador (chamado autenticador
resposta) é o resultado de um MD5 da maioria das mensagens, com exceção do próprio
94
campo autenticador.
8.2.4. Exemplos de Operações
Existem várias formas de se trabalhar com o RADIUS de maneira eficiente [6].
Neste tópico serão demonstradas algumas das aplicações mais tradicionais do RADIUS como
a autenticação de usuário baseado em senhas, além da integração do RADIUS com os
protocolos PAP, CHAP e EAP. Entretanto detalhes da autenticação RADIUS baseada em EAP
foi abordado no capítulo 7.
8.2.4.1. PAP
Utilizado para auxiliar o PPP, o PAP (definido no capítulo 6) é uma das maneiras
mais fáceis para se fazer autenticação baseado em senhas. Ao ser estabelecida uma conexão
PPP, o NAS configurado para usar o PAP, enviará sinais ao usuário solicitando login e senha.
Após o usuário fornecer esses dados, o NAS cria uma Requisição de Autenticação (RA)
agregada aos dados, os envia ao servidor RADIUS e aguarda resposta. A tabela 5 demonstra
os atributos encaminhados ao servidor.
Tabela 5 – Atributos da mensagem de requisição de acesso usando PAP [6]
Atributo
Username (login)
Senha
IP
Porta
Descrição
ID PAP do usuário
Senha enviada com o uso do MD5
Endereço IP do NAS
Porta de comunicação usada pelo NAS (não pode ser a do UDP)
Caso não receba resposta em um tempo pré-estabelecido, o NAS poder retransmitir
a RA ou transmitir outra RA (de outro usuário). Quando o servidor RADIUS recebe o pedido,
executa verificações sobre a origem e a autenticidade dessa requisição como, por exemplo,
alguma informação na qual o NAS, possivelmente, está em compartilhando com o usuário.
Entretanto, a principal atividade do servidor RADIUS nesse momento é verificar se os
atributos recebidos estão presentes em sua base de dados, a fim de conceder ou não o acesso
ao usuário.
Se a verificação da senha for bem sucedida, o servidor RADIUS emite ao NAS a
95
concessão de acesso, ou seja, o usuário foi reconhecido. Caso o usuário não seja encontrado
na base de dados ou ocorra incompatibilidade de senhas, ao NAS será enviado uma mensagem
de rejeição, impossibilitando acesso do usuário. Esse fato é denominado como detecção de
erro de credencial.
Um outro problema do modelo de segurança do RADIUS tem é durante a
autenticação do PAP, ilustrado na Figura 30. Se o cálculo hash do servidor falhar, o servidor
não pode dizer se a senha do usuário era erro ou o segredo compartilhado entre o NAS e o
servidor
RADIUS
não
estava
correto.
Idealmente,
o
servidor
deve
verificar
independentemente a identidade do usuário [6].
Figura 30 – Operação PAP [3]
8.2.4.2. CHAP
O Protocolo de Autenticação com Desafio para Handshake (CHAP) é semelhante
ao PAP, entretanto é considerado mais sofisticado e, desde que se evite transmitir a senha
sobre o canal de comunicação, também pode ser considerado mais seguro. Para isso, o usuário
deve fornecer a resposta de um desafio fornecido pelo autenticador. O suporte ao CHAP foi
considerado uma das principais funções do RADIUS como um protocolo do AAA (vide
definição no capítulo 6) para suportar aplicações dial-up [6].
A mensagem de desafio para acesso está incluída no escopo da mensagem do
RADIUS permitindo que o servidor emita um desafio ao cliente para a autenticação do
usuário. Em detrimento às finalidades práticas, o desafio; geralmente; é emitido pelo NAS de
maneira mais eficiente que o servidor AAA, enquanto emiti uma mensagem de desafio para
acesso indicando que o servidor RADIUS necessita de alguma informação do usuário ou do
NAS para terminar o processo de autenticação.
96
No processo de funcionamento, ilustrado na Figura 31, um usuário é configurado
para se autenticar através do CHAP, no qual pede o NAS para se conectar a rede. Dessa forma,
o NAS emite um desafio de 128 bits ao usuário através de uma mensagem de desafio baseada
em CHAP acrescida de um ID. O usuário, então, responde esse desafio acrescentando à
mensagem seu nome (login). A resposta é calculada usando-se o MD5, tendo como
parâmetros de entrada o ID, o segredo do usuário e o desafio. Em seqüência o NAS cria um
pedido de acesso e, juntamente com os atributos especificados na tabela 6, o encaminha ao
servidor RADIUS.
Tabela 6 – Atributos enviados na Requisição de acesso para autenticação CHAP [6]
Atributo
Username (login)
Senha CHAP
Desafio CHAP
IP NAS
Porta NAS
Descrição
Nome do usuário CHAP
Este campo contém tanto o ID quanto a resposta CHAP do usuário ao
desafio proposto pelo NAS, ambos na mensagem de resposta CHAP
para o NAS.
Desafio apresentado pelo NAS
Endereço IP ou identificação para o NAS
Porta usada para conexão do usuário
Por fim o servidor RADIUS verifica a senha e nome do usuário calculando com o
hash, da mesma forma feita anteriormente. Caso o resultado seja o mesmo do valor incluso no
campo Senha CHAP, o servidor retornará ao NAS a permissão para acesso. Se o resultado não
for o mesmo, será enviada uma mensagem de acesso negado.
Figura 31 – Operação CHAP [3]
8.2.4.3. RADIUS com EAP
Como mencionado no capítulo 7, o EAP é designado para oferecer suporte a um
97
protocolo de autenticação qualquer sem exigir mudanças ou correções no NAS. Ao trafegar
entre o NAS e o servidor RADIUS, as mensagens EAP são carregadas por algum protocolo de
autenticação (AAA). A flexibilidade e extesibilidade do RADIUS permitem que suas
mensagens transportem mensagens de outros protocolos. Dessa forma, a junção EAPRADIUS permite que as mensagens com esquemas de autenticação do EAP sejam encaixadas
dentro dos atributos do RADIUS e carregadas ao longo das mensagens do RADIUS. Esse
processo está mostrado na Figura 32.
Figura 32 – Inserindo mensagens EAP no RADIUS [6]
Os pedidos do servidor RADIUS ao usuário (mensagens do pedido de EAP) são
carregados dentro das mensagens do desafio do acesso do RADIUS. O NAS retira o pedido de
EAP do desafio do acesso e emitem-no sobre um protocolo da camada 2 ao usuário. As
respostas do usuário para o servidor RADIUS são inseridas na resposta EAP para o NAS, na
qual é encapsulada na mensagem de requisição de acesso enviada para o servidor. Esse
encapsulamento significa que as mensagens EAP estão incluídas em um atributo específico da
mensagem EAP dentro de uma mensagem RADIUS.
8.2.5. Contabilidade
Os principais documentos que especificam a contabilidade do RADIUS são as
RFC’s 2866 e 3580, embora a primeira seja mais enfática. O procedimento da contabilidade é
baseado em um modelo cliente-servidor onde o cliente (NAS) passa a informação de
contabilidade do usuário ao servidor RADIUS, que hospeda a máquina de contabilidade do
98
RADIUS.
A contabilidade do RADIUS, conforme a Figura 33, usa dois tipos de mensagens:
pedido e resposta; ambas transportadas pelo UDP. Os pedidos da contabilidade são emitidos
sempre do cliente RADIUS para o servidor, enquanto as respostas da contabilidade são
geradas pelo servidor RADIUS, além de receber e processar os pedidos da contabilidade.
Figura 33 – Mensagens de contabilidade no RADIUS [6]
Na operação básica da contabilidade, mostrada na Figura 34, um NAS capaz de
suportar a contabilidade do RADIUS envia um pacote de inicio de contabilidade ao servidor.
Esse pacote especifica o tipo e o usuário do serviço que estão sendo entregues. Recebendo
este pedido, o servidor armazena o registro, reconhece o pedido e gera a resposta;
confirmando o recebimento.
Em seguida o cliente gera um pacote de fim de contabilidade e o envia ao servidor.
Neste pacote é incluso informações e estatísticas adicionais como o tipo de serviço entregue,
tempo de conexão, motivo que ocasionou a desconexão, entre outros. Após receber este
pacote, o servidor envia confirmação de recebimento. Caso o servidor seja incapaz de
armazenar o pacote, não será enviada a confirmação de recebimento.
99
Figura 34 – Troca de Mensagens da Contabilidade [6]
8.2.5.1. Segurança e Confiabilidade
O fato de que o RADIUS seja transportado através do UDP, torna-se muito baixa a
confiabilidade e a garantia de entrega dos dados. Dessa forma, é possível que pacotes de
contabilidade sejam perdidos pela rede.
Informações incorretas e/ou incompletas resultam na incapacidade do servidor de
armazenar os pacotes, fazendo com que a confirmação de recebimento não chegue ao usuário.
Dessa forma, o usuário não será contabilizado no sistema. Alguns administradores podem,
ainda, implementar um limite de sessões simultâneas que o NAS pode executar durante
determinado intervalo de tempo, gerando até congestionamento. Implementações onde o NAS
tem um limite de tempo (50 horas mensais, por exemplo) para ficar conectado são situações
onde podem ocorrer maiores transtornos. Caso o servidor não seja capaz de contabilizar a
quantidade de horas que determinado cliente já usou, o NAS poderá usufruir da rede bem mais
ou bem menos que 50 horas mensais.
Soluções propostas pelas RFC’s não são animadoras; sugerindo que o NAS emita
pedidos de contabilidade até o reconhecimento do servidor. Entretanto, a inclusão de medidas
simples como o mecanismo de back-off, o servidor irá enviar o reconhecimento em momentos
de tráfego menos intenso. Aumentar o limite de tentativas feitas pelo NAS, também contribui
100
para a confirmação do reconhecimento. O tempo de espera pelo qual o NAS espera o
reconhecimento também pode aumentar muito, pois, não contribuirá muito para o
congestionamento.
Em relação à segurança, a contabilidade do RADIUS é mais eficaz. Pedidos e
respostas da contabilidade são autenticados usando o MD5; configurados e compartilhados de
maneira secreta entre cliente (NAS) e usuário. Para pedidos de contabilidade, são passados
para o MD5 os seguintes parâmetros: código, ID, comprimento, 128 bits vazios, atributos do
pedido e segredo compartilhado. O resultado dessa função (valor do autenticador) será um dos
parâmetros para os pacotes de resposta da contabilidade. Além do valor do autenticador, os
pacotes de resposta da contabilidade têm os seguintes parâmetros: código, ID, comprimento e
segredo compartilhado.
8.3. Diameter
Com o objetivo de corrigir os problemas apresentados pelo RADIUS, o IETF
padronizou o Diameter (RFC 3580). Entretanto, esse modelo não é objetivo deste trabalho,
pois, apesar de problemas, o RADIUS se mostra eficiente em várias aplicações, especialmente
no estudo de caso abordado no próximo capítulo. Dessa forma, aqui serão tratadas apenas
algumas diferenças entre RADIUS e Diameter.
8.3.1. Fail-Over
Trata-se de um processo no qual os dispositivos passam todos os pedidos
pendentes de um para o outro. Para que isto seja possível, entretanto, requer-se que os nós
tenham suporte à falhas, ajustando a mensagem do Diameter.
O RADIUS não define um padrão fail-over e, consequentemente, sua
implementação pode se tornar diferente entre as aplicações RADIUS. O Diameter, ao
contrário, é mais resistente a falhas de transporte fornecendo o fail-over e funcionando da
seguinte forma: uma fila de mensagens pendentes para cada par é mantida em um nó do
Diameter. Quando uma resposta é recebida, o pedido correspondente é removido da fila.
101
8.3.2. Mensagens iniciadas em Servidor
No RADIUS, esse procedimento é opcional tornando-se difícil a implementação
de melhoramentos tais como a desconexão não solicitada ou re-autenticação/re-autorização.
Esse processo no Diameter é obrigatório.
8.3.3. Transporte Confiável
O uso do UDP no transporte e a falta de especificações de retransmissão do
RADIUS fazem com que a confiabilidade na contabilidade seja bastante questionada, pois, a
perda de pacotes é seqüenciada da perda de rendimentos. O Diameter não passa por estes
transtornos já que utiliza o TCP em seu transporte.
8.3.4. Capacidade de Negociação
O cliente e o servidor não sabem indicar de um para o outro seus suportes de
atributos e o RADIUS não suporta mensagens de erro. Ou seja, a capacidade de descobrir e
negociar serviços mutuamente agregados, pode ser difícil pro RADIUS. Já o Diameter
suporta a manipulação de erros, negociação de potencialidade, bem como maneiras de indicar
suporte ao par atributo/valor.
8.3.5. Questões de Segurança
A autenticação é baseada em segredos compartilhados, mas a confiabilidade é
estabelecida apenas entre equipamentos vizinhos e não em comunicação fim-a-fim. Ataques
maliciosos entre cliente e servidor podem modificar atributos ou até mesmo cabeçalhos de
pacotes a serem utilizados. E, no RADIUS, não é oferecida confiabilidade no pacote, apenas
nos atributos. Apesar de o protocolo de contabilidade do RADIUS conter edições de proteção,
o IPSec é oferecido apenas a versões IPv6 do RADIUS.
Além de definir segurança a nível de transmissão e fim a fim, o Diameter tem
suporte obrigatório ao IPSec e suporte TLS opcional para clientes. Porém, a segurança do
objeto de dados no Diameter não é obrigatório.
102
8.3.6. Descoberta e Configuração do Par
A implementação do RADIUS geralmente requer que o nome ou endereço dos
servidores ou clientes sejam configurados manualmente, junto com os respectivos segredos
compartilhados.
Isso
resulta
em
uma
grande
sobrecarga
ao
administrador
e,
consequentemente, em uma escolha para que seja feito o reuso dos segredos compartilhados
por vários clientes (NAS), podendo resultar em maiores vulnerabilidades.
Através do DNS, o Diameter permite a descoberta dinâmica dos pares. A
derivação de chaves dinâmicas da sessão é permitida através da segurança a nível de
transmissão.
8.3.7. Compatibilidade inversa com o RADIUS
Enquanto o Diameter não compartilhar um formato comum de mensagem com o
RADIUS, o considerável esforço tem sido significativo a fim de permitir a compatibilidade
inversa com o RADIUS, de modo que os dois pudessem ser utilizados na mesma rede.
Entretanto espera-se que ocorra comunicação entre dispositivos RADIUS e Diameter.
9. Estudo de Caso: Implementação de uma Rede
sem Fio no Parque Tecnológico de Itaipu
Depois de todo o embasamento teórico relativo às redes 802.11, neste capítulo será
tratado um estudo de caso com o objetivo de evidenciar que todas as abordagens dos capítulos
anteriores, principalmente no que tange o padrão IEEE 802.11i, são mecanismos de segurança
eficientes contra a invasão e ataques de todo e qualquer tipo de hacker.
Para isso serão analisados aqui, todos os procedimentos da implementação de uma
rede sem fio no Parque Tecnológico de Itaipu (PTI), desenvolvido em dezembro de 2006,
pelo acadêmico do Curso de Ciências da Computação, Rodrigo Reniê Braga, da Universidade
Estadual do Oeste do Paraná. Primeiramente, serão descritas as tecnologias utilizadas com
suas respectivas justificativas. Após todas as explicações de como a estrutura foi montada,
ataques propositais foram feitos à rede justamente com o intuito de provar sua resistência aos
ataques.
Dessa forma, no final deste capítulo, o objetivo principal deste trabalho será
alcançado: demonstrar que existem soluções eficientes em prol das redes wireless.
9.1. Ambiente de Preparação
A Figura 35 ilustra a arquitetura da rede do PTI antes da implantação 802.11.
Nela, pode-se observar a presença de três firewall, interligando o servidor Web (Apache) à
rede interna, rede empresas e à Internet. Na rede interna estão os funcionários do PTI e na
rede empresas estão conectadas todas as empresas do PTI, todas com acesso irrestrito à
Internet e cada empresa decide suas próprias políticas de segurança tornando-as, de certa
forma, independente da arquitetura do PTI. Brevemente essa rede será demonstrada após a
implementação.
104
9.1.1. Mecanismos Utilizados
No PTI foram utilizados mecanismos de criptografia e controle de acesso. Em
relação à criptografia, decidiu-se utilizar o WPA2, pois os access points usados na
implementação suportam esse mecanismo. Além disso, a maioria dos fabricantes de
dispositivos oferece suporte aos usuários do WPA2.
Figura 35 – Arquitetura da rede antes da implementação [1]
Para o controle de acesso foi utilizado um servidor de autenticação RADIUS
baseado no 802.1x, usando freeRadius, no qual se trata de um sotfware mais eficiente e fácil
para se implementar o RADIUS, e credenciais armazenadas no banco de dados MySQL.
Pode-se, portanto, verificar forte presença do 802.11i no ambiente de implementação
abordado.
9.1.2. Estrutura Física
Quanto à localização dos AP’s, a Figura 36 ilustra seus respectivos
posicionamentos. Deve-se observar que a ilustração desta figura mostra o formato exato do
prédio do PTI onde a rede foi implementada, ou seja, o formato da letra “H”.
105
Já na Figura 37, tem-se a rede após a implementação. Nela observa-se que o
servidor de autenticação foi instalado juntamente com o apache e do RADIUS difundiram-se
os AP’s. No caso das credenciais, o servidor MySQL que já estava presente na rede foi
aproveitado sofrendo algumas modificações.
Figura 36 – Representação do prédio do PTI e a distribuição dos AP’s [1]
Figura 37 – Proposta de implantação de rede sem fio segura no PTI [1]
106
9.2. Ambiente de Testes
Após a implementação foram realizados ataques propositais à rede visando
comprovar a eficiência ou vulnerabilidade dos métodos de defesa utilizados. Para isso, foram
utilizadas ferramentas específicas de ataques. O ambiente de testes foi caracterizado de acordo
com a figura 38, na qual a estação 1 representa um suposto usuário usando Windows XP e a
estação 2 indica o atacante, sendo auxiliado por um Sistema Operacional Linux.
Figura 388 – Ambiente de Testes[1]
9.2.1. Ferramentas Utilizadas
Neste tópico poderá ser observado que as ferramentas utilizadas colocam em
prática ataques relacionados no capítulo 4. Cada uma delas tem suas especialidades, algumas
fazem espionagem, outras quebram chaves, etc.
9.2.1.1. Wireless-tools
Utilizado em ambientes Linux, o Wireless-tools é um conjunto de ferramentas
manipuladoras de interface de redes sem fio. Entre essas ferramentas, as que mais se destacam
são o iwconfig e iwlist.
107
Bastante útil em ataques de espionagem, o iwconfig ativa e visualiza parâmetros
do dispositivo atacado, tais como: freqüência utilizada, ESSID, modo da placa wireless
(ativado ou não). Caso haja mais de uma interface no dispositivo, todos esses parâmetros de
cada interface também serão capturados.
Atuando como um complemento do iwconfig, o iwlist visualiza informações não
mostradas na ferramenta anterior. A principal destas informações são quais as redes estão
cobrindo a área do dispositivo. Ainda informa SSID, endereço MAC do AP correspondente
ao SSID, canal de comunicação e tipo de encriptação utilizado, caso esteja configurado.
9.2.1.2. Aircrack-ng
Com diferentes propósitos do conjunto de ferramentas anterior, o aircrack-ng faz
captura e/ou inserção de pacotes, além de quebrar chaves WEP. Suas principais ferramentas
são o airodump-ng e aircrack-ng.
Além de fazer um trabalho semelhante ao iwlist, no airodump-ng pacotes são
capturados, salvando-os em um arquivo a fim de serem analisados. Utilizando este arquivo e
explorando as vulnerabilidades do RC4, o aircrack-ng tem o objetivo de quebrar chaves
WEP.
9.2.2. Abordagens de Segurança
Este tópico mostrará na prática as vulnerabilidades dos mecanismos pautados no
capítulo 4, bem como a abordagem mais segura. É válido ressaltar que todas essas abordagens
foram testadas no PTI.
9.2.2.1. Autenticação por endereço MAC e SSID
Mais adequado em residências e pequenas empresas, essa abordagem autentica
apenas máquinas com MAC’s conhecidos pelo RADIUS. Além disso, o SSID não é
distribuído automaticamente, ou seja, o usuário deve conhecer o nome da rede para ser
autenticado.
108
Apesar de todas essas configurações, o modelo é falho devido à falta de
criptografia. A utilização do airodump-ng captura facilmente todas as informações, inclusive
SSID e endereço MAC. Como o SSID não está sendo transmitido pelo AP, a ferramenta de
captura deve operar até que um pedido de associação seja feito. Assim o SSID é obtido sem
muito esforço. Nesse momento o MAC também será obtido. Um comando chamado
macchanger, modificará endereços MAC de dispositivos de redes (tanto wireless quanto
cabeadas).
De posse do SSID e MAC, basta que um comando dhclient seja ordenado na
interface do dispositivo atacante a fim de disponibilizar um endereço IP e, consequentemente,
obter acesso irrestrito à rede. Este procedimento torna-se eficiente apenas quando usar o
serviço de distribuição de endereços automaticamente, o que ocorre na maioria das
implementações.
9.2.2.2. Criptografia WEP
Tirando proveito das vulnerabilidades do WEP, a chave pré-compartilhada pelas
estações da rede será obtida a partir da captura de tráfego, mesmo que os dados estejam
criptografados. Utilizando-se o aircrack-ng, uma chave de 64 bits pode ser facilmente
quebrada após a captura de 300 mil Vetores de inicialização (IV). Para essa captura, é
utilizado o airodump-ng. Para quebrar a chave, o seguinte comando é utilizado:
Onde:
•
-n: tamanho da chave WEP
•
-b: endereço MAC do AP a ser atacado. Considera-se que o AP enviou pacotes
e, consequentemente, essas informações foram obtidas.
•
dump.cap: arquivo gerado pelo airodump-ng
Dessa forma, uma chave “abcd123456” por exemplo, é quebrada em apenas 5
segundos.
109
9.2.2.3. Criptografia WPA2 com Servidor RADIUS
Baseado no IEEE 802.11i, utilizando AES com CCMP e auxiliado com um
Servidor RADIUS, essa abordagem visa fornecer encriptação e integridade de dados além da
autenticação da estação.
Utilizando-se o airodump-ng, dados podem ser capturados. Entretanto, não
existem documentos comprovando a ineficácia do AES. Nessa abordagem, portanto, dados
podem ser capturados, mas não cifrados.
No que tange autenticação, o atacante só obterá acesso a rede se possuir login e
senha. Para isso, a única forma de obtenção é através de Engenharia Social onde o atacante
tenta, de alguma forma, obter os dados necessários para se autenticar.
10. Conclusões e trabalhos futuros
Este trabalho mostrou o quanto é fácil invadir um ambiente sem fio. Sobretudo,
informou também que, manter este ambiente com segurança não é uma tarefa tão difícil. A
partir do momento em que usuários e administradores estejam conscientes desses fatos, os
objetivos serão alcançados com mais facilidade.
O princípio de tudo foi a padronização IEEE 802.11, melhorando a qualidade e
praticidade das implementações de redes sem fio. Com o WEP, houve, de forma primitiva,
um melhoramento nos quesitos de segurança do 802.11 e, num curto período de tempo,
percebeu-se vários pontos fracos deste mecanismo de criptografia. Nessa época, um fato já
estava consumado: apenas a criptografia WEP era longe de ser o suficiente para garantir os
princípios de segurança: autenticidade, integridade e confidencialidade.
Após alguns anos, deu-se origem ao IEEE 802.11i, o qual trouxe consigo uma
série de inovações. Entre elas está o WPA, cobrindo as vulnerabilidades do seu antecessor, o
WEP. O problema do WPA foi seu surgimento precoce, antes do fechamento do padrão
802.11i. Embora tenha representado grande evolução, além de questões de compatibilidade, o
WPA ainda utiliza o RC4, mesmo algoritmo de criptografia do WEP. Após a conclusão do
802.11i, foi criado o WPA2, usando um algoritmo de criptografia ainda inquebrável até a data
de produção deste trabalho: AES.
Entretanto, o ponto principal do 802.11i é a idéia de que apenas um mecanismo
não é o suficiente para garantir a segurança necessária. Afinal, o que adianta manter os dados
criptografados sendo que qualquer um pode obter acesso à rede? Por isso, o 802.11i especifica
também o IEEE 802.1x, promovendo soluções em autenticação e garantindo o controle de
acesso à rede. Para que esse controle de aceso seja implementado, a principal ferramenta
utilizada é o RADIUS e, apesar de o 802.1x não especificar, esse modelo é o mais
implementado devido à sua eficiência e facilidade na implementação. O RADIUS ainda conta
com o auxilio do protocolo EAP, responsável por coordenar as mensagens trocadas por
suplicante, autenticador e servidor de autenticação (RADIUS).
111
Todas essas definições foram colocadas em prática no Estudo de Caso, onde foi
demonstrado que o padrão IEEE 802.11i representa uma grande evolução no que tange a
segurança das redes 802.11. Ainda não existem maneiras eficientes de invadir uma rede
802.11 embasada na implementação do WPA2 juntamente com um servidor RADIUS
fazendo o controle de acesso e até mesmo trabalhando como servidor AAA, desempenhando
funções de autenticação, autorização e contabilidade.
Como foi abordado, o RADIUS possui desvantagens, apesar de que não houve
problemas no Estudo de Caso. A fim de suprir os problemas do RADIUS, foi desenvolvido
um provável substituto denominado DIAMETER.
Então, a primeira sugestão de trabalhos futuros é um detalhamento da abordagem
dessa substituição do RADIUS pelo DIAMETER; objetivando resultados de quais são as
vantagens e desvantagens nesse procedimento de substituição.
Outra sugestão também, é o desenvolvimento de métodos e ferramentas para
identificar um possível ataque especificando, por exemplo, a localização física do dispositivo
atacante. Opções de complementos à determinada implementação como integração
permitindo que, numa rede mista entre sem fio e cabeada, o usuário possa se autenticar em
ambas.
112
REFERÊNCIAS BIBLIOGRÁFICAS
1. BRAGA, RODRIGO RENIE. Estudo e análise dos protocolos de segurança em redes sem
fio 802.11 e suas vulnerabilidades – Parque Tecnológico de Itaipu: um Estudo de Caso. Foz
do Iguaçu: Universidade Estadual do Oeste do Paraná, Campus de Foz do Iguaçu, 2006. 84p.
2. DUARTE, LUIZ OTÁVIO. Análise de vulnerabilidades e ataques inerentes a redes sem fio
802.11x. São José do Rio Preto: Universidade Estadual de São Paulo, Campus de São José do
Rio Preto, 2003. 55p.
3. EDNEY, J., ARBAUGH W. A. Real 802.11 security: wi-fi protected access and 802.11i.
Boston: Addison Wesley, 2003.
4. GAST, M. S. 802.11 Wireless Networks: The Definitive Guide. O’Reilly, 2002.
5. KUROSE, J. F., ROSS, K. W. Redes de Computadores e a Internet: uma Abordagem Topdown. Traduzido por Arlete Simille Marques. São Paulo: Addison Wesley, 2005.
6. NAKHJIRI, M. AAA and network security for mobile access. Chichester: Wiley, 2005.
7. RUFINO, N. M. O. Segurança em Redes sem Fio. São Paulo: Novatec, 2005.
8. SCRIMGER, R. TCP/IP: A Bíblia. Rio de Janeiro: Campus, 2002.
9. TANENBAUM, A. S. Redes de Computadores. Traduzido por Vandenberg D. de Souza.
Rio de Janeiro: Campus, 2003.
10. TORRES, G. Redes de Computadores – Curso Completo, Rio de Janeiro: Axcel Books,
2001.
11. VASQUES, ALAN TAMER. Implementação de uma VPN em Linux utilizando o
protocolo IPSec. Belém: Centro Universitário do Estado do Pará, 2002. 72p.
Download

PFC Completo_1_1