28

DIÇÃO FCA – Editora de Informática, Lda. Av. Praia da ... · IPRP main.tex 15/6/2018 15: 32 Page xi Índice 3.6.3 Gestão de chaves . . . . . . . . . . . . . . . . . . .

  • Upload
    lenhan

  • View
    216

  • Download
    1

Embed Size (px)

Citation preview

EDIÇÃO FCA – Editora de Informática, Lda. Av. Praia da Vitória, 14 A – 1000-247 Lisboa Tel: +351 213 511 448 [email protected] www.fca.pt

DISTRIBUIÇÃO Lidel – Edições Técnicas, Lda. Rua D. Estefânia, 183, R/C Dto. – 1049-057 Lisboa Tel: +351 213 511 448 [email protected] www.lidel.pt

LIVRARIA Av. Praia da Vitória, 14 A – 1000-247 Lisboa Tel: +351 213 511 448 [email protected]

Copyright © 2018, FCA – Editora de Informática, Lda. ISBN edição impressa: 978-972-722-857-7 3.ª edição atualizada e aumentada: janeiro 2010 5.ª edição atualizada impressa: julho 2018

Impressão e acabamento: CAFILESA – Soluções Gráficas, Lda. – Venda do Pinheiro Depósito Legal n.º 442903/18 Capa: José M. Ferrão – Look-Ahead

Todos os nossos livros passam por um rigoroso controlo de qualidade, no entanto aconselhamos a consulta periódica do nosso site (www.fca.pt) para fazer o download de eventuais correções.

Não nos responsabilizamos por desatualizações das hiperligações presentes nesta obra, que foram verificadas à data de publicação da mesma.

Os nomes comerciais referenciados neste livro têm patente registada.

Marcas Registadas de FCA – Editora de Informática, Lda. – ®

®

Reservados todos os direitos. Esta publicação não pode ser reproduzida, nem transmitida, no todo ou em parte, por qualquer processo eletrónico, mecânico, fotocópia, digitalização, gravação, sistema de armazenamento e disponibilização de informação, sítio Web, blogue ou outros, sem prévia autorização escrita da Editora, exceto o permitido pelo CDADC, em termos de cópia privada pela AGECOP – Associação para a Gestão da Cópia Privada, através do pagamento das respetivas taxas.

IPRP main.tex 15/6/2018 15: 32 Page vii

Índice

Nota do Autor xxi

1 Introdução 1

1.1 Introdução . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1

1.1.1 Defesa contra catástrofes físicas . . . . . . . . . . . . . . . . . . . . . . 1

1.1.2 Defesa contra faltas ou falhas previsíveis . . . . . . . . . . . . . . . . . 2

1.1.3 Defesa contra atividades não autorizadas . . . . . . . . . . . . . . . . 4

1.2 Vulnerabilidades, ataques, riscos e defesas . . . . . . . . . . . . . . . . . . . . 6

1.2.1 Complexidade do problema . . . . . . . . . . . . . . . . . . . . . . . . 6

1.2.2 Atitudes realistas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

1.2.3 Defesa de perímetro vs. defesa em profundidade . . . . . . . . . . . . . 9

1.3 Políticas vs. mecanismos de segurança . . . . . . . . . . . . . . . . . . . . . . 9

1.3.1 Definição de políticas . . . . . . . . . . . . . . . . . . . . . . . . . . . 10

1.3.2 Padrão ISO 17799 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

1.3.3 Escolha de mecanismos . . . . . . . . . . . . . . . . . . . . . . . . . . 13

1.3.4 Segurança pela ocultação (security by obscurity) . . . . . . . . . . . . 16

1.4 Segurança em sistemas distribuídos . . . . . . . . . . . . . . . . . . . . . . . . 17

1.4.1 Riscos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18

1.5 Estrutura do livro . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20

2 Criptografia 23

2.1 Introdução . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

2.2 Criptografia e criptanálise . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24

2.3 Evolução da tecnologia de cifra . . . . . . . . . . . . . . . . . . . . . . . . . . 25

2.4 Tipos de cifra . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27

2.4.1 Cifras monoalfabéticas . . . . . . . . . . . . . . . . . . . . . . . . . . . 28

2.4.2 Cifras polialfabéticas . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30

c© FCA – EDITORA DE INFORMÁTICA vii

IPRP main.tex 15/6/2018 15: 32 Page viii

Segurança em Redes Informáticas

2.4.2.1 Índice de coincidência . . . . . . . . . . . . . . . . . . . . . . 31

2.4.2.2 Teste de Kasiski . . . . . . . . . . . . . . . . . . . . . . . . . 31

2.5 Abordagens à criptografia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32

2.5.1 Abordagens teóricas . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32

2.5.2 Abordagens práticas . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33

2.5.2.1 Difusão e confusão . . . . . . . . . . . . . . . . . . . . . . . . 35

2.5.2.2 Boas práticas . . . . . . . . . . . . . . . . . . . . . . . . . . . 35

2.5.3 Cifras contínuas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36

2.6 Cifras modernas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38

2.6.1 Modo de operação . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38

2.6.1.1 Cifras por blocos . . . . . . . . . . . . . . . . . . . . . . . . . 38

2.6.1.2 Cifras contínuas . . . . . . . . . . . . . . . . . . . . . . . . . 38

2.6.2 Tipo de chave . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39

2.6.2.1 Cifras simétricas . . . . . . . . . . . . . . . . . . . . . . . . . 39

2.6.2.2 Cifras assimétricas . . . . . . . . . . . . . . . . . . . . . . . . 39

2.6.2.3 Cifras mistas ou híbridas . . . . . . . . . . . . . . . . . . . . 40

2.7 Exemplos de cifras modernas . . . . . . . . . . . . . . . . . . . . . . . . . . . 41

2.7.1 Cifras simétricas por blocos . . . . . . . . . . . . . . . . . . . . . . . . 41

2.7.1.1 Caso de estudo: DES . . . . . . . . . . . . . . . . . . . . . . 43

2.7.2 Cifras simétricas contínuas . . . . . . . . . . . . . . . . . . . . . . . . 45

2.7.2.1 Caso de estudo: A5 . . . . . . . . . . . . . . . . . . . . . . . 46

2.7.3 Cifras assimétricas (por blocos) . . . . . . . . . . . . . . . . . . . . . . 48

2.7.3.1 Caso de estudo: algoritmo de Diffie-Hellman . . . . . . . . . 50

2.7.3.2 Caso de estudo: RSA . . . . . . . . . . . . . . . . . . . . . . 51

2.7.3.3 Caso de estudo: ElGamal . . . . . . . . . . . . . . . . . . . . 52

2.7.3.4 Caso de estudo: curvas elípticas . . . . . . . . . . . . . . . . 53

2.7.3.4.1 Escolha de uma curva elíptica . . . . . . . . . . . . 55

2.8 Aplicação das cifras por blocos: modos de cifra . . . . . . . . . . . . . . . . . 56

2.8.1 ECB e CBC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56

viii c© FCA – EDITORA DE INFORMÁTICA

IPRP main.tex 15/6/2018 15: 32 Page ix

Índice

2.8.2 OFB e CFB de n bits . . . . . . . . . . . . . . . . . . . . . . . . . . . 58

2.8.3 CTR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60

2.8.4 Comparação dos modos de cifra . . . . . . . . . . . . . . . . . . . . . . 60

2.8.5 Tratamento de sub-blocos . . . . . . . . . . . . . . . . . . . . . . . . . 62

2.8.6 Reforço da segurança . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64

2.8.6.1 Cifra múltipla . . . . . . . . . . . . . . . . . . . . . . . . . . 64

2.8.6.2 Branqueamento (whitening) . . . . . . . . . . . . . . . . . . . 65

2.8.7 Padrão PKCS #1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66

2.8.7.1 RSAES-PKCS1-v1_5 . . . . . . . . . . . . . . . . . . . . . . 66

2.8.7.2 RSAES-OAEP . . . . . . . . . . . . . . . . . . . . . . . . . . 67

2.9 Funções de síntese . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68

2.10 Autenticadores de dados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71

2.10.1 Autenticadores de mensagens (MAC) . . . . . . . . . . . . . . . . . . . 72

2.10.1.1 Caso de estudo: CBC-MAC . . . . . . . . . . . . . . . . . . . 73

2.10.1.2 Caso de estudo: DES-MAC . . . . . . . . . . . . . . . . . . . 73

2.10.1.3 Caso de estudo: Keyed-MD5 . . . . . . . . . . . . . . . . . . 74

2.10.1.4 Caso de estudo: HMAC . . . . . . . . . . . . . . . . . . . . . 74

2.10.2 Cifra autenticada . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75

2.10.2.1 Caso de estudo: EPBC . . . . . . . . . . . . . . . . . . . . . 76

