Logica BAN 2004

70
UNIVERSIDADE REGIONAL DE BLUMENAU CENTRO DE CIÊNCIAS TECNOLÓGICAS CURSO DE ENGENHARIA DE TELECOMUNICAÇÕES FERRAMENTA DE ANÁLISE MODAL DE PROTOCOLOS DE SEGURANÇA PARA REDES SEM FIO FÁBIO FERNANDES BEZERRA BLUMENAU, 2004

Transcript of Logica BAN 2004

Page 1: Logica BAN 2004

UNIVERSIDADE REGIONAL DE BLUMENAU

CENTRO DE CIÊNCIAS TECNOLÓGICAS

CURSO DE ENGENHARIA DE TELECOMUNICAÇÕES

FERRAMENTA DE ANÁLISE MODAL DE PROTOCOLOS DE SEGURANÇA

PARA REDES SEM FIO

FÁBIO FERNANDES BEZERRA

BLUMENAU, 2004

Page 2: Logica BAN 2004

I

FÁBIO FERNANDES BEZERRA

FERRAMENTA DE ANÁLISE MODAL DE PROTOCOLOS DE SEGURANÇA

PARA REDES SEM FIO

Trabalho de Conclusão de Curso submetido à

Universidade Regional de Blumenau para a

obtenção dos créditos na disciplina Trabalho

de Conclusão de Curso do curso de

Engenharia de Telecomunicações.

Prof. Francisco Adell Péricas – Orientador

BLUMENAU, 2004

Page 3: Logica BAN 2004

II

FERRAMENTA DE ANÁLISE MODAL DE PROTOCOLOS DE SEGURANÇA

PARA REDES SEM FIO

FÁBIO FERNANDES BEZERRA

ESTE TRABALHO DE CONCLUSÃO DE CURSO FOI JULGADO ADEQUADO

PARA OBTENÇÃO DOS CRÉDITOS NA DISCIPLINA DE TRABALHO DE

CONCLUSÃO DE CURSO OBRIGATÓRIA PARA A OBTENÇÃO DO TÍTULO DE:

ENGENHEIRO DE TELECOMUNICAÇÕES

______________________________________________

Prof. Francisco Adell Péricas, Ms. – Orientador, FURB

______________________________________________

Prof. Romeu Hausmann – Coordenador do TCC, FURB

BANCA EXAMINADORA

______________________________________________

Prof. José Gil Fausto Zipf

______________________________________________

Prof. Ricardo José De Oliveira

Blumenau, 28 de Junho de 2004

Page 4: Logica BAN 2004

III

DEDICATÓRIA

Dedico este trabalho à memória do meu

irmão José Ricardo Fernandes Bezerra.

Page 5: Logica BAN 2004

IV

AGRADECIMENTOS

A Deus, pelas oportunidades que me proporcionou e pelo seu imenso amor.

À minha namorada, que sempre me incentivou e deu força para não desistir.

À minha família, que sempre acreditou no meu potencial.

Ao meu orientador, Francisco Adell Péricas que compreendeu a importância

deste trabalho e aceitou orientar-me.

Page 6: Logica BAN 2004

V

RESUMO

Este trabalho apresenta o desenvolvimento de uma ferramenta de análise de protocolos de segurança destinados a redes sem fio (redes móveis), em particular aos protocolos de autenticação. A ferramenta visa automatizar o processo de análise dos protocolos, especificados na forma de uma lista de crenças e de regras, fundamentado na aplicação do método modal baseado nos postulados da lógica BAN.

Page 7: Logica BAN 2004

VI

ABSTRACT

This work presents the development of a tool of security protocols analysis destined of a wireless net (mobiles nets), particularly to authentication protocols. The tool aims at to automatize the process of analysis of the protocols, specified in the form of a list of beliefs and rules, founded on application of modal method based in the BAN logic postulates.

Page 8: Logica BAN 2004

VII

SUMÁRIO

1 INTRODUÇÃO...................................................................................................10

1.1 MOTIVAÇÃO ..............................................................................................10 1.2 OBJETIVOS GERAIS .................................................................................11 1.3 OBJETIVOS ESPECÍFICOS.......................................................................11 1.4 ORGANIZAÇÃO DO TRABALHO...............................................................12

2 SEGURANÇA DE REDE ...................................................................................13

2.1 INTRODUÇÃO............................................................................................13 2.2 CRIPTOGRAFIA .........................................................................................14 2.3 SISTEMAS CRIPTOGRÁFICOS.................................................................15

2.3.1 Algoritmos de Criptografia ...................................................................15 2.3.2 Sistemas Criptográficos de Chave Simétrica.......................................16 2.3.3 Sistemas Criptográficos de Chave Assimétrica ...................................17

2.4 ASSINATURA DIGITAL ..............................................................................18 2.4.1 Assinatura Digital em Sistemas de Chave Simétrica ...........................18 2.4.2 Assinatura Digital em Sistemas de Chave Assimétrica........................19 2.4.3 Sumários de Mensagens .....................................................................19

2.5 PROTOCOLOS DE AUTENTICAÇÃO........................................................20 2.6 DISTRIBUIÇÃO DE CHAVES.....................................................................21

3 REDES SEM FIO ...............................................................................................23

3.1 INTRODUÇÃO............................................................................................23 3.2 SISTEMAS MÓVEIS...................................................................................23 3.3 REDE LOCAL SEM FIO..............................................................................24 3.4 SISTEMA CELULAR...................................................................................25

3.4.1 Componentes do Sistema Celular .......................................................25 3.4.2 Evolução das Redes Celulares............................................................26

3.5 SEGURANÇA EM SISTEMAS MÓVEIS .....................................................28

4 MÉTODOS DE ANÁLISE DE PROTOCOLOS E LÓGICA BAN .......................31

4.1 INTRODUÇÃO............................................................................................31 4.2 MÉTODOS FORMAIS.................................................................................32

4.2.1 Métodos Baseados em Linguagem de Verificação..............................32 4.2.2 Métodos Baseados em Sistemas Especialistas...................................32 4.2.3 Métodos Baseados em Lógicas Modais ..............................................33 4.2.4 Métodos Baseados em Sistemas Algébricos.......................................33

4.3 LÓGICA BAN ..............................................................................................33 4.3.1 Notação Básica....................................................................................34 4.3.2 Postulados ...........................................................................................35

4.3.2.1 Regra 1 – Significado da Mensagem (Message Meaning Rule).......35 4.3.2.2 Regra 2 – Verificação de Identificador (Nonce Verification Rule) .36 4.3.2.3 Regra 3 – Jurisdição (Jurisdiction Rule) .......................................36 4.3.2.4 Regra 4 – Conjunto de Crenças ...................................................37 4.3.2.5 Regra 5 – Conjunto de Autoridade ...............................................37 4.3.2.6 Regra 6 – Conjunto de Recebimento............................................37 4.3.2.7 Regra 7 – Novidade......................................................................37 4.3.2.8 Regra 8 – Duas Vias da Chave ....................................................38

Page 9: Logica BAN 2004

VIII

4.3.3 Aplicação da Lógica BAN ....................................................................38

5 IMPLEMENTAÇÃO DA FERRAMENTA ...........................................................43

5.1 INTRODUÇÃO............................................................................................43 5.2 REQUISITOS BÁSICOS DA FERRAMENTA .............................................43 5.3 ESPECIFICAÇÃO DA FERRAMENTA .......................................................45

5.3.1 Estrutura ..............................................................................................45 5.3.2 Algoritmo de Análise ............................................................................51

5.4 IMPLEMENTAÇÃO.....................................................................................53 5.4.1 Ferramentas de Desenvolvimento .......................................................53 5.4.2 Interface com o Usuário.......................................................................54

5.4.2.1 Janela Principal ............................................................................54 5.4.2.2 Janela de Edição dos Arquivos de Análise...................................55 5.4.2.3 Janela de Edição das Mensagens do Protocolo Idealizado..........56 5.4.2.4 Janela de Edição das Crenças .....................................................56 5.4.2.5 Janela de Edição dos Objetivos....................................................57 5.4.2.6 Janela de Opções.........................................................................57 5.4.2.7 Janela de Resultados ...................................................................58

5.5 PROCEDIMENTOS OPERACIONAIS ........................................................59 5.5.1 Nova Análise........................................................................................59 5.5.2 Última Análise ......................................................................................63 5.5.3 Configuração........................................................................................64 5.5.4 Outras Operações................................................................................64

5.6 TESTES......................................................................................................65

6 CONCLUSÃO ....................................................................................................67

7 REFERÊNCIAS BIBLIOGRÁFICAS..................................................................69

Page 10: Logica BAN 2004

IX

LISTA DE FIGURAS

FIGURA 1 – FORMAS DE AÇÃO DO INTRUSO....................................................................13 FIGURA 2 – SISTEMA CRIPTOGRÁFICO DE CHAVE SIMÉTRICA............................................16 FIGURA 3 – SISTEMA CRIPTOGRÁFICO DE CHAVE ASSIMÉTRICA ........................................17 FIGURA 4 – ESQUEMA DE ASSINATURA DIGITAL ..............................................................18 FIGURA 5 – DISTRIBUIÇÃO DE CHAVES DE DIFFIE-HELLMAN ............................................22 FIGURA 6 – REDE WLAN.............................................................................................24 FIGURA 7 – ESTRUTURA CELULAR ................................................................................25 FIGURA 8 – COMPONENTES DO SISTEMA CELULAR..........................................................26 FIGURA 9 – PADRÃO FDMA.........................................................................................27 FIGURA 10 – PADRÃO TDMA E CDMA.........................................................................28 FIGURA 11 – PROTOCOLO DE DISTRIBUIÇÃO DE CHAVES DE NEEDHAM-SCHROEDER .........38 FIGURA 12 – DIAGRAMA DE CASO DE USO......................................................................45 FIGURA 13 – DIAGRAMA DE CLASSES DE PERSISTÊNCIA ..................................................48 FIGURA 14 – DIAGRAMA DE CLASSES DE ANÁLISE...........................................................50 FIGURA 15 – ALGORITMO DE ANÁLISE ...........................................................................52 FIGURA 16 – AMBIENTE DE TRABALHO DO MODELMAKER ...............................................53 FIGURA 17 – AMBIENTE DE TRABALHO DO DELPHI 7.0 ....................................................54 FIGURA 18 – JANELA PRINCIPAL DA FERRAMENTA...........................................................55 FIGURA 19 – JANELA DE EDIÇÃO DE ANÁLISE .................................................................55 FIGURA 20 – JANELA DE EDIÇÃO DE MENSAGEM .............................................................56 FIGURA 21 – JANELA DE EDIÇÃO DE CRENÇA .................................................................57 FIGURA 22 – JANELA DE EDIÇÃO DE OBJETIVO ...............................................................57 FIGURA 23 – JANELA DE OPÇÕES .................................................................................58 FIGURA 24 – JANELA DE VISUALIZAÇÃO DE RESULTADOS.................................................58 FIGURA 25 – PRIMEIRO PASSO DE UMA NOVA ANÁLISE ....................................................59 FIGURA 26 – SEGUNDO PASSO DE UMA NOVA ANÁLISE....................................................60 FIGURA 27 – TERCEIRO PASSO DE UMA NOVA ANÁLISE ...................................................60 FIGURA 28 – QUARTO PASSO DE UMA NOVA ANÁLISE ......................................................61 FIGURA 29 – QUINTO PASSO DE UMA NOVA ANÁLISE .......................................................62 FIGURA 30 – ÚLTIMO PASSO DE UMA NOVA ANÁLISE ......................................................63 FIGURA 31 – DIÁLOGO DE QUESTIONAMENTO SOBRE REANÁLISE .....................................63 FIGURA 32 – DIÁLOGO DE QUESTIONAMENTO SOBRE CRENÇA DUVIDOSA..........................64 FIGURA 33 – MENU ARQUIVO .......................................................................................64 FIGURA 34 – RESULTADO OBTIDO ATRAVÉS DA FERRAMENTA ..........................................66

