• Nenhum resultado encontrado

Estudo de Caso: Ataques a um Canal Seguro

N/A
N/A
Protected

Academic year: 2021

Share "Estudo de Caso: Ataques a um Canal Seguro"

Copied!
12
0
0

Texto

(1)

SEG

©2002-14 P. Veríssimo, A. Bessani – All rights reserved. Reproduction only by permission. 1

Estudo de Caso:

Ataques a um

Canal Seguro

Ataques a um Canal Seguro

• Canais seguros são mecanismos fundamentais para a construção

de sistemas distribuídos seguros:

– Sem autenticação não temos hipótese de resistir a ataques…

• Entretanto, estes mecanismos podem ser atacados:

– ATAQUES A ALGORITMOS

usar algoritmos público, robustos e bem testados e verificados

– ATAQUES A MENSAGENS

ex., replay, mostram que um canal não vive só de boas cifras

– ATAQUES A CHAVES

implicam cuidado extremo com a qualidade das chaves (longas e aleatórias)

– ATAQUES À EXECUÇÃO DO PROTOCOLO

(2)

SEG

©2002-14 P. Veríssimo, A. Bessani – All rights reserved. Reproduction only by permission. 3

Ataques a Algoritmos

Três tipos, usam técnicas tanto estatísticas quanto matemáticas:

• Baseados em texto cifrado

(Ciphertext-only)

– Atacante obtém a máxima quantidade de material cifrado possível – Exemplo: texto cifrado pode seguir repetições no texto em claro

• Texto conhecido

(Known-plaintext)

– Se o atacante conhecer pares de texto em claro e seu correspondente cifrado,

pode ser mais fácil obter a chave usada

• Texto escolhido

(Chosen-plaintext)

– A obtenção da chave fica ainda mais fácil se o atacante puder escolher o texto

que será cifrado

OBSERVAÇÕES:

– Algoritmos robustos: RSA, IDEA e AES (algumas vezes através de extensões) – Esqueçam DES, excepto o TripleDES para algumas aplicações legadas

– Material criptográfico deve ser salvaguardado: use chaves temporárias (K)

cifradas com chaves de longa duração (L): <E(L,K),E(K,M)>

Ataques a Mensagens

• Repetição e reordenamento na cifra em blocos

– numa mensagem suficientemente longa, blocos diferentes podem

ser trocados, reordenados, apagados, etc., sem detecção

• Pré computação de mensagens

– Quando o conjunto de possíveis mensagens M é pequeno, pode-se

pré computar o conjunto de todos os possíveis textos cifrados

E(k,m) com uma chave pública k e montar uma tabela (E(k,m),m)

– Quando uma mensagem E(k,m) for ouvida no canal, procure na

tabela o texto em claro correspondente a m

• Modos de cifra podem prevenir esses ataques?

– Deve-se cifrar cada bloco de dados com alguma informação

(3)

SEG

©2002-14 P. Veríssimo, A. Bessani – All rights reserved. Reproduction only by permission. 5

Ataques a Chaves

• Chaves fracas

– Por exemplo, geradas a partir de passwords ingénuas

– Grupos de chaves fracas (acontece com alguns algoritmos, e.g., RSA)

• Exemplo:

– Um intruso captura mensagens cifradas e tenta adivinhar a chave

usada com ajuda de um dicionário de passwords comuns

(ataque de

dicionário)

– Ou então, testa se a mensagem foi cifrada com uma chave fraca

(aproveitando-se de propriedades do algoritmo criptográfico)

• Solução:

– Construir chaves cuidadosamente

» Usar

nonces (number used once)

,

salt

(

bits aleatórios usados para

criação de chaves

) e

geradores de números aleatórios seguros

Ataques à Execução do Protocolo

• O atacante estuda o protocolo e faz ataques activos levando este

a tomar decisões erradas como:

– Revelar uma chave secreta partilhada

– Deixar o atacante aceder um servidor sem completar sua autenticação

• Reprodução

– Intruso repete sequências de interacções (replay)

– Exemplo: intruso repete sequência de mensagens de iniciação, que pode

levar o interlocutor a falar com ele, partilhar chaves com ele, etc.

• Confusão

– Intruso envia uma mensagem inesperada em um momento escolhido com o

intuito de confundir o protocolo

• Observações:

– A resistência do protocolo depende da resistência dos algoritmos usados – Use boas práticas de engenharia para tornar o protocolo robusto

– Valide o protocolo através de alguma técnica de especificação formal – Use nonces e informações temporais (ex., timestamps) de forma a tornar

(4)

SEG

©2002-14 P. Veríssimo, A. Bessani – All rights reserved. Reproduction only by permission. 7

Estratégias de Segurança

Estratégias de Segurança

• Chaves e Passwords

• Vulnerabilidades e Ataques

• Políticas de Segurança