2.10.2.2 Caso de estudo: GCM . . . . . . . . . . . . . . . . . . . . . . 76

2.10.2.3 Caso de estudo: CCM . . . . . . . . . . . . . . . . . . . . . . 78

2.10.3 Assinaturas digitais . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80

2.10.3.1 Caso de estudo: ElGamal . . . . . . . . . . . . . . . . . . . . 81

2.10.3.2 Caso de estudo: DSS, DSA e ECDSA . . . . . . . . . . . . . 81

2.10.4 Assinaturas às cegas . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83

3 Gestão de Chaves Públicas 85

3.1 Introdução . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85

3.2 Geração, salvaguarda e uso das chaves privadas . . . . . . . . . . . . . . . . . 85

3.2.1 Smartcards . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85

c© FCA – EDITORA DE INFORMÁTICA ix

IPRP main.tex 15/6/2018 15: 32 Page x

Segurança em Redes Informáticas

3.2.2 Padrão PKCS #11 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86

3.2.3 CryptoAPI (Cryptographic Application Programming Interface) . . . . 88

3.3 Distribuição de chaves públicas . . . . . . . . . . . . . . . . . . . . . . . . . . 89

3.3.1 Distribuição manual . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89

3.3.2 Distribuição embebida . . . . . . . . . . . . . . . . . . . . . . . . . . . 90

3.3.3 Distribuição interativa . . . . . . . . . . . . . . . . . . . . . . . . . . . 90

3.3.4 Distribuição ad hoc . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90

3.4 Certificação digital . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91

3.4.1 Estrutura dos certificados digitais . . . . . . . . . . . . . . . . . . . . . 91

3.4.2 Cadeias de certificação . . . . . . . . . . . . . . . . . . . . . . . . . . . 93

3.4.3 Gestão de certificados autocertificados . . . . . . . . . . . . . . . . . . 93

3.4.4 Modelos de certificação . . . . . . . . . . . . . . . . . . . . . . . . . . 94

3.4.4.1 Monopólio . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95

3.4.4.2 Oligarquia . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96

3.4.4.3 Certificação cruzada . . . . . . . . . . . . . . . . . . . . . . . 97

3.4.4.4 Malha (mesh) . . . . . . . . . . . . . . . . . . . . . . . . . . 98

3.4.4.5 Anárquico . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98

3.4.5 Infraestruturas de gestão de chaves públicas . . . . . . . . . . . . . . . 99

3.4.5.1 CRL (Certificate Revocation List) . . . . . . . . . . . . . . . 100

3.4.5.2 OCSP (Online Certificate Status Protocol) . . . . . . . . . . 102

3.5 Caso de estudo: Cartão de Cidadão . . . . . . . . . . . . . . . . . . . . . . . . 102

3.5.1 Autenticação com o smartcard do Cartão de Cidadão . . . . . . . . . 104

3.5.2 Assinaturas digitais com o smartcard do Cartão de Cidadão . . . . . . 105

3.5.3 Hierarquias de certificação do Cartão de Cidadão . . . . . . . . . . . . 105

3.5.4 Segurança oferecida pelo Cartão de Cidadão . . . . . . . . . . . . . . . 109

3.5.5 Middleware do Cartão de Cidadão . . . . . . . . . . . . . . . . . . . . 110

3.6 Caso de estudo: PGP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111

3.6.1 Chaveiros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111

3.6.2 Geração de um par de chaves . . . . . . . . . . . . . . . . . . . . . . . 112

x c© FCA – EDITORA DE INFORMÁTICA

IPRP main.tex 15/6/2018 15: 32 Page xi

Índice

3.6.3 Gestão de chaves . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113

3.6.3.1 Divulgação de chaves públicas . . . . . . . . . . . . . . . . . 113

3.6.3.2 Importação de chaves públicas . . . . . . . . . . . . . . . . . 113

3.6.3.3 Certificação de chaves públicas . . . . . . . . . . . . . . . . . 114

3.6.4 Cadeias de certificação . . . . . . . . . . . . . . . . . . . . . . . . . . . 115

3.6.5 Revogação de pares de chaves . . . . . . . . . . . . . . . . . . . . . . . 116

3.6.6 Cifra e decifra de conteúdos . . . . . . . . . . . . . . . . . . . . . . . . 117

3.6.7 Assinatura de conteúdos . . . . . . . . . . . . . . . . . . . . . . . . . . 118

3.6.8 Cifra, decifra e assinatura de conteúdos . . . . . . . . . . . . . . . . . 119

4 Vulnerabilidades em Máquinas de Sistemas Distribuídos 121

4.1 Introdução . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121

4.2 Detetores de vulnerabilidades . . . . . . . . . . . . . . . . . . . . . . . . . . . 121

4.2.1 Identificação de sistemas operativos . . . . . . . . . . . . . . . . . . . 121

4.2.1.1 Flâmulas (banners) . . . . . . . . . . . . . . . . . . . . . . . 122

4.2.1.2 Impressão digital da pilha de protocolos IP (IP fingerprinting)122

4.2.1.3 Caso de estudo: nmap . . . . . . . . . . . . . . . . . . . . . . 123

4.2.1.4 Caso de estudo: RING . . . . . . . . . . . . . . . . . . . . . . 126

4.2.2 Inventariação de serviços . . . . . . . . . . . . . . . . . . . . . . . . . 127

4.2.2.1 Portos TCP . . . . . . . . . . . . . . . . . . . . . . . . . . . 127

4.2.2.2 Mediação com servidores FTP . . . . . . . . . . . . . . . . . 128

4.2.2.3 Mediação com oráculos (idle scan) . . . . . . . . . . . . . . . 129

4.2.2.4 Portos UDP . . . . . . . . . . . . . . . . . . . . . . . . . . . 130

4.2.2.5 Portos de transporte não fixos . . . . . . . . . . . . . . . . . 130

4.2.2.6 Reconhecimento de versões de servidores . . . . . . . . . . . 131

4.2.3 Inventariação de deficiências de administração . . . . . . . . . . . . . . 132

4.2.3.1 Caso de estudo: OpenVAS e Nessus . . . . . . . . . . . . . . 133

4.3 Cenários absurdos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135

4.3.1 Teardrop attack . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135

4.3.2 Land attack . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136

c© FCA – EDITORA DE INFORMÁTICA xi

IPRP main.tex 15/6/2018 15: 32 Page xii

Segurança em Redes Informáticas

4.3.3 Ataque ECHO-CHARGEN . . . . . . . . . . . . . . . . . . . . . . . . 137

4.3.4 Sobrefragmentação de datagramas IP: Ping-of-Death . . . . . . . . . . 137

4.3.5 Excesso de meias-ligações TCP: SYN flooding attack . . . . . . . . . . 138

4.4 Problemas de realização . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140

4.4.1 Ataque de esmagamento da pilha (stack smashing attack) . . . . . . . 143

4.4.2 Ataque com sequências de formatação (format string attack) . . . . . 146

5 Vulnerabilidades em Redes Locais e de Grande Escala 149

5.1 Introdução . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149

5.2 Levantamento de informação arquitetural . . . . . . . . . . . . . . . . . . . . 149

5.3 Tradução de nomes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150

5.3.1 Uso de nomes DNS enganadores . . . . . . . . . . . . . . . . . . . . . 151

5.3.2 Resolução errada de nomes DNS (DNS spoofing) . . . . . . . . . . . . 152

5.3.3 Obtenção errada de endereços MAC (MAC spoofing) . . . . . . . . . . 156

5.4 Confidencialidade . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 158

5.4.1 Captura de senhas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160

5.4.2 Captura de dados em ligações sem fios . . . . . . . . . . . . . . . . . . 162

5.4.2.1 Caso de estudo: 802.11 WLAN e WEP . . . . . . . . . . . . 162

5.5 Autenticidade . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163

5.5.1 Pedidos fraudulentos sobre UDP . . . . . . . . . . . . . . . . . . . . . 164

5.5.2 Iniciação fraudulenta de ligações TCP . . . . . . . . . . . . . . . . . . 164

5.5.3 Reencaminhamento de tráfego IP . . . . . . . . . . . . . . . . . . . . . 165

5.5.3.1 Datagramas ICMP Redirect . . . . . . . . . . . . . . . . . . . 165

5.5.3.2 Opção Source Route do IP . . . . . . . . . . . . . . . . . . . 165

5.5.4 Sequestro de ligações TCP (TCP hijacking) . . . . . . . . . . . . . . . 166

5.5.5 Problemas de autoria e integridade em correio eletrónico . . . . . . . . 169

5.6 Prestação de serviços . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 170

5.6.1 Amplificação de ataques . . . . . . . . . . . . . . . . . . . . . . . . . . 171

5.6.2 Caso de estudo: ataques Smurf e Fraggle . . . . . . . . . . . . . . . . . 171