LISTA DE QUADROS E TABELAS

TABELA 1 – NOTAÇÃO BÁSICA DA LÓGICA BAN ..............................................................35 QUADRO 1 – FORMATO GERAL DOS ARQUIVOS DA FERRAMENTA ......................................45 QUADRO 2 – FORMATO DOS ARQUIVOS DE ANÁLISE ........................................................46 QUADRO 3 – FORMATO DOS ARQUIVOS DE RESULTADO .................................................47 QUADRO 4 – RESULTADO DA ANÁLISE MANUAL...............................................................65

Page 11: Logica BAN 2004

10

1 INTRODUÇÃO

1.1 MOTIVAÇÃO

Das tecnologias de comunicações, as que utilizam o ar como meio de

propagação, conhecidas como sem fio (wireless), são as que representam a maior

tendência de necessidade da sociedade moderna. Estima-se que em 2015, metade

da população possuirá celular ou outro equipamento móvel de comunicação sem fio

(RNT, 2004).

A quase total liberdade de localização associada à quantidade de serviços

agregados permite grande adesão a estas tecnologias. Dentre os demais serviços,

operações bancárias, compras on-line, troca de mensagens, conversações, são os

exemplos mais comuns. Nesses serviços estão envolvidas trocas de informações

que na maioria das vezes requerem alto grau de segurança, por motivos bastante

óbvios, que abrangem desde motivos financeiro a particulares. O não cumprimento

desse requisito básico prejudica diretamente a confiabilidade do serviço e da

tecnologia, comprometendo a difusão da mesma.

Nos sistemas de comunicação sem fio, também conhecidos como

comunicações móveis, o princípio básico consiste na troca de mensagens entre as

partes envolvidas. A interceptação indesejada destas mensagens por intrusos

permite-lhes interagir através da exclusão, alteração e armazenamento impróprio

das informações contidas nas mesmas. Num ambiente sem fio, como é o caso das

comunicações móveis, esse problema é bastante grave, pois a interceptação é feita

sem que o intruso possa ser detectado devido ao meio utilizado para a propagação.

Assim, informações importantes oriundas da utilização dos serviços, como senhas,

chaves, documentos secretos, correm o risco de ficarem expostas a pessoas não

autorizadas.

Dessa forma, para que essas informações sejam protegidas, técnicas e

métodos são empregados com o objetivo de evitar as ações de intrusos. Mediante o

desenvolvimento de protocolos criptográficos, empregando técnicas de criptografia é

possível proteger essas informações, atingindo os objetivos da sigibilidade,

autenticidade, integridade e não-repúdio, necessários para a segurança.

Page 12: Logica BAN 2004

11

Existem diversos protocolos de segurança que se propõem a fornecer a

segurança necessária para as informações tramitadas entre as entidades da

comunicação móvel (sem fio). Porém, observa-se que muitos dos objetivos

propostos pelos protocolos utilizados não são atingidos e que na maioria das vezes,

essas falhas são detectadas após a fase de publicação dos mesmos, o que

despende perdas consideráveis de recursos que poderiam ser evitadas caso as

falhas fossem detectadas antes desta fase.

Para que possa ser detectada prematuramente e minimizada a ocorrência

dessas falhas nos protocolos de segurança, vários métodos de análise são

propostos. O método de análise modal empregando lógica BAN é o que apresenta

resultados satisfatórios com grau de complexidade relativamente baixo com relação

a outros métodos, além de ser um dos métodos mais difundidos.

1.2 OBJETIVOS GERAIS

Este trabalho tem a finalidade de desenvolver uma ferramenta de software

para análise de protocolos de segurança para redes sem fio, em particular

protocolos de autenticação, empregando lógica BAN.

1.3 OBJETIVOS ESPECÍFICOS

• Estudar como as informações modeladas se correlacionam na obtenção

dos resultados lógicos;

• Especificar o tipo e a forma de entrada e saída das informações da

ferramenta;

• Desenvolver o algoritmo computacional capaz de aplicar as regras

previstas na lógica BAN;

• Utilizar a ferramenta para analisar alguns protocolos de segurança;

• Comparar os resultados obtidos através da utilização da ferramenta com

os obtidos a partir da análise manual dos protocolos.

Page 13: Logica BAN 2004

12

1.4 ORGANIZAÇÃO DO TRABALHO

Este trabalho está organizado em 6 capítulos, distribuídos da seguinte

forma:

Capítulo 1 – Introdução – Uma breve introdução sobre o assunto deste objeto de

pesquisa justificando a motivação para realização do trabalho, bem como sua

composição estrutural;

Capítulo 2 – Segurança de Rede – revisão bibliográfica sobre conceitos básicos de

segurança;

Capítulo 3 – Redes sem Fio – descrições conceituais básicas de redes sem fio e

métodos de segurança empregados;

Capítulo 4 – Métodos de Análise de Protocolos e Lógica BAN – apontamentos sobre

métodos de análise de protocolos de segurança e detalhamento do método de

análise modal baseado na lógica BAN empregado neste trabalho;

Capítulo 5 – Implementação da Ferramenta – aplicação dos conceitos especificados

e desenvolvimento do algoritmo de análise;

Capítulo 6 – Considerações Finais e Conclusão – algumas considerações sobre os

resultados obtidos e apresenta as principais conclusões deste trabalho.

Page 14: Logica BAN 2004

13

2 SEGURANÇA DE REDE

2.1 INTRODUÇÃO

Com a crescente demanda por serviços de comunicações móveis (wireless),

a segurança das informações se torna muito mais importante e necessária. A

demanda ocorre devido às características desta tecnologia, que permite alto grau de

mobilidade e provê uma quase total independência de localização. Porém, o meio

utilizado para propagação é muito hostil, pois propicia ao intruso, condições

necessárias para agir passivamente ou ativamente na interceptação e manipulação

dos dados trafegados sem que seja identificado (Figura 1).

Figura 1 – Formas de ação do intruso

A principal preocupação da segurança é garantir a proteção contra o acesso

ou a manipulação, intencional ou não, de informações confidenciais por pessoas não

autorizadas (TANEMBAUM, 2003).

Para garantir a segurança destas informações, foram desenvolvidos

sistemas criptográficos baseados em protocolos criptográficos. Um protocolo é um

conjunto de regras e convenções que definem uma estrutura de comunicação entre

Page 15: Logica BAN 2004

14

duas ou mais entidades da rede (SANTOS, 2002). Esses protocolos visam atender

os seguintes requisitos de segurança (BRASIL, 2000):

• sigilo: os dados são mantidos secretos e somente as partes autorizadas

podem visualizar seu conteúdo;

• integridade: a informação deve permanecer inalterada durante a sua

transferência;

• autenticação: a identidade das entidades deve ser legítima e confirmada;

• não-repúdio: o emissor da mensagem não poderá negar posteriormente

a autoria da mesma.

Esses requisitos baseiam-se nas necessidades básicas relacionadas à

segurança de rede que norteiam todos os trabalhos orientados a este fim. Outros

sistemas de comunicação tradicionais preocupam-se com estas questões, porém a

implementação da solução é mais simplificada (TANENBAUM, 2003), como por

exemplo, os serviços postais, onde o sigilo é obtido através do registro da

correspondência e a integridade através do bloqueio dos documentos. Obviamente,

no caso de redes de dados, esta implementação é feita através de métodos que

objetivam simular de forma análoga os métodos empregados no sistema exemplo.

2.2 CRIPTOGRAFIA

A criptografia caracteriza-se por ser a ciência de manter mensagens

secretas, onde a própria etimologia descreve como sendo formada pelas palavras

gregas que significam “escrita oculta”. Ao contrário do que muitos conclui, ela não

fornece segurança, e sim, permite alcançar os requisitos de segurança: sigilo,

autenticidade, integridade e não-repúdio (TANENBAUM, 2003).

Ela consiste em modificar o texto original da mensagem (texto legível, texto

claro) através de uma lógica (algoritmo), gerando uma mensagem de forma que ela

se torne ilegível (texto cifrado). O texto cifrado é transmitido e decifrado no destino.

O processo de ciframento e deciframento é realizado de acordo com algoritmos

matemáticos dependentes de uma informação adicional denominada chave. As

chaves devem ser de comum conhecimento entre as entidades envolvidas na

comunicação. A segurança efetiva é obtida não pelo segredo do algoritmo utilizado,

Page 16: Logica BAN 2004

15

conhecido como segredo pela obscuridade, mas pela manutenção do segredo da

chave, conhecido como princípio de Kerckhoff. Esse nome foi dado em homenagem

ao criptógrafo flamengo Auguste Kerckhoff. Para que algoritmos criptográficos sejam

considerados seguros, eles são publicados para que a criptoanálise possa avaliá-

los.

Os sistemas criptográficos são compostos por textos legíveis, textos

cifrados, algoritmo criptográfico e chaves que permitem que as entidades se

comuniquem segundo especificações dos protocolos de segurança. Existem dois

tipos de sistemas criptográficos: sistemas de chaves simétricas e sistemas de

chaves assimétricas.

Nos sistemas de chaves simétricas, ambas as entidades utilizam a mesma

chave para ciframento e deciframento, ao contrário dos sistemas de chaves

assimétricas, onde são utilizadas chaves de ciframento e deciframento diferentes.

Portanto, na manutenção do segredo dessas chaves concentra a atenções

da segurança de rede sem fio, com principal enfoque aos protocolos de

autenticação, onde as chaves de seção são estabelecidas entre as partes.

2.3 SISTEMAS CRIPTOGRÁFICOS

Os sistemas criptográficos constituem o principal método de segurança

empregado na segurança de redes sem fio. Eles são compostos por diversas partes

como texto legível, texto cifrado, algoritmos criptográficos, chaves. São divididos em

dois tipos: sistemas criptográficos de chaves simétricas e sistemas criptográficos de

chaves assimétricas.

2.3.1 Algoritmos de Criptografia

Os algoritmos constituem a lógica responsável pela transformação do texto

legível (texto claro) em texto cifrado (criptografado). Essas lógicas utilizam uma

informação adicional denominada de chave. Os algoritmos também conhecidos

como cifra, são classificados em duas categorias: cifras de substituição e cifras de

transposição (TANENBAUM, 2003). Essas categorias constituem a base dos

algoritmos criptográficos.

Page 17: Logica BAN 2004

16

Nas cifras de substituição cada letra ou grupo de letras é substituído por

outras letras ou grupos, de forma a criar um “disfarce”. Como exemplo, uma das