• Prevenir Ataques e Intrusões

• Detectar e Reagir a Intrusões

(5)

SEG

©2002-14 P. Veríssimo, A. Bessani – All rights reserved. Reproduction only by permission. 9

Chaves e Passwords

• Ataques de força bruta:

– Número de processadores necessários para quebrar uma chave de 56 bits

(tipo DES) em um mês (com 256M encryptions/second): 100

– Para chaves com 128 bits: 5x1023 processadores !

• Ataques de dicionário:

– Chaves fracas (ex., geradas a partir de passwords que usam apenas

caracteres “giros”) encolhem o espaço de busca.

– Ex., o DES vai de 1016possibilidades para 1012 se usarmos apenas letras minúsculas e dígitos

• Frase password (passphrase):

– "My dear friends, who on earth would believe this is my pass phrase?"

– Após executar a síntese criptográfica desta chave, temos um número

hexadecimal de 64 bits:

– E6C1 0A9B 894E 03AF

– Uma password muito boa! E também muito difícil de memorizar  – Regra geral de robustez: uma letra na frase para cada bit da chave

Vulnerabilidades e Ataques

Relembremos:

• A medida correcta de quão potencialmente inseguro

um sistema pode ser (ou quão difícil é fazê-lo seguro)

depende:

– Do número e da severidade das faltas no sistema (

vulnerabilidades

)

– Das potenciais ameaças que este sistema está sujeito (

ataques

)

• Vulnerabilidades

e

ataques

contribuem para definir o

risco

de uma intrusão

• Encontrar o compromisso certo entre os dois é

obrigatório para um bom projecto do sistema

– Custo vs. Segurança

– Força da criptografia vs. Desempenho

(6)

SEG

©2002-14 P. Veríssimo, A. Bessani – All rights reserved. Reproduction only by permission. 11

Políticas de Segurança

Políticas de Segurança

Políticas tentam definir o mais precisamente possível:

Que estados do sistema são seguros ou autorizados

» O sistema pode transitar entre estes estados

Que estados do sistema são não autorizados ou inseguros

» O sistema não pode entrar nestes estados

» Se isso ocorre, temos uma falha de segurança

Políticas vs. Mecanismos:

Políticas descrevem o que é permitido/proibído no sistema

Mecanismos controlam como as políticas são impostas

Condições necessárias para um sistema seguro:

Os programas precisam garantir que:

1. O sistema começa num estado autorizado

(7)

SEG

©2002-14 P. Veríssimo, A. Bessani – All rights reserved. Reproduction only by permission. 13

Exemplo de Política de Segurança

(objectivo é confidencialidade)

• X é um conjunto de entidades, I é uma informação

• POLÍTICA:

I é confidencial para o conjunto X e apenas X

• CONDIÇÕES e CONSEQUÊNCIAS:

– nenhum x

∈ X pode obter informação a respeito de I

– I pode ser revelado a outros

• Exemplo:

– X é o conjunto de estudantes

– I é a folha resposta do exame final

– I é confidencial para os elementos de X (a política é satisfeita) se os

estudantes não podem obter a folha resposta

Exemplo de uma Política Ambígua

Considere uma escola, onde os trabalhos de casa são feitos

apenas no computador

POLÍTICA:

Estudantes não podem ler ou escrever ficheiros uns dos outros

CENÁRIO:

– Alice esquece-se de proteger o seu ficheiro com o trabalho contra leitura

– Bob copia este ficheiro

Quem violou a política? Alice, Bob, ou ambos?

Bob trapaceou –

violou a política

– A Política proíbe explicitamente a cópia de ficheiros uns dos outros

– Sistema entrou num estado não autorizado - Bob copiou ficheiros de Alice

Alice não protegeu os seus ficheiros –

não violou a política

– Proteger ficheiros não é requerido pela política de segurança!

(8)

SEG

©2002-14 P. Veríssimo, A. Bessani – All rights reserved. Reproduction only by permission. 15

Exemplo Real:

Políticas de Segurança em redes (4PP)

• Paranóica

– tudo é proibido

– desligar a máquina da rede (não permitir conexões)

• Prudente

– o que não é permitido é proibido

– cortar tudo por omissão, permitindo acesso caso a caso

• Permissiva

– o que não é proibido é permitido

– permitir tudo por omissão, negando caso a caso

• Promíscua

– tudo é permitido

– toda a gente acede

Mundo

Real

Uso de Protocolos Criptográficos

• Tipos de protocolos

• Modos de cifra de blocos

• Cifração dupla e tripla

• Assinar e cifrar

(9)

SEG

©2002-14 P. Veríssimo, A. Bessani – All rights reserved. Reproduction only by permission. 17

Tipos de Protocolos: self-enforcing

• Comportamento correcto é obtido somente pelo

protocolo executado entre os participantes