5.6.3 Caso de estudo: amplificação de tráfego com servidores . . . . . . . . . 173

xii c© FCA – EDITORA DE INFORMÁTICA

IPRP main.tex 15/6/2018 15: 32 Page xiii

Índice

5.6.4 Ataques ao serviço DNS . . . . . . . . . . . . . . . . . . . . . . . . . . 175

6 Firewalls 177

6.1 Introdução . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177

6.2 Arquitetura de uma firewall . . . . . . . . . . . . . . . . . . . . . . . . . . . . 179

6.2.1 Estrutura básica . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 179

6.2.2 Firewalls pessoais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 180

6.2.3 Componentes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 181

6.2.4 DMZ (zona desmilitarizada) . . . . . . . . . . . . . . . . . . . . . . . . 181

6.2.5 Barreiras múltiplas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 182

6.2.6 Localização de serviços públicos . . . . . . . . . . . . . . . . . . . . . . 183

6.2.7 Tradução de endereços (NAT) . . . . . . . . . . . . . . . . . . . . . . . 184

6.2.7.1 IP masquerading . . . . . . . . . . . . . . . . . . . . . . . . . 184

6.2.7.2 Port forwarding . . . . . . . . . . . . . . . . . . . . . . . . . 185

6.2.8 Encapsulamento (tunneling) . . . . . . . . . . . . . . . . . . . . . . . . 185

6.3 Modelo de intervenção . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 186

6.3.1 Filtro de datagramas (packet filter) . . . . . . . . . . . . . . . . . . . . 186

6.3.1.1 Exemplos de filtragem . . . . . . . . . . . . . . . . . . . . . . 186

6.3.1.2 Limitações . . . . . . . . . . . . . . . . . . . . . . . . . . . . 188

6.3.1.3 Aspetos operacionais . . . . . . . . . . . . . . . . . . . . . . 189

6.3.2 Filtro de circuitos (circuit gateway) . . . . . . . . . . . . . . . . . . . . 190

6.3.3 Filtro aplicacional (application gateway) . . . . . . . . . . . . . . . . . 193

6.3.3.1 Controlo de acesso de utentes . . . . . . . . . . . . . . . . . . 194

6.3.3.2 Análise e alteração de conteúdos . . . . . . . . . . . . . . . . 194

6.3.3.3 Registo pormenorizado . . . . . . . . . . . . . . . . . . . . . 195

6.3.3.4 Representação . . . . . . . . . . . . . . . . . . . . . . . . . . 195

6.4 Serviços oferecidos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 196

6.4.1 Autorização . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 196

6.4.2 Redirecionamento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 196

6.4.3 Controlo de operações e conteúdos . . . . . . . . . . . . . . . . . . . . 197

c© FCA – EDITORA DE INFORMÁTICA xiii

IPRP main.tex 15/6/2018 15: 32 Page xiv

Segurança em Redes Informáticas

6.4.4 Comunicação segura . . . . . . . . . . . . . . . . . . . . . . . . . . . . 197

6.4.5 Proteção face a ataques DoS ou de reconhecimento de sistemas . . . . 198

6.5 Topologias elementares . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 200

6.5.1 Gateway simples (dual-homed gateway) . . . . . . . . . . . . . . . . . 200

6.5.2 Máquina escondida (screened host) . . . . . . . . . . . . . . . . . . . . 201

6.5.3 Sub-rede escondida (screened subnet) . . . . . . . . . . . . . . . . . . . 202

6.6 Caso de estudo: iptables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202

6.7 Caso de estudo: sistemas MS Windows . . . . . . . . . . . . . . . . . . . . . . 205

7 Sistemas de Deteção de Intrusões 209

7.1 Introdução . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 209

7.1.1 Intrusões e sua deteção . . . . . . . . . . . . . . . . . . . . . . . . . . 210

7.1.2 Perfil de uma intrusão . . . . . . . . . . . . . . . . . . . . . . . . . . . 210

7.1.3 Perfil da defesa contra intrusões . . . . . . . . . . . . . . . . . . . . . 211

7.2 Arquitetura dos IDS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 212

7.3 Classificação dos IDS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 214

7.3.1 Método de deteção . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 214

7.3.2 Fonte de eventos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 216

7.3.3 Instante de deteção . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 217

7.3.4 Reatividade . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 218

7.3.5 Tipo de análise . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 219

7.4 Limitações dos IDS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 219

7.5 Caso de estudo: Tripwire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 220

7.6 Caso de estudo: Snort . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 222

7.7 Caso de estudo: AntiSniff . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 223

8 Redes Privadas Virtuais 225

8.1 Introdução . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 225

8.2 Definição . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 226

8.3 Chaves de sessão . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 226

xiv c© FCA – EDITORA DE INFORMÁTICA

IPRP main.tex 15/6/2018 15: 32 Page xv

Índice

8.3.1 Algoritmo de Diffie-Hellman . . . . . . . . . . . . . . . . . . . . . . . . 227

8.4 Tipos de VPN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 229

8.5 Tecnologias usadas pelas VPN . . . . . . . . . . . . . . . . . . . . . . . . . . 229

8.6 Caso de estudo: VPN SSH . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 230

8.6.1 Túneis seguros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 231

8.6.1.1 Túneis de saída . . . . . . . . . . . . . . . . . . . . . . . . . 231

8.6.1.2 Túneis de entrada . . . . . . . . . . . . . . . . . . . . . . . . 233

8.6.1.3 Túneis dinâmicos . . . . . . . . . . . . . . . . . . . . . . . . 233

8.6.2 Autenticação e autorização . . . . . . . . . . . . . . . . . . . . . . . . 234

8.6.3 Especificações . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 234

8.6.4 Limitações . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 235

8.7 Caso de estudo: VPN SSL/TLS . . . . . . . . . . . . . . . . . . . . . . . . . . 235

8.8 Caso de estudo: VPN IPSec . . . . . . . . . . . . . . . . . . . . . . . . . . . . 237

8.8.1 Associações de segurança . . . . . . . . . . . . . . . . . . . . . . . . . 238

8.8.2 Negociação e instalação das associações de segurança . . . . . . . . . . 238

8.8.3 Afetação das associações de segurança à comunicação . . . . . . . . . 239

8.8.4 Modo de transporte e modo de túnel . . . . . . . . . . . . . . . . . . . 240

8.8.5 Mecanismos AH e ESP . . . . . . . . . . . . . . . . . . . . . . . . . . 240

8.8.6 Utilização típica numa VPN . . . . . . . . . . . . . . . . . . . . . . . . 242

8.9 Caso de estudo: VPN PPTP . . . . . . . . . . . . . . . . . . . . . . . . . . . . 243

8.9.1 Comunicação sobre PPTP . . . . . . . . . . . . . . . . . . . . . . . . . 244

8.9.2 Segurança numa interação PPTP . . . . . . . . . . . . . . . . . . . . . 247

8.9.2.1 Autenticação . . . . . . . . . . . . . . . . . . . . . . . . . . . 247

8.9.2.2 MPPE (Microsoft Point-to-Point Encryption) . . . . . . . . 249

8.9.3 Considerações finais . . . . . . . . . . . . . . . . . . . . . . . . . . . . 250

8.10 Caso de estudo: VPN L2TP . . . . . . . . . . . . . . . . . . . . . . . . . . . . 251

8.10.1 Comunicação sobre L2TP . . . . . . . . . . . . . . . . . . . . . . . . . 251

8.10.2 Segurança numa interação L2TP . . . . . . . . . . . . . . . . . . . . . 252

8.11 Caso de estudo: OpenVPN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 252

c© FCA – EDITORA DE INFORMÁTICA xv

IPRP main.tex 15/6/2018 15: 32 Page xvi

Segurança em Redes Informáticas

8.12 Casos de estudo: PPP sobre SSL ou sobre SSH . . . . . . . . . . . . . . . . . 253

9 Segurança em Redes Sem Fios 802.11 (WLAN ou Wi-Fi) 255

9.1 Introdução . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 255

9.2 Arquitetura de uma rede 802.11 . . . . . . . . . . . . . . . . . . . . . . . . . . 256

9.2.1 Identificadores de rede . . . . . . . . . . . . . . . . . . . . . . . . . . . 256

9.2.2 Comunicação em redes estruturadas . . . . . . . . . . . . . . . . . . . 256

9.2.3 Localização de redes . . . . . . . . . . . . . . . . . . . . . . . . . . . . 258

9.2.4 Associação a redes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 259

9.3 Visão geral da segurança em redes estruturadas . . . . . . . . . . . . . . . . . 260

9.4 WEP (Wired Equivalent Privacy) . . . . . . . . . . . . . . . . . . . . . . . . . 262

9.4.1 Autenticação . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 262

9.4.2 Confidencialidade e controlo de integridade . . . . . . . . . . . . . . . 264