cifras mais antigas pode-se citar a cifra de César (Caeser Cipher), onde a letra A se

torna D, B em E, e assim por diante. Então, ao enviar a mensagem ATAQUE, a

palavra ficaria assim DWDTXH. Nessa cifra a chave é o número de saltos, que no

exemplo acima é 3 (três), o que poderia ser qualquer número.

As cifras de transposição utilizam como princípio a reordenação das letras.

Como exemplo desta categoria, pode-se citar a cifra de transposição de colunas,

que consiste em dispor o texto numa grade de n colunas. A quantidade de colunas é

especificada de acordo com o tamanho da chave, a qual é formada por letras que

não se repetem. Sendo assim, cada coluna é representada por uma letra

correspondente da chave. O objetivo desta chave é numerar as colunas de acordo

com a ordem alfanumérica das letras da chave. Portanto, o texto legível é escrito

horizontalmente na grade e o texto cifrado é lido verticalmente na ordem definida na

chave.

A principal diferença entre as duas categorias de cifra é que a cifras de

substituição disfarçam as letras da mensagem sem alterar sua ordem, enquanto as

cifras de transposição alteram a ordem das letras sem disfarçá-las.

2.3.2 Sistemas Criptográficos de Chave Simétrica

São os sistemas de criptografia que utilizam algoritmos que cifram o texto

legível e decifram o texto cifrado a partir da mesma chave. Por convenção, este

trabalho adotará que “C” significa a rotina de ciframento e “D” a de deciframento.

Subscrito a elas está a chave utilizada para realizar a operação (Figura 2).

Figura 2 – Sistema criptográfico de chave simétrica

Page 18: Logica BAN 2004

17

Os sistemas criptográficos de chave simétrica podem ser divididos em duas

categorias: os que operam o texto claro bit a bit (ou byte a byte), chamados de cifra

de fluxo (stream cipher); e os que manipulam o texto claro em grupos de bits

denominados cifra de blocos (block cipher) (SANTOS, 2002). Os algoritmos de

chave simétrica mais comuns são: o DES (American Data Encryption Standart) e o

Rijndael (Daemen e Rijmen) (TANENBAUM, 2003).

2.3.3 Sistemas Criptográficos de Chave Assimétrica

São os sistemas de criptografia que utilizam algoritmos que cifram o texto

legível e decifram o texto cifrado a partir de chaves diferentes (Figura 3).

Figura 3 – Sistema criptográfico de chave assimétrica

O sistema consiste em cifrar o texto legível com a chave pública do

destinatário, a qual é publicada para conhecimento de todos, e o destinatário decifra

o texto cifrado com sua própria chave privada. Portanto, cada usuário possuirá um

par de chaves, uma pública e outra privada. Exemplificando, o remetente A antes de

enviar o texto legível “M” para o destinatário B cifra a mesma com um algoritmo de

chave assimétrica utilizando a chave “k”. Essa é a chave pública de B, que após o

recebimento do texto cifrado “T” decifra a mensagem a partir do mesmo algoritmo

que A, porém utilizando sua chave privada “s”.

Page 19: Logica BAN 2004

18

2.4 ASSINATURA DIGITAL

Para o atendimento dos requisitos básicos necessários para a segurança

como a integridade, autenticidade, sigibilidade e não-repúdio, várias técnicas são

propostas. A assinatura digital vem exatamente para atender o requisito do não-

repúdio, isto é, garantir que o remetente não negue a autoria do envio da mensagem

determinada. Essa prática é comum em documentos em papel, onde a garantia é

oferecida através da assinatura de próprio-punho do interessado. Sendo assim,

pode-se denominar a assinatura como uma marca que comprova a autoria de certa

mensagem ou documento.

Existem duas formas de implementação desta técnica: através do uso de

uma entidade intermediária e sem o uso desta. Antes de iniciar a explanação sobre

o assunto, vale mencionar as convenções propostas pelo trabalho. A maioria das

literaturas que abordam o assunto segurança usam personagens com nomes

próprios, como Alice e Bob para os usuários finais. Para o intruso geralmente é

empregado o nome de Trudy. Para manter a compatibilidade, o trabalho adotará as

mesmas denominações.

2.4.1 Assinatura Digital em Sistemas de Chave Simétrica

A primeira forma de implementar a assinatura digital, através de um agente

intermediário, aplica-se basicamente à assinatura digital para sistemas criptográficos

de chave simétrica. Esse agente é denominado de “Autoridade Central” e todas a

mensagens passam por ele (Figura 4).

Figura 4 – Esquema de assinatura digital

Nesse caso, a chave secreta de A é compartilhada com a autoridade central.

Quando Alice envia uma mensagem de texto assinada, é gerado KA(B, RA, t, P) ,

onde B é a identificação de Bob, RA um número gerado randomicamente, t um

timbre de data-hora para manter a atualidade e P a mensagem a ser enviada. Todo

Page 20: Logica BAN 2004

19

esse conteúdo é cifrado (criptografado) com a chave KA. Por suas vez, a autoridade

central recebe a mensagem, identifica que vem de A e localiza sua chave no seu

banco de chaves, decifra (descriptografa) a mensagem e envia a B (Bob) o conteúdo

KB(A, RA, t, P, KAC(A, t, P)) cifrado com a chave KB. Todo o conteúdo foi extraído da

mensagem de Alice e a última parte foi cifrada com a chave da autoridade central

KAC. A prova da autoria é dada por essa parcela KAC(A, t, P), onde a autoridade

central confirma a origem da mensagem sendo de A. Isso é possível pois a

autoridade é de confiança de todos, que geralmente é formado por órgãos

governamentais, bancos, etc.

O grande problema relacionado a essa forma de implementação é a

necessidade de alto grau de confiança na autoridade central, que, infelizmente

formado basicamente por órgãos governamentais e bancos, não é amplamente

atendido.

2.4.2 Assinatura Digital em Sistemas de Chave Assimétrica

Constitui outra forma de implementação da assinatura digital. Para tal, é

necessário que a propriedade C(D(P))=P além de D(C(P))=P seja válido. Nas

convenções deste trabalho, C significa cifrar e D decifrar, enquanto P é uma

mensagem qualquer. Para o algoritmo RSA essa propriedade é válida, portanto, tal

procedimento é aplicável. Supondo que esse seja o caso, Alice pode enviar uma

mensagem P assinada a Bob, transmitindo CB(DA(P)), pois A conhece sua chave

privada DA e a chave pública CB. Assim que Bob recebe a mensagem, ele decifra a

mensagem utilizando sua chave privada DB e guarda DA(P) em um lugar seguro

(TANENBAUM, 2003, p.805). Aplicando CA em DA(P) ele obtém P, através da

propriedade já mencionada. A prova de autoria da mensagem é dada pelo fato de

que Bob poderá produzir tanto P quanto DA(P). Como DA é de único e exclusivo

conhecimento de Alice (chave privada), logo fica evidente que a única pessoa capaz

de enviar DA(P) seria Alice.

2.4.3 Sumários de Mensagens

Com o objetivo de implementar a assinatura digital sem o ciframento da

mensagem desenvolveu-se o método de sumários de mensagens (message

Page 21: Logica BAN 2004

20

digests). Esse objetivo baseia-se na necessidade de autenticar informações sem que

o sigilo seja levado em consideração, onde muitos casos a autenticação é

necessária e o sigilo não. Geralmente a criptografia é lenta e o usuário prefere enviar

o texto claro (legível) somente assinado (TANENBAUM, 2003). Esse método baseia-

se na aplicação de uma função de hash unidirecional que gera um resumo da

mensagem e calcula uma string de bits de tamanho fixo. A função hash é

representada por MD e tem quatro importantes propriedades (TANEMBAUM, 2003):

• se P é fornecido, MD(P) deve ser calculado facilmente;

• se MD(P) é fornecido, P deverá ser impossível de ser encontrado;

• dado P, não é possível encontrar P’ tal que MD(P’)=MD(P);

• uma mudança na entrada deve produzir uma saída muito diferente.

O cálculo do sumário da mensagem é muito mais rápido que cifrar toda a

mensagem, por esse motivo que esse método poder ser utilizado para agilizar

algoritmos de assinatura digital.

Considerando a assinatura digital em sistemas de chaves simétricas

(privadas), ao invés da autoridade central assinar a mensagem com KAC(A, t, P) ele

assina com KAC(A, t, MD(P)). Dessa forma, a redução de custos e aumenta da

performance é considerável. Também pode-se aplicar o método em sistemas de

chaves assimétricas (públicas), onde, ao invés de assinar a mensagem com DA(P)

pode-se assinar com DA(MD(P)).

2.5 PROTOCOLOS DE AUTENTICAÇÃO

Denomina-se autenticação a técnica que confirma a identidade das partes

na comunicação entre elas, isto é, confirma a um processo que seu parceiro na

comunicação não se trata de um impostor. Portanto, a autenticação garante que um

impostor não passe por uma parte legítima e capture informações importantes e

sigilosas.

A técnica de autenticação é confundida com a de autorização, porém ambas

possuem significados distintos. Enquanto a autenticação preocupa-se com a

questão de determinar se um processo está ou não comunicando com outro

Page 22: Logica BAN 2004

21

processo específico, a autorização preocupa-se com a questão das permissões

delegadas a um processo.

A técnica de autenticação é aplicada mediante aplicação de protocolos de

autenticação que utilizam os conceitos dos sistemas criptográficos de chaves

simétricas (chave privada) ou chaves assimétricas (chave pública) (SANTOS, 2002).

Ainda assim, os protocolos de autenticação podem basear-se no uso de uma

autoridade central ou não. A essa autoridade central é dado o nome de KDC (Key

Distribution Center) no qual é depositada toda confiança das partes envolvidas na

comunicação.

O modelo genérico aplicado por todos os protocolos de autenticação é dado

por Alice enviando uma mensagem para Bob ou um KDC. A medida que essas

mensagens são trocadas, Trudy a intrusa, pode interceptar, modificar e reproduzir

essas mensagens com o objetivo de enganar Alice e Bob ou simplesmente

atrapalhar (TANENBAUM, 2003). Porém, ao término da execução do protocolo, Alice

terá certeza que a outra parte trata-se de Bob e vice-versa, havendo desta forma, o

estabelecimento de uma chave de sessão secreta entre as partes.

A chave de sessão será utilizada durante toda a conversação,

caracterizando-se assim um sistema criptográfico de chave simétrica, mesmo com a

aplicação de sistemas de chaves assimétricas (pública) no estabelecimento da

chave de sessão. A razão pela qual justifica a utilização de chaves de sessão é a

necessidade de minimizar o volume de tráfego (o que é muito importante em

sistemas sem fio) provocado pela transmissão de chaves públicas do usuário

(TANENBAUM, 2003). Na maioria dos casos, a chave de sessão será a única chave

existente no sistema.

2.6 DISTRIBUIÇÃO DE CHAVES

Em todos os sistemas criptográficos são necessárias uma ou mais chaves

para executar as operações de ciframento e deciframento (SANTOS, 2002). Essas

chaves devem ser de comum conhecimento entre as partes, porém, em muitos

casos não é possível negocia-las anteriormente. Muitos sistemas de segurança