• Estes têm de construir confiança entre eles, a

despeito de inicialmente não se confiarem

mutuamente e de alguns poderem ser maliciosos

Alice

Bob

Self-Enforcing Protocol A lic e B o b S e lf-E n fo rcin g P ro to co l L u is a P a u l

Tipos de Protocolos: Trusted-Third-Party

Adjudicados

– comportamento correcto garantido a

posteriori se necessário, recorrendo a registos recolhidos pelo adjudicador durante a execução, para corrigir erros

Arbitrados

– comportamento correcto garantido por

um árbitro que segue a execução do protocolo, prevenindo a ocorrência de erros

Certificados

– comportamento correcto garantido a

(10)

SEG

©2002-14 P. Veríssimo, A. Bessani – All rights reserved. Reproduction only by permission. 19

Modos de Cifra de Blocos

• ECB - Electronic CodeBook

– cifra por blocos independentes

– Vulnerável a ataques de reordenação ou repetição (replay)

Modos de Cifra de Bloco

• CBC - Cypher Block Chaining

– O texto em claro é “XORado” com o texto cifrado do bloco anterior antes de ser cifrado – Protege de ataques de reordenação, inserção, etc.

– Mas duas mensagens iguais ainda dariam texto cifrado igual!

– Solução: Initialization Vector (IV) - uso de dados aleatórios no 1º bloco

(11)

SEG

©2002-14 P. Veríssimo, A. Bessani – All rights reserved. Reproduction only by permission. 21

Cifração dupla e tripla

ou Encrypt-Decrypt-Encrypt (EDE)

(usado no DES, mas funciona em qualquer protocolo de cifra de blocos (ex., AES, IDEA))

• Dual DES usa duas chaves K

1

e K

2:

– Temos agora “chaves” de 2n bits, sendo n o número de bits de uma chave – Para cifrar: C = E(K2,E(K1,P))

– Para decifrar: P = E(K2,E(K1,C))

– Frágil: Pode ser quebrado usando 2n+1cifrações (ao contrário dos 22nesperados)

• O Triple DES (ou DES-EDE ou TDEA, norma ISO/IEC 18033-3) é muito usado

no sector financeiro (definido pela norma ISO 8732) e baseia-se também em

duas chaves K

1

e K

2

:

– Para cifrar: C = E(K1,D(K2,E(K1,P))) – Para decifrar: P = D(K1,E(K2,D(K1,C)))

– Também é mais frágil do que aparenta com relação a ataques de texto conhecido e texto

escolhido, sendo que o comprim. virtual (“segurança”) da chave para ataques de força bruta é menor do que 2n=112, sendo ~80bits

• Com três chaves fica mais robusto:

– Para cifrar: C = E(K3,E(K2,E(K1,P))) – Para decifrar: P = D(K1,D(K2,D(K3,C)))

– Requer O(22n) cifrações e O(2n) de memória, comprim. virtual 112bits, ataque é inexequível

Assinar e Cifrar

• protocolo derivado do protocolo de assinatura com síntese

• evitar, por ordem:

(12)

SEG

©2002-14 P. Veríssimo, A. Bessani – All rights reserved. Reproduction only by permission. 23

Estabelecimento de Canal Seguro baseado

em Criptografia Híbrida

Criação de Envelope Criptográfico Híbrido

• A chave usada para cifrar a mensagem vai dentro do envelope

cifrada com a chave pública do destinatário da mensagem

Referências

Documentos relacionados

O primeiro é um documento introdutório, os volumes 2, 3, 4, 5, 6, 7, 8, 9 abrangem as diferentes áreas do conhecimento (Língua Portuguesa, Matemática, Ciências Naturais,

Os frutos tratados com 1-MCP apresentaram, nos dois anos de observações, sensivelmente a mesma tendência em cada uma das grandezas analisadas, tanto à saída da câmara

Dessa forma, tendo em vista a importância da experimentação como forma de ensino e de fixação de conteúdos e o papel dos espaços não formais como divulgadores

No final, os EUA viram a maioria das questões que tinham de ser resolvidas no sentido da criação de um tribunal que lhe fosse aceitável serem estabelecidas em sentido oposto, pelo

Apart from the two nuclear energy companies that were strongly hit by the earthquake effects (the Tokyo and Tohoku electric power companies), the remaining nine recorded a

Além desta verificação, via SIAPE, o servidor assina Termo de Responsabilidade e Compromisso (anexo do formulário de requerimento) constando que não é custeado

O score de Framingham que estima o risco absoluto de um indivíduo desenvolver em dez anos DAC primária, clinicamente manifesta, utiliza variáveis clínicas e laboratoriais

Assim, recomenda-se: a a realização de medições de reflectância no campo que permitam um primeiro nível de relação entre cobertura do solo e valores espectrais em uma