9.4.3 Problemas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 267

9.4.4 Algumas soluções consideradas . . . . . . . . . . . . . . . . . . . . . . 270

9.5 Evolução . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 270

9.5.1 WPA (Wi-Fi Protected Access) . . . . . . . . . . . . . . . . . . . . . . 271

9.5.2 802.11i (ou WPA2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 271

9.5.3 Alterações nas tramas 802.11 . . . . . . . . . . . . . . . . . . . . . . . 272

9.6 TKIP (Temporal Key Integrity Protocol) . . . . . . . . . . . . . . . . . . . . . 273

9.6.1 Confidencialidade . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 275

9.6.2 Controlo de integridade . . . . . . . . . . . . . . . . . . . . . . . . . . 276

9.7 AES-CCMP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 278

9.8 802.1X (Port-based Authentication Protocol) . . . . . . . . . . . . . . . . . . . 280

9.8.1 Interlocutores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 281

9.8.2 Portos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 281

9.8.3 Etapas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 282

9.8.3.1 Primeira etapa: descoberta e associação 802.11 . . . . . . . . 284

9.8.3.2 Segunda etapa: autenticação EAP . . . . . . . . . . . . . . . 284

9.8.3.3 Terceira etapa: acordo em quatro passos . . . . . . . . . . . . 285

xvi c© FCA – EDITORA DE INFORMÁTICA

IPRP main.tex 15/6/2018 15: 32 Page xvii

Índice

9.8.4 Simplificação para ambientes SOHO . . . . . . . . . . . . . . . . . . . 285

9.8.5 Chaves de chave de sessão . . . . . . . . . . . . . . . . . . . . . . . . . 287

9.8.6 Protocolo de acordo em quatro passos . . . . . . . . . . . . . . . . . . 289

9.8.7 Protocolo de acordo de chaves de grupo . . . . . . . . . . . . . . . . . 290

9.9 EAP (Extensible Authentication Protocol) . . . . . . . . . . . . . . . . . . . . 291

9.9.1 Requisitos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 292

9.9.2 EAP-TLS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 292

9.9.3 EAP-TTLS (EAP Tunneled TLS) . . . . . . . . . . . . . . . . . . . . 293

9.9.4 PEAP (Protected EAP) . . . . . . . . . . . . . . . . . . . . . . . . . . 294

9.9.5 EAP-PSK . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 294

9.9.6 EAP-SIM e EAP-AKA . . . . . . . . . . . . . . . . . . . . . . . . . . 296

9.10 Ataques à prestação de serviço (DoS) . . . . . . . . . . . . . . . . . . . . . . . 297

9.10.1 Ataques usando tramas de gestão . . . . . . . . . . . . . . . . . . . . . 297

9.10.1.1 802.11w . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 298

9.10.2 Outros ataques DoS . . . . . . . . . . . . . . . . . . . . . . . . . . . . 299

10 Protocolos de Autenticação 301

10.1 Introdução . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 301

10.2 Caracterização dos protocolos de autenticação . . . . . . . . . . . . . . . . . . 302

10.2.1 Elemento de prova . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 302

10.2.2 Ataques com dicionários . . . . . . . . . . . . . . . . . . . . . . . . . . 303

10.2.2.1 Medidas defensivas . . . . . . . . . . . . . . . . . . . . . . . . 304

10.2.3 Apresentação da prova . . . . . . . . . . . . . . . . . . . . . . . . . . . 305

10.2.3.1 Desafio-resposta com funções invertíveis . . . . . . . . . . . . 305

10.2.3.2 Desafio-resposta com funções não invertíveis . . . . . . . . . 306

10.2.3.3 Frescura das respostas . . . . . . . . . . . . . . . . . . . . . . 307

10.2.3.4 Senhas descartáveis . . . . . . . . . . . . . . . . . . . . . . . 308

10.2.4 Autenticação mútua . . . . . . . . . . . . . . . . . . . . . . . . . . . . 309

10.2.4.1 Ataques por reflexão . . . . . . . . . . . . . . . . . . . . . . . 310

10.2.4.2 Medidas defensivas contra ataques DoS . . . . . . . . . . . . 311

c© FCA – EDITORA DE INFORMÁTICA xvii

IPRP main.tex 15/6/2018 15: 32 Page xviii

Segurança em Redes Informáticas

10.2.4.3 Medidas defensivas contra ataques com dicionários . . . . . . 312

10.2.5 Distribuição de chaves de sessão . . . . . . . . . . . . . . . . . . . . . 313

10.2.6 Autenticação mediada por entidade terceira confiável . . . . . . . . . . 313

10.2.7 Autenticação indireta . . . . . . . . . . . . . . . . . . . . . . . . . . . 315

10.2.8 Single Sign-On . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 316

10.3 Autenticação de pessoas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 317

10.3.1 Autenticação com senha memorizada . . . . . . . . . . . . . . . . . . . 317

10.3.1.1 Caso de estudo: autenticação UNIX . . . . . . . . . . . . . . 318

10.3.1.2 Caso de estudo: autenticação MS Windows . . . . . . . . . . 319

10.3.1.3 Avaliação . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 319

10.3.2 Autenticação com chave secreta partilhada . . . . . . . . . . . . . . . 319

10.3.2.1 Caso de estudo: autenticação com marcadores RFID . . . . . 320

10.3.2.2 Caso de estudo: autenticação em redes GSM . . . . . . . . . 321

10.3.3 Autenticação com chave privada . . . . . . . . . . . . . . . . . . . . . 323

10.3.3.1 Caso de estudo: autenticação de cliente SSH . . . . . . . . . 324

10.3.3.2 Caso de estudo: autenticação de cliente SSL/TLS . . . . . . 325

10.3.4 Autenticação com senhas descartáveis . . . . . . . . . . . . . . . . . . 329

10.3.4.1 Caso de estudo: S/Key e OTP . . . . . . . . . . . . . . . . . 330

10.3.4.2 Caso de estudo: RSA SecurID . . . . . . . . . . . . . . . . . 333

10.3.4.3 Caso de estudo: HOTP . . . . . . . . . . . . . . . . . . . . . 335

10.3.5 Autenticação biométrica . . . . . . . . . . . . . . . . . . . . . . . . . . 336

10.3.5.1 Autenticação vs. identificação . . . . . . . . . . . . . . . . . . 336

10.3.5.2 Fases . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 337

10.3.5.3 Requisitos . . . . . . . . . . . . . . . . . . . . . . . . . . . . 338

10.3.5.4 Afinação e erros . . . . . . . . . . . . . . . . . . . . . . . . . 339

10.3.5.5 Vantagens e desvantagens . . . . . . . . . . . . . . . . . . . . 340

10.3.5.6 Exploração em sistemas de identificação nacionais . . . . . . 341

10.3.6 Metaprotocolos de autenticação . . . . . . . . . . . . . . . . . . . . . . 343

10.3.6.1 Caso de estudo: SAML Web Browser SSO Profile . . . . . . 343

xviii c© FCA – EDITORA DE INFORMÁTICA

IPRP main.tex 15/6/2018 15: 32 Page xix

Índice

10.3.6.2 Caso de estudo: OpenID . . . . . . . . . . . . . . . . . . . . 346

10.3.7 Middleware integrador . . . . . . . . . . . . . . . . . . . . . . . . . . . 348

10.3.7.1 Caso de estudo: PAM . . . . . . . . . . . . . . . . . . . . . . 348

10.4 Autenticação de máquinas ou servidores . . . . . . . . . . . . . . . . . . . . . 350

10.4.1 Distribuição da chave pública da máquina ou do servidor . . . . . . . 351

10.5 Serviços de autenticação . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 352

10.5.1 Caso de estudo: Kerberos . . . . . . . . . . . . . . . . . . . . . . . . . 352

10.5.1.1 Protocolo Needham-Schroeder . . . . . . . . . . . . . . . . . 352

10.5.1.2 O KDC do Kerberos . . . . . . . . . . . . . . . . . . . . . . . 353

10.5.1.3 Principals, domínios e nomes . . . . . . . . . . . . . . . . . . 354

10.5.1.4 Credenciais do Kerberos . . . . . . . . . . . . . . . . . . . . . 354

10.5.1.5 Protocolo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 356

10.5.1.6 Sincronização de relógios . . . . . . . . . . . . . . . . . . . . 357

10.5.1.7 Pré-autenticação e ataques com dicionários . . . . . . . . . . 358

10.5.1.8 Interligação entre domínios . . . . . . . . . . . . . . . . . . . 358

10.5.2 Caso de estudo: RADIUS . . . . . . . . . . . . . . . . . . . . . . . . . 359

10.5.2.1 Estrutura das mensagens RADIUS . . . . . . . . . . . . . . . 361

10.5.2.2 Níveis de indireção . . . . . . . . . . . . . . . . . . . . . . . . 362

10.5.2.3 Novos mecanismos de proteção . . . . . . . . . . . . . . . . . 363

10.5.2.4 Problemas de segurança do RADIUS . . . . . . . . . . . . . 365

Glossário de Termos – Português Europeu/Português do Brasil 367

Referências Bibliográficas 369

Índice Remissivo 387

c© FCA – EDITORA DE INFORMÁTICA xix

IPRP main.tex 8/6/2018 18: 14 Page 2

IPRP main.tex 15/6/2018 15: 32 Page xxi

Nota do Autor

Atualmente, muitas pessoas possuem computadores pessoais ou redes domésticas ligadosde forma intermitente ou permanente à Internet. Pequenas e médias empresas investemigualmente na ligação das suas redes à Internet, tanto para fornecerem uma interação maisrica e atual com os seus clientes como para dinamizarem o seu processo criativo ou denegócio. Em ambos os casos, os utentes e administradores das máquinas ou redes ligadas àInternet pouco sabem objetivamente acerca dos riscos de segurança a que estão expostos.

Este livro alerta para os problemas de segurança que podem advir na ligação de uma máquinaou rede local à Internet e explica de que forma os problemas podem ser minimizados ouevitados. Ajuda também os gestores das máquinas ou redes locais a saberem identificar osseus problemas de segurança e a perceberem bem o âmbito e o alcance das políticas deproteção que podem implantar e dos mecanismos de segurança que existem para esse efeito.

O conteúdo deste livro não é um catálogo de problemas e soluções – fundamentalmente, alertapara o tipo de vulnerabilidades que tipicamente existem e são exploradas em ataques; comopodem ser detetadas as vulnerabilidades ou a sua exploração; como pode ser minimizada aexploração de vulnerabilidades existentes e como se pode tomar medidas ativas e eficazesde proteção quando se interage com ou através da Internet, que é um meio inseguro pornatureza.

Finalmente, muitos dos mecanismos de segurança usados hoje em dia recorrem a técnicascriptográficas, que não são normalmente conhecidas pela grande maioria dos utilizadores daInternet. Nesta obra faz-se uma introdução alargada, mas acessível, às técnicas criptográficasmais usadas e, muito em particular, às políticas atuais de gestão de chaves assimétricas ecertificados de chaves públicas, que cada vez mais são usadas, mas que muitas vezes sãodesconhecidas ou mal compreendidas.

Esta publicação enquadra-se numa área científica que se pode designar genericamente comoSegurança em Redes. Assim, e tendo em conta os conhecimentos subjacentes a esta área espe-cífica do saber, ela destina-se fundamentalmente a duas audiências-alvo: em primeiro lugar,aos utentes ou administradores de redes locais domésticas ou de redes de PME (Pequenas eMédias Empresas). Em segundo lugar, aos alunos de cadeiras de graduação – licenciatura,mestrado ou doutoramento – ou de cursos de pós-graduação na área da Segurança em Redes.

Pressupõe-se que o leitor esteja familiarizado com a pilha de protocolos OSI (Open Systems

Interconnection) [120] e com a sua instanciação parcial na pilha de protocolos TCP/IP.Assume-se ainda que o leitor esteja familiarizado com as funcionalidades básicas dos equipa-mentos de interligação de redes (hubs, switches, gateways, routers, etc.). Consequentemente,não é feita qualquer introdução aos mecanismos-base da comunicação de dados em redes IP,o mais usado hoje em dia e o padrão da Internet. No entanto, certos aspetos relacionadoscom o funcionamento da Internet e das redes locais, como é o caso da resolução de nomes

c© FCA – EDITORA DE INFORMÁTICA xxi

IPRP main.tex 15/6/2018 15: 32 Page xxii

Segurança em Redes Informáticas

DNS e da resolução local de mapeamentos entre endereços IP e endereços MAC, serão des-critos de forma sumária para melhor preparar o leitor para a apresentação das questões desegurança que lhes são inerentes.

Sobre o Autor

André Ventura da Cruz Marnoto Zúquete é licenciado em EngenhariaEletrotécnica e Computadores (Ramo de Sistemas e Computadores)pelo Instituto Superior Técnico (IST) da Universidade de Lisboa.Também no IST obteve o mestrado em Engenharia Eletrotécnicae Computadores e o doutoramento em Engenharia Informática eComputadores. É atualmente professor auxiliar do Departamento deEletrónica, Telecomunicações e Informática da Universidade de Aveiro,investigador do Instituto de Engenharia Eletrónica e Informática deAveiro (IEETA) e colaborador do Instituto de Telecomunicações (IT).

As suas principais áreas de investigação são a Segurança em Sistemas Distribuídos, os Siste-mas Operativos, a Mobilidade, as Arquiteturas de Autenticação, a Deteção de Intrusões e aPrivacidade. Publicou, como autor ou coautor, dezenas de artigos sobre temas relacionadoscom a segurança informática apresentados em workshops, conferências e revistas, tanto dedivulgação como científicas. Também sobre temas relativos à segurança em sistemas distri-buídos, foi orador convidado em diversos fóruns de divulgação, participou na organizaçãoe lecionação de cursos de pós-graduação e foi membro de comités técnicos e de comités deprograma de diversas conferências. Foi também membro de uma equipa de avaliação desistemas de votação eletrónica testados em processos eleitorais nacionais. É, desde 2013, orepresentante português no TC11 (Segurança e Proteção da Privacidade) da IFIP (Interna-

tional Federation for Information Processing) e, desde 2015, membro do conselho científicoda INForum.

Contactos:

E-mail: [email protected]

URL: www.ieeta.pt/~avzwiki.ieeta.pt/wiki/index.php/Andre_Zuquete

xxii c© FCA – EDITORA DE INFORMÁTICA

IPRP main.tex 15/6/2018 15: 32 Page 1

1Introdução

1.1 Introdução

No âmbito da segurança de sistemas computacionais, podem-se considerar três grandes áreasde atividade, todas relevantes e com as suas especificidades: defesa contra catástrofes, defesacontra faltas ou falhas previsíveis e defesa contra atividades não autorizadas. Essas trêsgrandes áreas serão seguidamente introduzidas de forma sumária.

1.1.1 Defesa contra catástrofes físicas

A defesa contra catástrofes físicas visa principalmente conseguir que um sistema computa-cional, ou o serviço que esse sistema presta, consiga sobreviver a catástrofes onde existamconsequências a nível físico. A definição exata do que é uma catástrofe desse tipo não é fácil,mas podem-se considerar as seguintes como exemplos comuns:

Catástrofes ambientais – Tremores de terra, incêndios, inundações, queda de raios,tempestades magnéticas, etc.;

Catástrofes políticas – Ataques terroristas, motins, etc.;

Catástrofes materiais – Degradação irreparável ou perda ou roubo de equipamentoscomputacionais, como discos magnéticos, computadores portáteis, etc.

Todas estas catástrofes são potenciais causas de dano físico irreparável de equipamentosinformáticos e, mais relevante ainda, potenciais causas de perda irreparável de informaçãoarmazenada. Imaginemos, por exemplo, a quantidade de informação que se perdeu com adestruição do World Trade Center em Nova Iorque a 11 de setembro de 2001.

A defesa contra catástrofes físicas segue normalmente uma estratégia de sobrevivência usan-do redundância de equipamentos ou informação. Para que a sobrevivência seja asseguradapode-se usar hardware com redundância (por exemplo, blocos de discos magnéticos mon-tados em RAID – Redundant Array of Independent Disks) ou equipamentos redundantescom informação replicada (por exemplo, dois sistemas iguais e com a mesma informaçãoem locais diferentes e suficientemente distantes). Esta última forma de redundância poderápermitir que o sistema afetado continue a prestar o serviço esperado com uma perturbação

c© FCA – EDITORA DE INFORMÁTICA 1

IPRP main.tex 15/6/2018 15: 32 Page 2

Segurança em Redes Informáticas

que será determinada apenas pelo tempo que levarem a entrar em funcionamento efetivo ossistemas alternativos não afetados.

A forma mais elementar de sobrevivência de informação consiste na realização periódica decópias de salvaguarda (cópias de backup). Se estas cópias forem guardadas suficientementelonge do local da catástrofe, então poderão ser usadas para repor parte ou a totalidadeda informação afetada pela catástrofe. Esta é a forma habitual como as pessoas protegema informação que consideram relevante nos computadores pessoais ou organizacionais queusam. No entanto, os sistemas de salvaguarda temporizados, ou seja, que só atuam em de-terminados instantes temporais bem definidos, não conseguem manter cópias rigorosamenteiguais dos dados do sistema sujeito a catástrofes, mas cópias consideradas suficientementepróximas para minimizar de forma substancial o impacto da catástrofe.

Para além disso, a estratégia de sobrevivência deverá minimizar de forma realista, isto é,tendo em conta relações custo/benefício, a possibilidade de ocorrência de catástrofes oude dano causado pelas mesmas. Assim, infraestruturas computacionais críticas podem serconcentradas em zonas antissísmicas ou abrigadas em abrigos antissísmicos, colocadas emlocais elevados para minimizar a possibilidade de ocorrência de inundações, protegidas con-venientemente da queda de raios, etc. No entanto, tal nem sempre é fácil ou possível dentrodas limitações operacionais e de custos da organização que gere o sistema de informação aproteger.

1.1.2 Defesa contra faltas ou falhas previsíveis

A defesa contra faltas ou falhas previsíveis visa sobretudo minimizar o impacto de problemasque ocorrem com uma frequência maior, mas cujo impacto global é normalmente menor. Adefinição exata do que são faltas ou falhas previsíveis também não é fácil, mas podem-seconsiderar as seguintes como exemplos comuns:

Quebra no fornecimento de energia elétrica ou falha na fonte de alimentação de umequipamento computacional;

Bloqueio na execução de aplicações ou sistemas operativos;

Falhas temporárias de conectividade em troços de rede.

Nesta lista está um conjunto de eventos que são expectáveis no funcionamento diário de umsistema computacional, e para os quais existem inúmeras soluções mais ou menos complexasque permitem tolerá-los até um certo grau.

As falhas no fornecimento de energia elétrica podem ser toleradas com sistemas alterna-tivos funcionando com baterias ou com geradores a combustível e as falhas nas fontes dealimentação podem ser resolvidas com fontes redundantes.

O bloqueio de aplicações ou sistemas operativos não é normalmente passível de ser toleradocom redundância sem recorrer a conjuntos de máquinas (clusters), obrigando habitualmente

2 c© FCA – EDITORA DE INFORMÁTICA

IPRP main.tex 15/6/2018 15: 32 Page 3

Introdução 1

a reiniciar a aplicação ou o sistema bloqueado. Casos típicos de bloqueios de sistemas opera-tivos são os “ecrãs azuis” dos sistemas MS Windows e as mensagens de pânico dos sistemasUNIX/Linux. Os bloqueios resultam usualmente da deteção implícita ou explícita de situ-ações de incoerência dos dados face ao que a aplicação/sistema operativo espera. Se essaincoerência for detetada explicitamente, então poderá ser fornecida alguma informação aoutente, caso contrário as aplicações ou os sistemas operativos podem começar a operar demodo erróneo e imprevisível. Em ambos os casos, a solução normal e bem conhecida para oproblema é reiniciar a aplicação ou o sistema operativo bloqueado. O problema decorrentedesses reinícios inesperados e forçados é que a informação persistente do sistema computa-cional, caso exista, pode ficar num estado incoerente, o que é indesejável. Para evitar essaincoerência em informação considerada crítica, podem ser usados sistemas transacionais.

Os sistemas transacionais [102] garantem que a transformação da informação guardada sefaz de forma coerente através do agrupamento de conjuntos de microalterações em macroal-terações atómicas. Um exemplo simples de uma alteração de dados transacional é a de duascontas bancárias entre as quais se faz uma transferência de dinheiro. No final da transfe-rência, as duas contas estão alteradas, mas a transferência implica a alteração de cada umadelas independentemente. No entanto, nenhuma dessas alterações independentes tem efeitose ambas não se realizarem, caso contrário o fluxo de dinheiro redundaria num aparecimentoou desaparecimento de dinheiro. Assim, a transferência de dinheiro obriga a uma alteraçãotransacional de duas contas bancárias. Os sistemas de gestão de bases de dados suportamnormalmente a definição e a realização de alterações transacionais de conjuntos de regis-tos, e já existem também sistemas de ficheiros com suporte para alterações coerentes dosdados de ficheiros independentes [245] (por exemplo, os sistemas de ficheiros NTFS (New

Technology File System) do MS Windows [54] e os sistemas de ficheiros ext3 e ReiserFS doLinux [258, 163]).

Por último, a falha temporária de conectividade em troços de rede pode ser tolerada usandotroços e caminhos alternativos para a informação. A Internet funciona de um modo talque a informação pode fluir de uma origem para um destino através de vários caminhosalternativos que são escolhidos dinamicamente em função de diversos fatores, em particularfalhas de conectividade. Assim, em caso de falha de um dos caminhos, pode-se sempreusar outros, garantindo que, mais tarde ou mais cedo, a informação consegue chegar até aodestinatário pretendido. Mesmo na ligação de um computador doméstico ou de uma redeorganizacional à Internet, podem ser usados vários fornecedores de acesso, simultaneamenteou não, de modo a garantir que a conectividade é garantida mesmo que um deles falhe.Há, no entanto, condicionantes de ordem física que podem impedir esta última forma deredundância. Deste modo, se o acesso a todos os fornecedores se fizer através de uma únicalinha telefónica, no caso de algo suceder à linha, pode-se perder a conectividade a todosos operadores alternativos. Mas se forem usadas várias linhas de acesso, por exemplo, linhatelefónica e linha de televisão por cabo, então a possibilidade de redundância é maior.

Para além da forma alternativa de encaminhamento de dados fornecida pela Internet, exis-tem também protocolos de comunicação para a mesma que garantem coerência à informaçãotrocada. O protocolo-base da Internet – o protocolo de rede IP (Internet Protocol) [206] – é

c© FCA – EDITORA DE INFORMÁTICA 3

IPRP main.tex 15/6/2018 15: 32 Page 4

Segurança em Redes Informáticas

um protocolo de encaminhamento de datagramas que usa uma política denominada “de me-lhor esforço” (best effort): não garante a entrega de datagramas, pode entregar datagramasduplicados e pode mesmo truncar datagramas entregues. Assim, a maior parte das aplica-ções que precisam de trocar dados de forma fidedigna têm de usar formas mais robustas decomunicação que garantam a entrega correta dos dados transmitidos. Esse é o papel do pro-tocolo de transporte TCP (Transport Control Protocol) [207], que fornece circuitos virtuaisentre emissores e recetores e que tolera perdas, duplicações e truncaturas de datagramas IPatravés do descarte de datagramas inúteis e da retransmissão dos perdidos.

1.1.3 Defesa contra atividades não autorizadas

Nos casos anteriores, vimos um conjunto de técnicas defensivas contra problemas causadospor acontecimentos fortuitos que são, geralmente, fruto do acaso. Esses acontecimentos for-tuitos são previsíveis, muito embora não seja previsível o instante em que ocorrem nem,muitas vezes, a gravidade com que ocorrem. No caso da defesa contra atividades não au-torizadas, estamos a falar de um problema completamente diferente, ou seja, da defesa desistemas computacionais face a iniciativas tomadas por indivíduos contra o funcionamentonormal dos primeiros. Neste caso, o desastre não é simplesmente fruto de circunstânciasque podem ocorrer com uma dada probabilidade, mas sim fruto de atividades deliberadasque visam a corrupção ou subversão de sistemas computacionais. É sobre esta vertente dasegurança, mais complexa e exigente, que este livro versará.

As atividades não autorizadas podem ter origem em dois universos populacionais disjuntos:nos sujeitos que pertencem à organização detentora do sistema computacional que se querproteger e nos sujeitos que a ela não pertencem. Os primeiros são sempre os mais difíceisde contrariar, uma vez que possuem habitualmente privilégios acrescidos, em relação aossegundos, que podem usar para iniciar atividades não autorizadas. Mas esse cenário, muitoembora realista e bastante importante, não é atualmente a principal fonte de preocupação nocombate a atividades não autorizadas. Com efeito, a rapidez com que se aderiu aos sistemasinformáticos e à rede mundial Internet, tanto a nível empresarial como a nível doméstico,levou a que um grande número de computadores e redes pouco protegidas tenham ficadoacessíveis e à mercê de atacantes espalhados por todo o mundo e muitas vezes gozando deum elevado grau de anonimato. O que tentaremos neste livro é mostrar de que modo ossistemas computacionais podem ser comprometidos por atacantes exteriores e como se podeefetuar a sua proteção e a proteção da informação que circula nas redes que os une.

As atividades ilícitas podem-se encaixar em cinco tipos-base:

Acesso a informação – Neste caso incluem-se todos os tipos de acesso a informaçõesreservadas ou confidenciais, logo, não explicitamente tornadas públicas, guardadas emsistemas computacionais ou em trânsito em redes. Note-se que, neste caso, se consideraque a informação que circula por redes públicas de dados não se torna por esse factopública, do mesmo modo que o facto de usarmos redes públicas de telefones não tornaas nossas conversas telefónicas públicas.

4 c© FCA – EDITORA DE INFORMÁTICA

IPRP main.tex 15/6/2018 15: 32 Page 17

Introdução 1

Assim, regra geral, não se deve facilitar na aplicação da segurança mesmo que se use umapolítica de segurança pela ocultação. Por exemplo, o protocolo de interação entre termi-nais Multibanco e a SIBS (Sociedade Interbancária de Serviços) não precisa de ser tornadopúblico, em primeiro lugar, porque tal não é necessário e, em segundo, para evitar que pos-sam ser estudados de forma alargada ataques ao mesmo; contudo, deverá ser desenhado deforma a poder suportar ataques caso seja divulgado publicamente. Ou seja, a segurança doprotocolo não deverá depender em nada do seu secretismo mas fundamentalmente da apli-cação cuidada de políticas e mecanismos de segurança robustos – o facto de o protocolo serreservado a quem dele precisa apenas reforça a sua segurança.

1.4 Segurança em sistemas distribuídos

A segurança num sistema distribuído não deve ser vista como a segurança de cada uma dassuas componentes isoladas, mas como algo que tem uma abrangência maior em termos depolíticas e mecanismos. Por exemplo, é vulgar um sistema distribuído ter apenas uma políticahomogénea de autenticação de utentes do sistema. Deste modo, a segurança de um sistemadistribuído tem de levar em conta tanto o todo como as partes, ou seja, deverão existirpolíticas e mecanismos globais, de que a defesa em perímetro é um exemplo, e políticas emecanismos locais, em cada computador, rede e equipamento de rede, que levem a cabo adefesa em profundidade.

No entanto, como a defesa dos sistemas computacionais é uma tarefa complexa e custosa,devem ser atribuídas prioridades máximas a técnicas de defesa de perímetro que criemuma primeira barreira aos potenciais atacantes, sejam os mesmos hackers determinados ouciberpragas lançadas por script kids (“brincalhões”).

Assim, numa primeira fase de conceção da segurança de um sistema distribuído, é precisosubdividir o mesmo em subgrupos de redes e máquinas e enquadrar esses subgrupos emdomínios de segurança, definindo bem que sujeitos e em que circunstâncias os mesmos podemter acesso a cada perímetro de segurança, tanto para efeitos de administração como parafins de exploração. Para cada domínio de segurança deve ainda ser definido claramente oconjunto de atividades autorizadas e proibidas, quer explícita quer implicitamente. Entrecada domínio de segurança, deverá haver um número mínimo de pontos de contacto a seremestabelecidos por pontes de segurança (security gateways).

A Internet, entendida como a restante rede global sobre IP a que se liga uma rede localorganizacional ou um simples computador pessoal, deverá ser considerada um domínio desegurança não controlado e, à partida, hostil.

Uma ponte de segurança é uma infraestrutura intrinsecamente segura por definição e quecontrola, monitoriza e limita as interações entre domínios de segurança, de forma a evitarinterações ilegais ou inesperadas entre sujeitos, aplicações ou máquinas operando em domí-nios de segurança distintos. A nível das redes, as pontes de segurança são instanciadas porfirewalls, como veremos no Capítulo 6. Mas pode haver outros tipos de pontes de segurança,

c© FCA – EDITORA DE INFORMÁTICA 17

IPRP main.tex 15/6/2018 15: 32 Page 18

Segurança em Redes Informáticas

como pontos de contacto controlados entre compartimentos fisicamente separados (por e-xemplo, entradas com duas portas nunca abertas em simultâneo, que são vulgares à entradade instalações bancárias).

1.4.1 Riscos

Os riscos inerentes aos sistemas distribuídos são, fundamentalmente, os riscos relativos aoscomputadores e às redes que constituem o sistema. Assim, em relação aos computadores,temos os seguintes riscos:

Intrusão – Uma intrusão numa máquina consiste numa alteração comportamental damesma, ou de aplicações que nela executam, acionadas por um ataque deliberado.

Uma intrusão constitui um risco difícil de avaliar, porque não envolve necessariamentequalquer dano objetivo, mas concede ao intruso capacidades, que normalmente lhe sãonegadas, de infligir danos significativos, usando para esse efeito a máquina usurpada;

Acesso a informação reservada ou confidencial – Os computadores são, para além demáquinas de processamento, máquinas de armazenamento de dados cujo acesso deveráser controlado em função da natureza dos mesmos.

Quaisquer acessos não autorizados, quer seja subvertendo os mecanismos e o controlode acesso quer seja por omissão dos mesmos, constituem riscos para os detentores dainformação;

Perda ou roubo de informação ou equipamentos – A perda ou o roubo de informaçãoguardada num computador engloba todas as situações em que informação, de algumaforma relevante, se perde ou é subtraída por sujeitos não autorizados, passando ou nãopara a sua posse exclusiva.

A perda ou roubo de equipamentos foi um problema secundário durante muitos anos,devido ao tamanho dos computadores e ao seu confinamento físico bem controlado, masé um problema real hoje em dia com a diminuição drástica do tamanho do hardware,o aumento da capacidade de armazenamento de dados e a proliferação de toda umapanóplia de máquinas portáteis (computadores, telemóveis, etc.);

Personificação – Uma máquina destina-se a ser usada por um determinado conjuntode utentes, que de algum modo devem ser distinguidos e autenticados pelo sistemaoperativo da máquina. A personificação acontece quando um sujeito subverte os siste-mas de autenticação, fazendo-se passar com sucesso por outrem, ou quando um sujeitoconsegue alterar o comportamento de alguma aplicação que realiza operações nessamáquina em nome de outrem.

A personificação acarreta dois riscos diferentes mas relacionados. Por um lado, háo risco de o sistema estar a ser usado por um impostor que pode operar com osprivilégios concedidos ao sujeito legítimo pelo qual se faz passar. Por outro, pode ser

18 c© FCA – EDITORA DE INFORMÁTICA

IPRP main.tex 15/6/2018 15: 32 Page 19

Introdução 1

difícil ao sujeito personificado alegar mais tarde a sua inocência em ações efetuadaspelo impostor em seu nome;

Incapacidade de prestação de serviço – Uma máquina pode ser conduzida a umasituação de incapacidade de prestação de serviço através de um ou mais ataques àprestação de serviços (DoS).

O risco daqui decorrente é uma falha na prestação dos serviços que a máquina deveriaprestar. Naturalmente, esse risco será tanto maior quanto mais importante for a rele-vância da máquina para os seus utentes ou para as demais componentes do sistemadistribuído a que pertence.

Em relação às redes, temos os seguintes riscos:

Acesso a informação reservada ou confidencial – Nas redes de comunicação flui muitainformação, alguma inerente aos protocolos usados e muita relativa aos dados efetiva-mente trocados entre interlocutores. Como as redes, e em particular a Internet, sãogeridas por múltiplas entidades, e estas não são, à partida, confiáveis, as interações re-motas podem ser escutadas por inspetores (eavesdroppers) bem colocados, que podem,dessa maneira, obter informação valiosa.

Este risco é ainda agravado pelo facto de não ser possível, ou ser, pelo menos, muitodifícil na maior parte das situações, detetar a presença de tais inspetores;

Personificação – Num sistema distribuído os diversos equipamentos ligados a redesde comunicação identificam-se da maneira mais apropriada para serem endereçáveis elocalizáveis. A personificação passa, então, por subverter os mecanismos de identifica-ção, ou os mecanismos de autenticação subjacentes aos de identificação, para simularo envio de mensagens por um dado equipamento.

A personificação é normalmente utilizada com dois propósitos diferentes: despiste ouapropriação. Usa-se para despiste quando se pretende que a verdadeira identidade damáquina utilizada num ataque seja escondida, o que é útil em ataques DoS. Usa-se paraapropriação quando a utilização de identidades alheias de alguma forma serve para ul-trapassar barreiras de segurança, como, por exemplo, barreiras simples de autenticaçãoe autorização baseadas em identidades.

O risco imediato da personificação é o de permitir que os equipamentos ligados àrede interatuem com impostores, pensando estar a interatuar com os interlocutoreslegítimos, podendo, então, ser demasiado permissivos perante certas identidades oupouco céticos perante as demais;

Interceção de fluxos de dados – A interceção consiste em iludir dois extremos de umacomunicação para que ambos pensem que estão a interatuar de forma segura entresi, quando, na realidade, estão a interatuar de forma (tecnicamente) segura com umimpostor que se consegue colocar no meio do fluxo de dados. Assim, a interceção podefacultar ao atacante a possibilidade de personificar cada um dos extremos finais perante

c© FCA – EDITORA DE INFORMÁTICA 19

IPRP main.tex 15/6/2018 15: 32 Page 20

Segurança em Redes Informáticas

o outro extremo, algo que é designado como ataque de interposição (man-in-the-middle

attack).

Um dos riscos para os interlocutores atacados é a passagem de informação sensívelpara o intercetor, uma vez que pensam estar a trocar informação de forma segura como destinatário final, sem que ambos os interlocutores finais se apercebam da existênciado ataque. Outro risco é o facto de o atacante poder, de algum modo, controlar ainteração intercetada de forma a alterar a operação de qualquer dos interlocutoresfinais, e tal não ser facilmente justificável ou imputável após a deteção de situaçõesanómalas;

Modificação de fluxos de dados – A modificação consiste em subverter um fluxo dedados entre máquinas ou redes. A subversão pode consistir na alteração de blocos dedados dos fluxos, na troca da ordem relativa de blocos, na eliminação de blocos ou aindana injeção de blocos no fluxo, quer totalmente fabricados quer obtidos anteriormentee adicionados fora do seu local natural.

Os riscos para os interlocutores são a possibilidade de receberem fluxos de dados in-corretos, o que os poderá levar a operarem de uma forma que favoreça o atacante outotalmente descontrolada, eventualmente falhando e criando uma situação de negaçãode prestação de serviço;

Reprodução de fluxos de dados – A reprodução consiste na repetição de parte ou datotalidade de diálogos passados de modo a obter reações dos recetores dos mesmos,que tragam algum benefício para o atacante.

Os riscos de tais ataques são, fundamentalmente, a libertação de alguma informaçãoútil para o atacante, a repetição não autorizada de ações que tragam algum benefíciopara o atacante ou a criação de situações de negação de prestação de serviço devido àfalha total ou parcial do recetor enganado.

1.5 Estrutura do livro

Neste livro procura-se dar uma visão da segurança, caminhando do problema para a solução.Como anteriormente se afirmou, muitas pessoas não sabem sequer que os seus sistemas sãovulneráveis, que podem ser atacados de várias maneiras e que isso cria uma multiplicidade deriscos à sua informação e ao seu trabalho. Assim, este livro não é um catálogo de produtose tecnologias de segurança, mas uma análise das origens dos problemas de segurança edas soluções que podem ser adotadas para os evitar, sejam arquiteturais, tecnológicas oucomportamentais. Mais ainda, tenta-se dar uma ênfase em que a tecnologia, só por si, resolveapenas parte do problema, havendo ainda que ser bem enquadrada, implantada e exploradapelos utentes. Procura-se também dar uma visão abrangente dos problemas e das soluçõespara realçar que não é pelo facto de a segurança total ser impossível que devemos lidar coma segurança com soluções parciais ou claramente incompletas.

20 c© FCA – EDITORA DE INFORMÁTICA

IPRP main.tex 15/6/2018 15: 32 Page 21

Introdução 1

Não é propósito do Autor fornecer uma visão completa de todos os problemas de segurançaque se podem colocar a uma rede local quando a mesma é ligada à Internet – tal seriauma tarefa incomensurável e infinita. Pelo contrário, procura-se dar uma visão abrangentedos tipos de problemas mais comuns ou graves, das razões para o seu aparecimento e dassoluções que existem para os minimizar ou evitar. Assim, não são focados problemas especí-ficos de protocolos aplicacionais ou mesmo de aplicações concretas, mas antes problemas esoluções generalistas para um sistema distribuído. Os temas focados enquadram-se no que énormalmente designado por segurança em redes (network security). Mas, mesmo nesta área,restringe-se a análise a problemas e soluções para redes locais ligadas à Internet, excluindo,por exemplo, aspetos de gestão de segurança de protocolos tão relevantes para a gestão deredes como SNMP [37], RIP [110], OSPF[181], etc., que normalmente não são usados emtais ambientes.

A estrutura do livro é concebida para facilitar a apreensão dos conceitos expostos. No Capí-tulo 2 são explicados conceitos de criptografia e indicadas as principais técnicas criptográficasusadas atualmente. A criptografia, por si só, não resolve todos os problemas de segurança,mas é indispensável numa grande maioria de cenários operacionais. Logo, a sua compreensãoé importante para entender muitas das soluções (ou problemas) de segurança explicadas aolongo do livro.

No seguimento do Capítulo 2, os conceitos subjacentes à gestão de chaves de cifra assimé-tricas e certificação de chaves públicas são abordados no Capítulo 3. Atualmente, as chavesassimétricas são muito usadas para efeito de autenticação de entidades em interações remo-tas via Internet, mas a sua gestão correta não é normalmente fácil de entender, pelo que sejustifica uma explicação mais pormenorizada do que está em causa nessa gestão e na formacomo a mesma é atualmente efetuada. Neste capítulo descreve-se, entre outras matérias, autilização de chaves assimétricas através do Cartão de Cidadão para a autenticação do seutitular e para a produção de assinaturas digitais pelo seu titular.

No Capítulo 4 são descritas algumas vulnerabilidades de sistemas operativos ou de serviçosinstalados em máquinas ligadas a uma rede local ou de maior escala. Os aspetos abordadossão, fundamentalmente, fragilidades relativas a problemas de desenho, de realização ou deadministração de sistemas operativos e de serviços.

No Capítulo 5 são descritas vulnerabilidades de redes de máquinas, tanto locais como degrande escala. Os aspetos abordados são sobretudo a nível das fragilidades dos protocolosde comunicação e das infraestruturas globais de suporte, como é o caso do serviço de nomesDNS [177].

No Capítulo 6 são explicados os objetivos das firewalls e a forma como estas podem ser usadaspara melhorar significativamente a segurança das redes locais ou máquinas pessoais ligadasà Internet. As firewalls são, atualmente, elementos indispensáveis na ligação de máquinaspessoais e redes privadas a redes alheias potencialmente perigosas, nomeadamente à Internet.Contudo, conceber, implantar e manter uma firewall é uma tarefa complexa, que exige bonsconhecimentos a nível dos protocolos de comunicação e das vulnerabilidades existentes nosdiversos sistemas relativamente à implantação desses mesmos protocolos.

c© FCA – EDITORA DE INFORMÁTICA 21

IPRP main.tex 15/6/2018 15: 32 Page 22

Segurança em Redes Informáticas

No Capítulo 7 são explicados os objetivos dos sistemas de deteção de intrusões e a formacomo estes podem ajudar a aferir e melhorar a segurança em redes de computadores. Adefesa contra intrusões é um processo dinâmico em que os sistemas de deteção de intrusõesdesempenham um papel muito importante. Quando um sistema é concebido e implantado,são instanciadas diversas políticas de segurança e instalados/configurados diversos mecanis-mos de segurança, mas existem sempre falhas. Essas falhas podem ser detetadas durante asfases de teste ou produção do sistema por sistemas de deteção de vulnerabilidades, podendoentão ser eliminadas para acautelar ataques. Os sistemas de deteção de intrusões fazem umaanálise do comportamento dos sistemas na fase de produção e podem detetar ataques nãoconhecidos ou deficientemente contrariados por políticas de segurança mal implantadas oumecanismos de segurança insuficientes ou mal configurados.

No Capítulo 8 é explicado o conceito de VPN (Virtual Private Network – rede privada vir-tual) que, atualmente, é muito usado para rotular diversas soluções de comunicação segura.São também apresentados e descritos diversos modelos de VPN e como estes podem serpostos em prática, em termos tanto topológicos como protocolares.

No Capítulo 9 é abordado o tema da segurança em redes sem fios 802.11. Estas redes sãocada vez mais populares e úteis, mas a sua segurança é crítica devido ao uso de comunicaçãorádio em difusão. No entanto, a solução inicialmente concebida para a segurança em redesestruturadas 802.11 é completamente ineficaz, o que motivou o aparecimento de paliativos esoluções inovadoras mais complexas, de que são exemplos o WPA (Wi-Fi Protected Access) eo 802.1X. Tal variedade criou um puzzle de tecnologias difícil de entender, que será explicadopasso a passo de forma a clarificar a tarefa de qualquer utente ou administrador de redessem fios.

No Capítulo 10 é feita uma análise dos princípios inerentes aos protocolos de autenticaçãoentre entidades e à forma como estes são concretizados. A autenticação é uma componenteessencial em qualquer sistema que pretenda fazer um controlo de acesso baseado na identi-dade do requerente. No entanto, esta é uma área com uma grande diversidade de técnicas esoluções, as quais importa sistematizar o mais possível, de forma a extrair os seus princípios--base e as suas vantagens, desvantagens e vulnerabilidades. Esse esforço de sistematização écomplementado com a descrição de inúmeros exemplos relevantes de protocolos de autenti-cação, para além de serem referidos, quando a propósito, vários outros descritos em capítulosanteriores.

Finalmente, num Anexo, disponibilizado em www.fca.pt para download, são apresentadasperguntas de exames envolvendo as matérias do livro. Essas perguntas foram usadas em exa-mes de disciplinas de Segurança Informática lecionadas pelo Autor no IST e na Universidadede Aveiro.

22 c© FCA – EDITORA DE INFORMÁTICA