preferem que essas chaves compartilhadas sejam estabelecidas dinamicamente,

isto é, que não sejam fixas e por conseqüência elevem o grau de segurança do

Page 23: Logica BAN 2004

22

sistema. A partir do protocolo de troca de chaves de Diffie-Hellman é possível a troca

de chaves entre partes que não se conhecem.

O protocolo de troca de chaves de Diffie-Hellman consiste em Alice e Bob

concordar em relação a dois números extensos, n e g, onde n e g são números

primos. Esses números podem ser públicos, sendo que uma das partes seleciona n

e g e informa ao outro abertamente. Em seguida, Alice escolhe um grande número x

e o mantém em segredo. Igualmente, Bob escolhe um número y. Desta forma, Alice

inicia o protocolo enviando a Bob uma mensagem contendo (n, g, gx mod n) e Bob

responde enviando (gy mod n), conforme apresentado na Figura 5.

Figura 5 – Distribuição de chaves de Diffie-Hellman

Para concluir, Alice eleva a x-ésima potência em módulo n a mensagem

enviada por Bob e obtém gxy mod n. Bob também executa o mesmo cálculo com

uma pequena diferença, elevando a y-ésima potência em módulo n parte da

mensagem enviada por Alice (gx mod n) (TANENBAUM, 2003).

(gy mod n)x = gxy mod n

(gx mod n)y = gxy mod n

Finalmente, Alice e Bob compartilham da chave gxy mod n. Contudo, existe

um porém. Nem Alice sabe se realmente está se comunicando com Bob, como Bob

também não tem garantias que está se comunicando com Alice.

Page 24: Logica BAN 2004

23

3 REDES SEM FIO

3.1 INTRODUÇÃO

As redes fixas caracterizam-se pela associação da identidade numérica ou

não a um terminal, entretanto, o propósito maior é de alcançar pessoas ou um grupo

(FERRARI, 2003). Portanto, existe uma forte ligação associativa entre o local e a

identidade.

Devido a associação das identificações aos locais e não às pessoas

combinado com o crescente interesse em evitar custos elevados associados a

instalações e realocações em ambientes interligados por fios deu-se início a

pesquisas e desenvolvimento na área de redes sem fio (ALENCAR, 2001).

As redes sem fio consistem em redes de comunicações por enlaces sem fio

como rádio freqüência e infravermelho que permitem mobilidade contínua através de

sua área de abrangência. As redes sem fio são compostas por sistemas móveis, que

têm como principal e mais difundido representante as redes celulares.

Sendo assim, as redes sem fio vêm a atender a necessidade de associar

identificações a pessoas ou processos sem que as mesmas estejam conectadas

fisicamente, permitindo alto grau de mobilidade e redução de custos durante fases

de instalação e realocação.

3.2 SISTEMAS MÓVEIS

Os sistemas móveis são definidos como sendo redes de comunicações por

rádio que permitem mobilidade contínua através de sua área de abrangência. Nos

últimos anos, o oferecimento de comunicações móveis por rádio à população tem se

tornado uma área de intensa pesquisa e desenvolvimento acelerado (ALENCAR,

2001).

No desenvolvimento desta tecnologia, evidenciou-se uma série de questões

técnicas e operacionais que estavam correlacionadas com a mobilidade, onde entre

elas destaca-se (FERRARI, 2003):

• propagação das ondas de rádio em face ao relevo do ambiente;

Page 25: Logica BAN 2004

24

• limite de alcance dos terminais;

• interferência entre canais;

• uso eficiente das limitadas faixas de freqüências;

• identificação dos terminais;

• dimensão da rede móvel.

Os principais representantes desta tecnologia são os sistemas celulares,

cujo objetivo é associar identidades em terminais a pessoas garantindo mobilidade

contínua com quase total liberdade de localização.

3.3 REDE LOCAL SEM FIO

As redes locais sem fio (WLAN – Wireless Local Area Network) constituem-

se basicamente em redes locais cabeadas (LAN), conforme representado na Figura

6, fornecendo as mesmas funcionalidades, mas com grande flexibilidade e

conectividade em ambientes prediais ou de campus. Combinando mobilidade e

conectividade a elevadas velocidades, podem atingir distâncias de até 18 metros de

acordo com alguns casos (RNP, 2004).

Figura 6 – Rede WLAN

Page 26: Logica BAN 2004

25

O princípio básico é constituído na modulação dos dados em portadoras de

radiofreqüência ou infravermelho. Várias portadoras podem ser empregadas num

mesmo ambiente, permitindo assim que a micro-segmentação dos domínios de

colisão, aumentando assim a eficiência da rede.

As WLANS são compostas por transceptores (transmissor/receptor)

instalados nas estações e nos pontos de acesso (access point) à rede ethernet

cabeada. Os pontos de acesso permitem não somente a conexão com a rede

convencional (cabeada), mas também provê conectividade entre os pontos de

acesso vizinhos.

3.4 SISTEMA CELULAR

O sistema celular, como o próprio nome já denuncia, é baseado no conceito

celular, que consiste na divisão da área de cobertura do serviço em módulos

(pequenas áreas) de atendimento chamados células, sendo que cada uma é servida

por uma estação-rádio (Figura 7). Essa divisão permite o uso de transmissores de

baixa potência e um emprego eficiente do espectro por meio do reuso de

freqüências (ALENCAR, 2001).

Figura 7 – Estrutura Celular

3.4.1 Componentes do Sistema Celular

O sistema celular consta das seguintes partes (GARG, 1996):

Page 27: Logica BAN 2004

26

• CCC (Central de Comutação de Controle) é o centro de controle e

comutação dos canais de telefonia móvel, baseada na tecnologia CPA.

Também denominada de MSC (Mobile Switching Center), é responsável

pela coordenação central das estações-rádio dentro de sua área de

controle, bem como prover interface com a rede de comutação pública;

• ERB (Estação Radio-Base) a estação radio-base, também denominada

de RBS (Radio Base Station) é onde se encontra o equipamento rádio

transmissor/receptor, cuja função é a de prover interface entre a estação

móvel e a central de comutação. O local onde se encontra a ERB chama-

se “site”;

• EM (Estação Móvel) ou MS (Mobile Station) a unidade de estação móvel

é o equipamento terminal do assinante chamado apenas de “telefone

celular” (Figura 8).

Figura 8 – Componentes do sistema celular

3.4.2 Evolução das Redes Celulares

Até 1992, somente existiam os sistemas celulares analógicos. Dentro desta

tecnologia, há quatro grandes famílias de sistemas celulares no mundo (FERRARI,

2003):

• AMPS (Advanced Mobile Phone System) usado na América, Austrália;

Page 28: Logica BAN 2004

27

• TACS (Total Access Communication System) usado no Reino Unido,

Itália, Emirados árabes, Malásia entre outros;

• NMT900 (Nordic Mobile Telecommunications) usado nos países

nórdicos, na Suíça, entre outros;

• NTT (Nippon Telephone and Telegraph) usado no Japão.

Como tecnologia de acesso múltiplo, isto é, tecnologia responsável pelo

acesso ao sistema por vários usuários ao mesmo tempo, é empregada o FDMA

(Frequency Division Multiple Access). Essa tecnologia consiste em subdividir o

espectro destinado ao serviço, permitindo que o usuário utilize o sistema a partir de

uma parcela do espectro (Figura 9).

Figura 9 – Padrão FDMA

Devido o esgotamento da capacidade de expansão nos EUA e a

necessidade de integração da Europa houve a migração dos sistemas analógicos

para os digitais.

Os sistemas digitais fazem parte de um ramo das telecomunicações de

maior crescimento, devendo esse sucesso à mobilidade do terminal, área de

cobertura do serviço, opções de vários serviços agregados. O sistema caracteriza-se

em digitalizar toda informação, inclusive voz, e envia-la/recebê-la através do canal

de comunicação. Como tecnologia de acesso múltiplo podem ser utilizados o TDMA

(Time Division Multiple Access) que corresponde na subdivisão do espectro em

vários slots de tempo, sendo cada slot destinado a um usuário, ou o CDMA (Code

Division Multiple Access) que consiste na subdivisão do espectro disponível em

códigos, também conhecido como Espalhamento de Espectro (Spread Spectrun)

(Figura 10).

Page 29: Logica BAN 2004

28

Figura 10 – Padrão TDMA e CDMA

Existem quatro grandes sistemas digitais de uso mundial empregando uma

dessas tecnologias de acesso:

• GSM (Global System Mobile) que usa o TDMA e é utilizado na Europa;

• D-AMPS (Digital Advanced Mobile Phone System) que também utiliza o

TDMA e é empregado exclusivamente nas Américas;

• PDC (Personal Digital Cellular) Utilizando a tecnologia TDMA é

empregado no Japão;

• IS-95 que utiliza o CDMA e é conhecido também pelo mesmo nome da

tecnologia de acesso (CDMA).

Essas fases de evolução do sistema celular são classificadas em gerações,

partindo desde a primeira geração correspondendo aos sistemas analógicos,

passando pela segunda geração e finalmente pela terceira geração. Existe ainda

uma geração intermediária entre a segunda e a terceira conhecida como 2.5G, onde

o G significa geração.

3.5 SEGURANÇA EM SISTEMAS MÓVEIS

Para uma rede sem fio, a segurança é uma questão importante e complexa,

pois além de todos os fatores comuns a todas as redes existe ainda o fator meio de

transmissão, que no caso das redes em fio é o ar. Por se tratar de uma ambiente

bastante hostil e susceptível a invasões, a segurança deste ambiente torna-se

bastante difícil, porém necessária. Nos tempos em que a comunicação se restringia

à voz, a principal preocupação era a de que intrusos conseguissem ouvir conversas

sigilosas (SANTOS, 2002).

Page 30: Logica BAN 2004

29

Para garantir a segurança nestes sistemas são empregados protocolos

criptográficos projetados com a finalidade de fornecerem serviços de segurança de

acordo como descrito abaixo (SANTOS, 2002):

• estabelecimento da chave de sessão – o estabelecimento desta chave é

efetuada durante o processo de autenticação, que por motivos de

segurança é recomendado que a cada conexão seja estabelecida uma

chave de sessão diferente;

• autenticação mútua – a autenticação deve ser efetuada por ambas as

partes envolvidas na comunicação para garantir que nenhum intruso se

passe por uma entidade legítima;

• sigilo da mensagem – as mensagens envolvidas na comunicação devem

ser protegidas através de algoritmos de ciframento/deciframento;

• sigilo de identidade da parte chamadora – em determinadas aplicações é

necessário que a identidade da parte que está chamando seja protegida,

como por exemplo, aplicações militares;

• não-repúdio do serviço – para assegurar que o emissor de uma

mensagem num ambiente sem fio não negue a autoria da mesma esse

serviço se faz necessário.

Os protocolos empregados na segurança de ambientes sem fio, além de

fornecer os serviços citados acima, devem observar algumas características

relacionadas ao planejamento de protocolos para redes móveis, como capacidade

computacional do sistema, quantidade de mensagens trocadas, capacidade de

armazenamento das partes envolvidas.

Em ambientes sem fio, geralmente os dispositivos dispõem de baixa

capacidade computacional, muitas vezes de forma intencional, como o caso das

unidades móveis, que para reduzir o consumo da energia das baterias, tem essa

característica reduzida, implicando na redução da complexidade e números de

operações de ciframento tanto quanto possível.

Devido ao meio e o atraso intrínseco às características de propagação do

sinal no canal de comunicação, a quantidade e o tamanho de mensagens deve ser

baixa tanto quanto possível para não implicar em esperas desnecessárias.

Page 31: Logica BAN 2004

30

Geralmente, alguns dos dispositivos que compõem o sistema móvel

possuem baixa capacidade de armazenamento, portanto, é recomendado que os

requerimentos de armazenamento para esses dispositivos seja baixo. Via de regra,

esse espaço é destinado a guardar as chaves (privada ou pública), certificados, ou

qualquer dado requerido pelo protocolo.

Alguns aspectos também devem ser levados em consideração durante o

planejamento do protocolo como as Autoridades Centrais, que devem ser entidades

globalmente confiáveis, controle e segurança contra ataques do tipo repetição

através de timestamps (marcas de tempo) e sincronização entre as partes através

de nonces.

Page 32: Logica BAN 2004

31

4 MÉTODOS DE ANÁLISE DE PROTOCOLOS E LÓGICA BAN

4.1 INTRODUÇÃO

A importância da segurança nas comunicações em ambientes sem fio

(wireless) já foi bastante explicitada neste trabalho. Para a garantia da segurança

são empregados protocolos criptográficos, dos quais, possuem como elemento

fundamental o uso de algoritmos de criptografia que necessitam de uma informação

para o funcionamento denominado “chave”. Verificou-se que a garantia da

segurança é dada pelo sigilo da chave e não pelo algoritmo utilizado.

Em ambientes sem fio, geralmente essas chaves são negociadas e

compartilhadas no momento da autenticação, onde essas chaves denominam-se

chaves de sessão.

Os protocolos de autenticação são os responsáveis pela identificação

legítima entre as partes envolvidas na comunicação e possuem fundamental

importância na segurança de redes sem fio. O problema é que os protocolos estão

sujeitos a erros no desenvolvimento e por isso é importante empregar algum método

formal para analisá-los (SANTOS, 2002). Uma análise formal pode determinar o

nível de eficiência de segurança oferecida pelo protocolo, por conseguinte o nível de

segurança oferecida pelo sistema.

Existem vários métodos formais para analisar protocolos de segurança,

cada um com suas características, oferecendo vantagens a determinados protocolos

destinados a um requisito de segurança e desvantagens a outros.

Um método de análise formal de protocolos de segurança se torna

importante pelo fato que muitas falhas relacionadas aos protocolos podem ser

identificadas antes da publicação das mesmas. Além da falhas, pontos de

vulnerabilidade podem ser determinados de acordo com o método empregado. O

custo para resolver essas falhas e pontos de vulnerabilidade é muito menor na fase

de desenvolvimento do que após a fase de publicação. É importante ater-se ao

detalhe de uma vez identificado uma falha no protocolo após a publicação, ele não é

mais considerado seguro, sendo evitado o seu uso pelos sistemas requisitantes.

Page 33: Logica BAN 2004

32

4.2 MÉTODOS FORMAIS

Os métodos formais comprometem-se a auxiliar o desenvolvedor no

planejamento e na análise dos protocolos criptográficos, principalmente os de

autenticação e distribuição de chaves (SANTOS, 2002).

O planejamento informal dos protocolos criptográficos está propenso a erros,

evidenciando a importância do uso de métodos formais para o planejamento de tais

protocolos.

Os métodos formais permitem fazer uma análise completa, considerando os

diferentes modos de ataque e chegar à conclusão se os objetivos propostos pelo

protocolo foram alcançados (SANTOS, 2002). Existem quatro tipos de métodos

formais baseados em: linguagem de verificação, sistemas especialistas, lógicas

modais e sistemas algébricos.

4.2.1 Métodos Baseados em Linguagem de Verificação

Esse método baseia-se no tratamento dos protocolos criptográficos como se

fossem outro programa qualquer, tentando provar sua corretude. Várias técnicas são

utilizadas neste método, como diagramas de estado, técnicas de especificação

formal de protocolos. Infelizmente, esse método não prova a segurança além de sua

corretude (SANTOS, 2002).

4.2.2 Métodos Baseados em Sistemas Especialistas

Esse método consiste em desenvolver sistemas especialistas que podem

gerar e investigar vários cenários no protocolo criptográfico. Os protocolos são

modelados como máquinas de estado, sendo iniciados em um estado inseguro e

tentando descobrir um caminho para este estado. Apesar de apresentar melhores

resultados que o método anterior, possuem como desvantagem a grande quantidade

de eventos possíveis a serem analisados (SANTOS, 2002).

Page 34: Logica BAN 2004

33

4.2.3 Métodos Baseados em Lógicas Modais

Basicamente, esses métodos consistem em formalizar várias declarações de

crença e conhecimento sobre as mensagens que compõem o protocolo de sistemas

distribuídos (SANTOS, 2002). Após a aplicação de postulados de lógicas modais é

possível argumentar sobre o processo de autenticação tão importante para as redes

sem fio.

Das lógicas empregadas nesses métodos, a lógica BAN (Burrows, Abadi e

Needham) foi a que mais contribuiu com popularização dos métodos, cuja principal

utilização é a análise de protocolos de autenticação.

4.2.4 Métodos Baseados em Sistemas Algébricos

Esses métodos consistem em modelar o protocolo analisado em um

sistema algébrico, associando um estado como conhecimento dos participantes do

protocolo.

4.3 LÓGICA BAN

Nos sistemas de redes sem fio, o processo de autenticação é responsável

em grande parte pela garantia da segurança na comunicação, pois as chaves de

sessão são negociadas neste instante. Torna assim, de fundamental importância, o

desenvolvimento sem falhas de protocolos específicos, e como conseqüência, a

necessidade de utilizar métodos para auxiliar o planejamento e desenvolvimento dos

mesmos.

Os métodos de análise formal baseado em lógicas modais são os que

apresentam os melhores resultados em relação aos processos de autenticação,

destacando-se os métodos baseados em lógica BAN pelo baixo nível de

complexidade. Ela foi publicada em 1989 por Michael Burrows, Martin Abadi e Roger

Needham, e foi a primeira sugestão para formalizar a descrição e análise de

protocolos de autenticação.

A lógica BAN tem como principal objetivo responder as seguintes perguntas:

• quais os objetivos do protocolo?

Page 35: Logica BAN 2004

34

• a quantidade de suposições é suficiente em relação a outros protocolos?

• existem passos desnecessários na execução do protocolo?

A execução da lógica implica na segmentação da análise em 3 etapas

distintas. A primeira etapa consiste em idealizar o protocolo (Protocol Idealization). A

segunda etapa é o levantamento das suposições de crença (assertions) e os

objetivos com afirmações numa notação simbólica. A terceira e última etapa

transforma os passos do protocolo numa notação simbólica e aplica as regras dos

postulados (inference rules) para atingir os objetivos do protocolo, denominado esta

etapa como a de análise do protocolo (Protocol Analysis). A lógica divide o tempo

em duas épocas: passado e presente. Considera-se presente o tempo durante a

atual execução do protocolo. Qualquer mensagem enviada após é considerado

passado, devendo ser rejeitada pelo protocolo (SANTOS, 2002).

Muitas variantes da lógica foram propostas, porém os resultados frente à

complexidade exigida não justificaram sua maior difusão. Mesmo com baixo nível de

complexidade, a lógica BAN conseguiu encontrar falhas em diversos protocolos de

segurança como CCITT X.509, Kerberos e Needham-Schroeder.

A lógica possui como principal vulnerabilidade a condução a erros devido a

utilização de determinadas suposições, exigindo do projetista cuidado redobrado.

4.3.1 Notação Básica

Na lógica são distinguidos os seguintes objetos: Principal ou Participantes,

Chaves de Ciframento e Fórmulas Lógicas (KYNTAJA, 1995). Tipicamente, os

símbolos A, B e S denotam os participantes, sendo que A e B são os participantes

que desejam efetuar a comunicação e S a autoridade central. Também Kab, Kas e Kbs

são usados geralmente e denotam as chaves compartilhadas, da mesma forma que

Ka, Kb e Ks denotam as chaves públicas; e Ka-1, Kb

-1 e Ks-1 as chaves privadas

correspondentes. Além desses objetos existem Na, Nb e Ns que são identificadores

gerados pelos participantes. Os símbolos P, Q e R utilizados na tabela 1

representam os participantes genéricos; X e Y mensagens e declarações; e K a

chave de ciframento / deciframento.

Page 36: Logica BAN 2004

35

Tabela 1 – Notação básica da lógica BAN

Representação Significado

P X P acredita em X: Para P X é verdadeiro.

P X P recebe X: P recebeu uma mensagem contendo X.

P X P disse X: P enviou uma mensagem contendo X.

P X P tem jurisdição sobre X: P é responsável por X.

#(X) Novo X: X é novo e não foi utilizado antes em nenhuma sessão.

P Q P e Q compartilham k: P e Q podem utilizar k para se

comunicarem.

P P possui uma chave pública k: A correspondente é k-1

P Q A fórmula X é um segredo de P e Q: Somente P e Q podem

utiliza-lo.

{X}k Fórmula X cifrada com a chave k

<X>Y Combinação entre a fórmula X e a Y

4.3.2 Postulados

Os postulados da lógica BAN são um conjunto de regras das quais

determinam a diversas operações lógicas. Existem várias regras, porém as

principais utilizadas na análise dos protocolos criptográficos são oito.

4.3.2.1 Regra 1 – Significado da Mensagem (Message Meaning Rule)

Esta regra verifica o significado da mensagem e pode possuir as seguintes

variantes: Regra 1a, Regra 1b e Regra 1c.

Regra 1a – Para chaves simétricas:

P (Q P), P {X}k P Q X

Se P acredita que Q e P compartilham a chave k e recebe uma mensagem

cifrada com k, então P acredita que Q disse X em algum momento.

Page 37: Logica BAN 2004

36

Regra 1b – Para chaves assimétricas:

P Q, P {X}k-1

P Q X

Se P acredita que Q possui a chave pública k e recebe X cifrado com a

chave priva k-1, então P acredita que Q disse X em algum momento.

Regra 1c – Para segredos compartilhados:

P Q P, P <X>Y P Q X

Se P acredita que Pe Q compartilham o segredo Y e recebe X com segredo

compartilhado em Y, então P acredita que Q disse X.

4.3.2.2 Regra 2 – Verificação de Identificador (Nonce Verification Rule)

Esta regra verifica se a mensagem é recente.

P #(X), P Q X P Q X

Se P acredita que X é novo e P acredita que Q disse X em algum momento,

então P acredita que Q acredita em X.

4.3.2.3 Regra 3 – Jurisdição (Jurisdiction Rule)

Esta regra verifica a confiança sobre alguma declaração.

P Q X, P Q X P X

Page 38: Logica BAN 2004

37

Se P acredita que Q tem autoridade sobre a declaração de X e acredita que

Q acredita em X, então P acredita em X.

4.3.2.4 Regra 4 – Conjunto de Crenças

Verifica a crença de conjunto de declarações.

P X, P Y P (X, Y) P Q (X, Y) P (X, Y) P X P Q X

4.3.2.5 Regra 5 – Conjunto de Autoridade

Verifica a autoridade de conjunto de declarações. Análogo a regra anterior

aplicado a ( ).

P Q (X, Y) P Q X

4.3.2.6 Regra 6 – Conjunto de Recebimento

Verifica e trata o recebimento de diversas partes da mensagem.

P (X, Y) P <X>Y P Q P, P {X}k P X P X P X

P P, P {X}k P Q, P {X}k-1

P X P X

4.3.2.7 Regra 7 – Novidade

Se uma parte da fórmula é nova, então toda a fórmula também é.

P #(X) P #(X, Y)

Page 39: Logica BAN 2004

38

4.3.2.8 Regra 8 – Duas Vias da Chave

A mesma chave é utilizada em ambas as direções entre as partes envolvidas

na comunicação.

P R R' P Q R R' P R' R P Q R' R

Se P acredita que a chave k é compartilhada entre R e R’, então acredita

que a chave também é compartilhada entre R’ e R.

4.3.3 Aplicação da Lógica BAN

Como descrito anteriormente, a lógica BAN é empregada principalmente na

análise de protocolos de segurança em redes distribuídas com enfoque aos

protocolos de autenticação e distribuição de chaves.

Como exemplo de aplicação, será realizada a análise do protocolo de

distribuição de chaves de Needham-Shroeder, cujo fluxo de mensagens é

apresentada na figura 11.

Figura 11 – Protocolo de distribuição de chaves de Needham-Schroeder

Este protocolo baseia-se no mecanismo de desafio-resposta que foi utilizado

durante anos, até que em 1981 identificaram uma falha que acarretou na proposição

Page 40: Logica BAN 2004

39

de um novo protocolo (SANTOS, 2002). Esse protocolo visa fornecer uma chave de

sessão compartilhada entre A e B. O responsável pela geração desta chave é uma

autoridade central (S) confiada globalmente entre os participantes. Esse protocolo é

composto por cinco mensagens representando cada uma etapa relacionada.

Na primeira mensagem A envia sua identidade, a identidade do outro

participante (B) e um identificador gerado por ele (Na) para a autoridade central (S).

Em seguida, a autoridade central gera a chave de sessão (Kab), uma

mensagem cifrada com a chave secreta (Kbs) contendo a chave de sessão e a

identidade de A; incorporando-as à segunda mensagem do protocolo juntamente

com o identificador Na e B. A segunda mensagem é cifrada com a chave secreta Kas

e enviada à A.

Após o recebimento da segunda mensagem proveniente da autoridade

central, A envia à B a chave de sessão Kab e sua identidade através de uma

mensagem cifrada com a chave secreta Kbs, mensagem essa que simplesmente é

parte da mensagem recebida por A de S, caracterizando-se assim a terceira

mensagem do protocolo e por conseqüência a terceira etapa. Na quarta mensagem

B envia uma mensagem cifrada com a chave de sessão Kab contendo um

identificador gerado por ele com destino à A, sendo que de imediato A responde

com a mensagem cifrada com a chave de sessão Kab contendo Nb’.

As duas últimas mensagens correspondem ao mecanismo de desafio-

resposta utilizado para a negociação entre os participantes da chave a ser utilizada

na comunicação entre eles.

Seguindo as três etapas da análise modal de protocolos através da lógica

BAN, é iniciada coma idealização do protocolo:

Mensagem 2 ( S� A ): {Na, (A B), #(A B), {A B} Kbs} Kas

Mensagem 3 ( A� B ): {A B} Kbs

Mensagem 4 ( B� A ): {Nb, (A B)} Kab

Mensagem 5 ( A� B ): {Nb', (A B)} Kab

Observe que no protocolo idealizado a mensagem um (1) foi ignorada, pois a

lógica BAN omite as mensagens em texto legível (texto claro) ou quando esta é

considerada desnecessária para validação da segurança. A próxima etapa consiste

Page 41: Logica BAN 2004

40

em fazer o levantamento das suposições de crença. As crenças são todas as

suposições que o analisador julga possuir algum fundo de verdade. Também são

levantadas as crenças cuja especificação não é explícita no fluxo de mensagens

entre as partes, denominadas "Crenças Duvidosas":

A (A S) (1)

S (A S) (2)

S (A B) (3)

B (B S) (4)

S (B S) (5)

A (S (A B)) (6)

B (S (A B)) (7)

A (S #(A B)) (8)

A #Na (9)

B #Nb (10)

S #(A B) (11)

B #(A B) (12) « Crença Duvidosa »

E como terceira e última etapa, aplicar as regras do postulado da lógica BAN

a cada mensagem considerando as suposições de crença levantadas. A numeração

das fórmulas continua da numeração adotada no levantamento de suposições de

crença. Isso porque, ambas fórmulas, das suposições e do resultado da aplicação

das regras, podem ser reutilizadas para aplicação da lógica nas mensagens

seguintes, constituindo assim, uma única lista de fórmulas.

Mensagem 2 (S�A)

� {Na, (A B), #(A B), {A B} Kbs} Kas (13)

Aplicando a Regra 1 nas fórmulas (13) e (1):

A S (Na, (A B), #(A B), {A B} Kbs) (14)

Aplicando a Regra 5 em (14):

Page 42: Logica BAN 2004

41

A S (Na, (A B), #(A B)) (15)

Aplicando a Regra 5 no resultado da aplicação da Regra 2 em (15) e (11):

A S (A B) (16)

A S #(A B) (17)

Aplicando a Regra 3 em (6) e (16):

A (A B) (18)

Aplicando a Regra 3 em (8) e (17):

A #(A B) (19)

Mensagem 3 (A�B)

B {A B} Kbs (20)

Aplicando a Regra 1 em (20) e (4):

B S (A B) (21)

Aplicando a Regra 3 em (7) e no resultado da aplicação da Regra 2 em (12) e (21):

B (A B) (22)

Mensagem 4 (B�A)

A {Nb, (A B)} Kab (23)

Page 43: Logica BAN 2004

42

Aplicando a Regra 1 em (18) e (23):

A B (Nb, (A B)) (24)

Aplicando a Regra 2 em (19) e (24):

A B (A B) (25)

Mensagem 5 (A�B)

B {Nb', (A B)} Kab (26)

Aplicando a Regra 1 em (22) e (26):

B A (Nb', (A B)) (27)

Aplicando a Regra 2 em (12) e (27):

B A (A B) (28)

Após a fase de aplicação das regras, procura-se o atendimento dos objetivos

do protocolo nos resultados obtidos. O protocolo de distribuição de chaves de

Needham-Schroeder busca o conhecimento da mesma chave de sessão entre as

partes, objetivo atendido na demonstração das fórmulas 18 e 22, e propõe a

autenticação mútua entre as partes, demonstrado pelas fórmulas 25 e 28. Porém,

observa-se que sem a crença duvidosa 12 as fórmulas 22 e 28 não seriam possíveis

de serem encontradas. Assim, conclui-se que sem a certeza de que a chave de

sessão compartilhada com A é nova, B não acredita que a chave de sessão é

verdadeira e não confirma a legitimidade da parte A, evidenciando uma falha a ser

corrigida neste protocolo.

Page 44: Logica BAN 2004

43

5 IMPLEMENTAÇÃO DA FERRAMENTA

5.1 INTRODUÇÃO

O desenvolvimento crescente de tecnologias para redes sem fio demanda

grande preocupação dos projetistas de protocolos de segurança, em especial os

protocolos de autenticação. Vários métodos são empregados para validação destes,

sendo que os métodos formais de análise modal são os mais recomendados para

consistir esse tipo de protocolo.

Os métodos formais de análise modal são bastante difundidos no meio

científico, principalmente os que utilizam a lógica BAN conforme descrito em seções

anteriores. Porém, poucas ferramentas de análise implementam esse tipo de

solução, sendo que em muitos casos, a análise acaba sendo prejudicada por falta de

meios que automatizem o processo.

Desta forma, vários aspectos justificam o desenvolvimento de uma

ferramenta que implemente a análise formal de protocolos de segurança

empregando a lógica BAN, dentre os quais se destaca a automatização do processo

de análise, bem como sua simplificação. Apesar de apresentar nível de

complexidade relativamente mediano frente aos resultados obtidos, a lógica requer

cuidados especiais com a especificação das crenças preliminares. Uma crença

duvidosa ou a falta de outra pode alterar os resultados finais, comprometendo a

qualidade da análise.

Sendo assim, uma ferramenta que permite modificar essas informações e

em poucos passos reanalisar, além de contribuir para a qualidade da análise,

acrescenta ao processo alto grau de interatividade do analisador com os resultados,

permitindo que possíveis soluções para as falhas dos protocolos sejam encontradas.

5.2 REQUISITOS BÁSICOS DA FERRAMENTA

Para atender as necessidades citadas na seção anterior, sugere-se neste

trabalho uma ferramenta que possibilite a execução do processo de análise

utilizando as informações preliminares contidas em arquivos metafiles, conhecidos

como arquivos de análise, e obter os resultados a partir da execução do algoritmo de

Page 45: Logica BAN 2004

44

análise sob esses arquivos. O resultado do processo de análise será exibido em

vídeo mediante interpretação do arquivo de resultado gerado da execução do

algoritmo.

Uma das preocupações fundamentais é o desenvolvimento de uma interface

amigável, que além de facilitar o gerenciamento dos arquivos de análise, permita

que a complexidade do processo seja minimizada ao máximo. Os métodos de

entrada das informações também possuem tratamentos especiais, cuja notação

empregada será a mesma das especificações da lógica BAN, possuindo editor

específico para as fórmulas BAN.

Assim, uma nova análise será iniciada com a criação de um arquivo de

análise, que armazenará as informações iniciais do processo como o nome do

analisador, descrição da análise, protocolo analisado, mensagens do protocolo

idealizado e as crenças iniciais. Após o preenchimento dessas informações e a

respectiva gravação do arquivo, o processo é executado associando o arquivo de

análise anteriormente criado. Logo em seguida, após o término do processo de

análise, o resultado será exibido em vídeo, através da leitura do arquivo de

resultado.

O resultado da análise consistirá no atendimento dos objetivos propostos

nas respectivas mensagens do protocolo idealizado, sendo que o atendimento pode

ser parcial ou completo, sendo que a diferença dar-se-á pela utilização ou não de

crenças duvidosas.

Desta forma, os requisitos funcionais do sistema são:

• ler um arquivo metafile com as informações referentes ao protocolo a ser

analisado;

• analisar o protocolo a partir da execução do algoritmo de análise sob o

arquivo lido;

• exibir o resultado na forma de resumo e em vídeo, armazenado

fisicamente em arquivo próprio.

Page 46: Logica BAN 2004

45

5.3 ESPECIFICAÇÃO DA FERRAMENTA

5.3.1 Estrutura

Os requisitos básicos propostos pela ferramenta são representados pelo

diagrama de caso de uso da figura 12:

Figura 12 – Diagrama de caso de uso

Como foi especificado na seção anterior, tanto as informações sobre o

protocolo a ser analisado como o resultado da análise serão armazenados sob forma

de arquivos metafiles, obedecendo o padrão genérico conforme o quadro 1 e por

conseguinte obedecendo o padrão específico de acordo com o conteúdo

armazenado. O quadro 2 apresenta o padrão seguido pelos arquivos de análise, e o

quadro 3 o padrão adotado pelos arquivos de resultado.

Quadro 1 – Formato geral dos arquivos da ferramenta

Formato Geral dos Arquivos Formato dos Registros

Page 47: Logica BAN 2004

46

Tp : Tipo do Registro Tm : Tamanho dos dados em bytes Dados : Conteúdo do registro Tipos de Registro (Tp) Registros Cabeçalho 0x00 : Registro Identificador 0x01 : Nome 0x02 : Autor 0x03 : Descrição 0x04 : Reservado ... 0x15 : Reservado Registros Detalhe 0x16 : Reservado ... 0x1F : Reservado Registros Rodapé 0x20 : Reservado ... 0x24 : Reservado Registro Identificador

Id : Identificador do arquivo Vr : Versão do arquivo Ct : Certificado de validade do arquivo Cálculo do Certificado Ct = ((Id shl 8)+Vr)) xor ((Vr shl 8)+Id))

Quadro 2 – Formato dos arquivos de análise

Formato Arquivo de Análise Registros Cabeçalho

Page 48: Logica BAN 2004

47

Registros Detalhe Registro Mensagem ( Tp = 0x16 )

Og : Origem Dt : Destino Td : Tamanho da Descrição Tc : Tamanho do Conteúdo Tn : Tamanho da Condição Tl : Tamanho do Cálculo Registro Crença ( Tp = 0x17 )

Dv : Duvidosa Td : Tamanho da Descrição Tc : Tamanho do Conteúdo Registro Objetivo ( Tp = 0x18 )

Td : Tamanho da Descrição Tc : Tamanho do Conteúdo

Quadro 3 – Formato dos Arquivos de Resultado

Formato Arquivo de Resultado Registros Cabeçalho

Registros Detalhe Registro Expressão ( Tp = 0x16 )

Tp : Tipo de Expressão Tc : Tamanho do Conteúdo

Page 49: Logica BAN 2004

48

A estrutura conceitual é representada pelos diagramas de classe, sendo que

estes foram divididos em duas categorias: Persistência e Análise. Os diagramas são

apresentados nas figuras 13 e 14.

Figura 13 – Diagrama de classes de persistência

Page 50: Logica BAN 2004

49

O diagrama de classes de persistência representa as classes destinadas a

armazenar informações e é composto pelas classes:

• Classe TArquivo: Responsável pela padronização geral dos arquivos da

ferramenta, obedecendo o padrão do quadro 1, além de prover os

métodos comuns de leitura e escrita do arquivo em disco;

• Classe TAnalise: Especialização da classe TArquivo responsável pela

manipulação dos arquivos de análise, adotando o padrão imposto no

quadro 2. Mantém lista de mensagens, crenças e objetivos do protocolo a

ser analisado;

• Classe TResultado: Especialização da classe TArquivo responsável pela

manipulação dos arquivos de resultado de análise, e adota o padrão do

quadro 3 nos métodos de gravação e leitura do arquivo. Mantém lista de

expressões para serem interpretadas pelo visualizador de resultados da

ferramenta;

• Classe TListaMensagens: Implementa as manipulações da lista de

mensagens mantida pela classe TAnalise;

• Classe TListaCrencas: Implementa as manipulações da lista de crenças

e suposições mantida pela classe TAnalise;

• Classe TListaObjetivos: Implementa as manipulações da lista de

objetivos mantida pela classe TAnalise;

• Classe TMensagem: Representa as mensagens do protocolo

especificado na classe TAnalise associada;

• Classe TCrenca: Representa as crenças e suposições especificadas na

classe TAnalise associada, e utilizadas no processo de análise do

protocolo associado;

• Classe TObjetivo: Representa os objetivos do protocolo especificado na

classe TAnalise associada;

• Classe TExpressao: Representa as expressões da classe TResultado.

Page 51: Logica BAN 2004

50

Figura 14 – Diagrama de classes de análise

Por sua vez, o diagrama de classes de análise representa as classes

responsáveis pela análise de protocolos. O diagrama consiste em sete classes:

• TAnalisadorBAN: Classe que implementa o algoritmo de análise segundo

as regras do método de análise modal a partir da lógica BAN e é a

principal classe no processo em questão. O método analisar é

Page 52: Logica BAN 2004

51

responsável por disparar o processo de análise e por conseqüência gerar

o arquivo de resultado;

• TRepositorio: Classe que implementa o armazenador de fórmulas, tanto

as especificadas nas informações preliminares quanto as fórmulas

geradas a partir da execução do algoritmo de análise;

• TFormula: Classe que representa o conceito geral das fórmulas utilizadas

no método de análise modal;

• TEntidade: Especialização da classe TFormula que representa as

entidades e suas ações de acordo com o especificado pela lógica BAN;

• TOperacao: Especialização da classe TFormula que representa as

operações de novo e cifra especificados pela lógica BAN;

• TDado: Especialização da classe TFormula que representa todas as

informações envolvidas no processo de troca de mensagens dos

protocolos;

• TRelacao: Especialização da classe TFormula que representa as

realções entre as entidades envolvidas no processo de troca de

mensagens dos protocolos.

5.3.2 Algoritmo de Análise

O algoritmo de análise, implementado na classe TAnalisadorBAN, leva em

consideração as principais regras da lógica BAN, e aproxima-se ao máximo do

raciocínio utilizado pelos analisadores no momento de decidirem pelo caminho mais

adequado a seguir na análise.

O algoritmo, após fragmentar as mensagens recebidas na forma de

fórmulas, busca verificar se houve o atendimento de todos os objetivos propostos

pelo protocolo. Além da busca pelo atendimento, existe a preocupação em

determinar se o atendimento ocorreu a partir de uma crença duvidosa, evidenciando

assim uma possível falha no protocolo analisado.

O algoritmo obedece aos seguintes passos conforme o diagrama de

atividades da figura 15:

Page 53: Logica BAN 2004

52

Figura 15 – Algoritmo de análise

Page 54: Logica BAN 2004

53

5.4 IMPLEMENTAÇÃO

5.4.1 Ferramentas de Desenvolvimento

No desenvolvimento foram utilizadas duas ferramentas de apoio, uma para a

modelagem e análise do sistema, e outra para a implementação. Na modelagem do

sistema (ferramenta) utilizou-se o ModelMaker. Essa ferramenta permite que sejam

confeccionados os diagramas segundo o padrão UML (Unified Modelage Language),

amplamente empregado no desenvolvimento de sistemas computacionais. A figura

16 ilustra o ambiente de trabalho do ModelMaker.

Figura 16 – Ambiente de trabalho do ModelMaker

Para a implementação propriamente dita, utilizou-se a linguagem de

programação Delphi, a qual possui alto grau de integração com as informações

geradas pelo ModelMaker. O Delphi é uma linguagem orientada a objeto que

permite utilizar todas as vantagens que a programação orientada a objeto oferece,

Page 55: Logica BAN 2004

54

permitindo desta forma, a implementação da ferramenta. A figura 17 ilustra o

ambiente de trabalho do Delphi 7.0.

Figura 17 – Ambiente de trabalho do Delphi 7.0

5.4.2 Interface com o Usuário

A interface da ferramenta analisadora com o usuário é composta por várias

janelas que permitem desde a edição dos arquivos de análise até a exibição do

conteúdo do arquivo de resultados gerados pela análise do protocolo.

5.4.2.1 Janela Principal

A janela principal é a primeira janela visualizada pelo o usuário e consiste

em um menu principal com as opções suportadas pela ferramenta, uma barra de

ferramentas com as opções mais usuais e uma lista de visualização dos arquivos de

análise gravados (Figura 18).

Page 56: Logica BAN 2004

55

Figura 18 – Janela principal da ferramenta

5.4.2.2 Janela de Edição dos Arquivos de Análise

Essa janela permite a edição das informações preliminares exigidos na

análise do protocolo, além de dados meramente descritivos (Figura 19). As

informações preliminares são compostas pelas mensagens do protocolo idealizado,

crenças e suposições referentes ao protocolo e os objetivos propostos pela

especificação do mesmo.

Figura 19 – Janela de edição de análise

Page 57: Logica BAN 2004

56

5.4.2.3 Janela de Edição das Mensagens do Protocolo Idealizado

Essa janela é acessada a partir da janela de edição do arquivo de análise,

na guia de Mensagens, quando clicado o botão "Adicionar" ou "Modificar" (Figura

20). Permite a edição das mensagens do protocolo idealizado, isto é, as mensagens

de acordo com as especificações que o método de análise modal. O campo

"Condição" possui a fórmula a ser procurada no final do tratamento da respectiva

mensagem, que caso venha a existir, o conteúdo do campo "Calcular" é inserido no

repositório.

Figura 20 – Janela de edição de mensagem

5.4.2.4 Janela de Edição das Crenças

Essa janela é acessada a partir da janela de edição do arquivo de análise,

na guia de Crenças e Suposições, quando clicado o botão "Adicionar" ou "Modificar"

(Figura 21). Permite a edição das crenças utilizadas pelo analisador na análise do

protocolo referenciado. Destaca-se o campo "Crença Duvidosa", indicando a falta

de certeza na crença em questão.

Page 58: Logica BAN 2004

57

Figura 21 – Janela de edição de crença

5.4.2.5 Janela de Edição dos Objetivos

Essa janela é acessada a partir da janela de edição do arquivo de análise,

na guia de Objetivos, quando clicado o botão "Adicionar" ou "Modificar" (Figura 22).

Permite a edição dos objetivos propostos pelo protocolo utilizados pelo analisador na

análise, verificando os seus atendimentos no final da mesma.

Figura 22 – Janela de edição de objetivo

5.4.2.6 Janela de Opções

Essa janela é acessada a partir da janela principal e a permite edição de

opções utilizadas pela ferramenta analisadora (Figura 23). O campo "Pasta de

análises" informa o diretório onde serão gravados e lidos os arquivos de análise e

resultado. Por sua vez, o campo "Crenças Duvidosas" informa os procedimentos

adotados pela ferramenta com relação às crenças duvidosas.

Page 59: Logica BAN 2004

58

Figura 23 – Janela de Opções

5.4.2.7 Janela de Resultados

Essa janela é acessada a partir execução do algoritmo de análise e permite

a visualização do conteúdo do arquivo de resultado. O arquivo de resultado é

gravado no mesmo local do arquivo de análise, porém não é exibido no visualizador

de arquivos (Figura 24).

Figura 24 – Janela de visualização de resultados

Page 60: Logica BAN 2004

59

5.5 PROCEDIMENTOS OPERACIONAIS

5.5.1 Nova Análise

Para realizar uma nova análise de um determinado protocolo, é necessário

que sejam seguidos os seguintes passos:

• 1º passo: iniciar novo arquivo de análise, clicando no menu Arquivo e em

seguida no menu Novo (Figura 25);

Figura 25 – Primeiro passo de uma nova análise

• 2º passo: preencher os campos descritivos do arquivo de análise na guia

Geral da janela de edição (Figura 26). O valor destes campos tem

importância somente na identificação da análise, do analisador

responsável e o nome do protocolo a analisar;

Page 61: Logica BAN 2004

60

Figura 26 – Segundo passo de uma nova análise

• 3º passo: preencher a lista de mensagens que compõem o protocolo

idealizado segundo a lógica BAN na ordem em que as mesmas deverão

ser executadas. A lista das mensagens está localizada na guia

"Mensagens" e a edição das mensagens é dada pelas operações de

Adição, Modificação, Remoção e Ordenação. A figura 27 ilustra a janela

de edição de mensagem.

Figura 27 – Terceiro passo de uma nova análise

Page 62: Logica BAN 2004

61

Na edição da mensagem é exibida a janela composta pelos campos de

origem, destino, descrição, conteúdo, condição e calcular. Os valores dos últimos

três campos deverão seguir a notação básica da lógica BAN, e para tal, o campo de

edição, denominado campo BAN, possui recursos especiais . As teclas F2 a F4 são

atalhos para inserir os símbolos relacionais empregado pela lógica: compartilhado,

possui, e segredo respectivamente. Por sua vez, as teclas F5 a F8 são atalhos para

inserir os símbolos de operação das entidades: acredita, disse, recebeu e controla

respectivamente.

• 4º passo: preencher a lista de crenças e suposições que farão parte da

análise do protocolo. A lista das crenças está localizada na guia "Crenças

e Suposições" e sua edição é dada pelas operações de Adição,

Modificação e Remoção. Na janela de edição, o campo "Conteúdo"

também é do tipo BAN, portanto, adota as mesmas teclas de atalho dos

campos BAN anteriormente citados. O campo "Crenças Duvidosa"

informa a falta de certeza na consistência da crença. A figura 28 ilustra a

janela de edição de crença;

Figura 28 – Quarto passo de uma nova análise

Page 63: Logica BAN 2004

62

• 5º passo: preencher a lista de objetivos propostos pelo protocolo a

analisar que serão verificados no final do tratamento das mensagens. A

lista dos objetivos está localizada na guia "Objetivos" e sua edição é

dada pelas operações de Adição, Modificação e Remoção. Na edição, o

campo "Conteúdo" é do tipo BAN, implicando na obediência das mesmas

regras anteriormente explicitadas. A figura 29 ilustra a janela de edição;

Figura 29 – Quinto passo de uma nova análise

• 6º passo: gravar arquivo de análise clicando o botão "OK". Em seguida

informar o nome do arquivo no diálogo correspondente;

• 7º passo: executar análise selecionando o respectivo arquivo e clicando

no menu "Análise" e em seguida no menu "Analisar";

• 8º passo: após a análise será exibido o conteúdo do arquivo de resultado

no visualizador (Figura 30).

Page 64: Logica BAN 2004

63

Figura 30 – Último passo de uma nova análise

5.5.2 Última Análise

Para visualizar o conteúdo do arquivo de resultado de uma análise realizada

anteriormente é necessário selecionar o arquivo de análise correspondente e

executar a análise novamente. Antes de executar a análise a ferramenta verifica a

existência de arquivo de resultado correspondente. Caso a verificação se confirme,

um diálogo de questionamento é exibido com a mensagem "Já existe resultado para

esse arquivo. Deseja analisar o arquivo novamente?". Se a resposta for "Não", é

exibido o conteúdo do arquivo de resultado gerado pela análise anterior. A figura 31

ilustra o diálogo de questionamento.

Figura 31 – Diálogo de questionamento sobre reanálise

Page 65: Logica BAN 2004

64

5.5.3 Configuração

A configuração da ferramenta consiste em duas opções, e a interface

associada é a janela de opções. A primeira opção informa o diretório dos arquivos de

análise e resultado utilizados pela ferramenta. A segunda informa o procedimento a

ser adotado com as crenças duvidosas. Essa opção pode assumir um dos três

valores distintos: Considerar todas, Ignorar todas e Considerar mediante

confirmação. No primeiro valor, todas as crenças duvidosas são consideradas. No

segundo valor, o procedimento é o oposto do primeiro. O terceiro valor indica que o

procedimento adotado será de acordo com a resposta ao diálogo de questionamento

exibido antes da análise. A figura 32 apresenta o diálogo questionando o

procedimento a adotar quanto às crenças duvidosas.

Figura 32 – Diálogo de questionamento sobre crença duvidosa

5.5.4 Outras Operações

Outras operações como abrir, renomear, excluir e copiar são executadas

selecionando o arquivo de análise e clicando no menu correspondente do menu

"Arquivo" (Figura 33).

Figura 33 – Menu Arquivo

Page 66: Logica BAN 2004

65

5.6 TESTES

Os testes da ferramenta consistiram em reproduzir os mesmos resultados

obtidos a partir de análises manuais empregando o método de análise modal

utilizando lógica BAN. Para tanto, analisaram-se vários protocolos de segurança de

redes sem fio, em especial protocolos de autenticação para redes celulares.

Também foram analisados protocolos de distribuição de chaves.

A exemplo dos testes efetuados, o presente trabalho demonstra os

resultados obtidos através da ferramenta, na análise do protocolo de distribuição de

chaves de Needhan-Schroeder, e os confronta com os resultados obtidos através da

análise manual realizada na seção 4.3.3. O quadro 4 demonstra os resultados

obtidos manualmente de acordo com os objetivos propostos pelo protocolo.

Quadro 4 – Resultado da análise manual

Objetivos

1) A obter chave de sessão Kab: A (A B)

2) B obter chave de sessão Kab: B (A B)

3) A autenticar B: A B (A B)

4) B autenticar A: B A (A B)

Porém, os objetivos 2 e 4 foram atendidos somente pela existência da crença

duvidosa "B #(A B)".

Em seguida, a figura demonstra os resultados obtidos a partir da ferramenta na

análise do mesmo protocolo (Figura 34).

Page 67: Logica BAN 2004

66

Figura 34 – Resultado obtido através da ferramenta

Portanto, pôde-se constatar que a ferramenta obteve os mesmos resultados

dos obtidos através da análise manual.

Foram realizados testes com outros protocolos, como dos sistemas GSM,

CDPD, UMTS e WEP, obtendo igualmente os mesmos resultados e conclusões que

os encontrados na análise manual respectivamente.

Page 68: Logica BAN 2004

67

6 CONCLUSÃO

Esse trabalho buscou o estudo detalhado dos métodos de análise de

protocolos de segurança de redes sem fio, em especial os métodos de análise modal

baseados na lógica BAN, para o desenvolvimento de uma ferramenta que fosse

capaz de realizar as mesmas tarefas que um analisador no processo manual. Para

tanto, vários aspectos construtivos foram levados em consideração, chegando a

algumas conclusões:

• as informações de entrada (informações do protocolo) e de saída

(resultados) sob forma de arquivos possibilitariam um fácil e eficaz

gerenciamento das mesmas;

• a interdependência lógica entre as regras permitiria o desenvolvimento

do algoritmo de análise;

• conhecimentos e experiências relacionadas a desenvolvimento de

software, modelagem e programação orientada a objeto contribuiriam

para atendimento dos objetivos.

Num aspecto não construtivo, observou-se ainda que os métodos de análise

têm grande importância no planejamento e verificação dos protocolos. Constatou-se

que mesmo aparentemente apresentando um quadro de funcionamento, os

protocolos podem apresentar determinadas falhas que são detectadas, muitas

vezes, após sua publicação. Também se chegou à conclusão que os requisitos de

autenticação no processo de comunicação de um sistema sem fio, representam o

ponto de vulnerabilidade mais requisitado na segurança, uma vez que durante essa

etapa são negociadas informações fundamentais no estabelecimento do canal

seguro.

Dos métodos de análise modal estudados, o que emprega a lógica BAN no

processo foi o que apresentou os melhores resultados na verificação dos protocolos

de autenticação e troca de chaves. Porém, o método está sujeito a erros, uma vez

que a avaliação do protocolo baseia-se nas informações preliminares como

mensagens, crenças e objetivos. A determinação equivocada destas informações

pode comprometer toda a análise, havendo desta forma, a necessidade de reiniciar

o processo.

Page 69: Logica BAN 2004

68

Com o uso da ferramenta a complexidade do processo de análise foi

minimizada, automatizada e reduzida a poucas interações do usuário, aumentando

satisfatoriamente a qualidade da análise e aumentando as possibilidades de

aplicação do método. Além da verificação do atendimento dos objetivos propostos

pelo protocolo analisado, é possível determinar possíveis causas da falha detectada.

A importância dada a protocolos de segurança para redes sem fio mais

íntegros e eficientes é evidenciada pela grande demanda do mercado a tecnologias

wireless (sem fio). Numa análise de mercado pôde-se observar uma tendência de

crescimento do uso da tecnologia para várias operações envolvendo troca de

informações sigilosas, acentuando o grau de importância e comprometimento dos

mecanismos responsáveis pela segurança do sistema. Portanto, chegou-se a

conclusão que o desenvolvimento da ferramenta foi justificado e oportuno,

contribuindo desta forma para a validação do método e indiretamente a promoção da

confiabilidade nos sistemas sem fio por ela analisada.

Por fim, várias dificuldades foram encontradas durante a fase de elaboração

do trabalho, destacando a escassez de material nacional de pesquisa sobre o

assunto, sendo contornada através da busca em outras fontes. Porém, no que diz

respeito ao ambiente de trabalho, é importante citar que as ferramentas de apoio

utilizadas no desenvolvimento mostraram-se adequadas e eficientes, possibilitando

futuras implementações e adequações da ferramenta para aplicação em outros

casos semelhantes.

Page 70: Logica BAN 2004

69

7 REFERÊNCIAS BIBLIOGRÁFICAS

ALENCAR, Marcelo S. Sistemas de Comunicações. São Paulo: Editora Érica,

2001.

BRASIL. Decreto Lei nº 3.587, de 5 de setembro de 2000. Estabelece normas para

a infra-Estrutura de Chaves Públicas do Poder Executivo Federal – ICP-Gov.

Diário Oficial da República Federativa do Brasil. Brasília, 5 set 2000.

FERRARI, Antonio M. Telecomunicações: evolução & revolução, 8. ed. São

Paulo: Editora Érica, 2003.

GARG, Vijay Kumar. Wireless and Personal Communications System. New York:

IEEE Telecomunications Handbook Series, 1996.

KYNTAJA, Timo. A Logic of Authentication by Burrows, Abadi and Needham,

Finlândia, [1995]. Disponível em: <http://www.tml.hut.fi/opinnto/tik-

110.501/1995/ban.html>. Acessado em: 10 mar 2004.

RNP. As Tecnologias de Redes Wireless. Brasil, [2004]. Disponível em:

<http://www.rpn.Br/newsgen/9805/wireless.html>. Acessado em 05 mar 2004.

RNT. Revista de Negócios em Telecomunicações. Brasil, [2004]. Disponível em:

<http://www.rnt.com.br>. Acessado em: 05 mar 2004.

SANTOS, Myrna C. Martins. Análise Formal de Protocolos de Autenticação para

Redes Celulares. Rio de Janeiro: IME, 2002.

TANENBAUM, Andrew S. Redes de Computadores, 4. ed. São Paulo: Editora

Campus, 2003.