47
Segurança – conceitos básicos Sistemas Distribuídos 2015

Segurança – conceitos básicosnoemi/sd-15/aula10-seguranca.pdf · Segurança – conceitos básicos Sistemas Distribuídos 2015 . Ameaças ... Criptografia de chave pública e

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Segurança – conceitos básicosnoemi/sd-15/aula10-seguranca.pdf · Segurança – conceitos básicos Sistemas Distribuídos 2015 . Ameaças ... Criptografia de chave pública e

Segurança – conceitos básicos Sistemas Distribuídos

2015

Page 2: Segurança – conceitos básicosnoemi/sd-15/aula10-seguranca.pdf · Segurança – conceitos básicos Sistemas Distribuídos 2015 . Ameaças ... Criptografia de chave pública e

Ameaças

•  interceptação •  interrupção •  modificação •  fabricação

Page 3: Segurança – conceitos básicosnoemi/sd-15/aula10-seguranca.pdf · Segurança – conceitos básicos Sistemas Distribuídos 2015 . Ameaças ... Criptografia de chave pública e

ataques a canais de comunicação

•  escuta –  obtenção de informação na rede

•  senhas, etc •  masquerading

–  uso de identidades incorretas •  message tampering

–  alteração de mensagens trocadas •  replay

–  reenvio de mensagens obtidas por escuta •  negação de serviço

–  inundação de rede ou servidor

Page 4: Segurança – conceitos básicosnoemi/sd-15/aula10-seguranca.pdf · Segurança – conceitos básicos Sistemas Distribuídos 2015 . Ameaças ... Criptografia de chave pública e

garantias

•  confidencialidade •  autenticação •  autorização •  accountability •  não repudiação

Page 5: Segurança – conceitos básicosnoemi/sd-15/aula10-seguranca.pdf · Segurança – conceitos básicos Sistemas Distribuídos 2015 . Ameaças ... Criptografia de chave pública e

mecanismos

•  protocolos •  criptografia

Page 6: Segurança – conceitos básicosnoemi/sd-15/aula10-seguranca.pdf · Segurança – conceitos básicos Sistemas Distribuídos 2015 . Ameaças ... Criptografia de chave pública e

e qualidade do software...

•  http://xkcd.com/1354/

Page 7: Segurança – conceitos básicosnoemi/sd-15/aula10-seguranca.pdf · Segurança – conceitos básicos Sistemas Distribuídos 2015 . Ameaças ... Criptografia de chave pública e

política de segurança

•  equilíbrio entre custos –  risco X sobrecarga

Page 8: Segurança – conceitos básicosnoemi/sd-15/aula10-seguranca.pdf · Segurança – conceitos básicos Sistemas Distribuídos 2015 . Ameaças ... Criptografia de chave pública e

Criptografia de chave secreta

•  mesma chave nas duas direções –  muitas vezes chamada de segredo compartilhado

•  também chamada de criptografia simétrica

criptografar texto criptografado (cipher text)

texto aberto (clear text) decriptar texto aberto

Page 9: Segurança – conceitos básicosnoemi/sd-15/aula10-seguranca.pdf · Segurança – conceitos básicos Sistemas Distribuídos 2015 . Ameaças ... Criptografia de chave pública e

confidencialidade

Page 10: Segurança – conceitos básicosnoemi/sd-15/aula10-seguranca.pdf · Segurança – conceitos básicos Sistemas Distribuídos 2015 . Ameaças ... Criptografia de chave pública e

integridade/autenticidade

•  assinaturas digitais –  uso de message digests

Page 11: Segurança – conceitos básicosnoemi/sd-15/aula10-seguranca.pdf · Segurança – conceitos básicos Sistemas Distribuídos 2015 . Ameaças ... Criptografia de chave pública e

algoritmos de chave secreta

•  técnicas de embaralhamento •  muitas vezes pensados para implementação

em hardware

Page 12: Segurança – conceitos básicosnoemi/sd-15/aula10-seguranca.pdf · Segurança – conceitos básicos Sistemas Distribuídos 2015 . Ameaças ... Criptografia de chave pública e

DES ("deprecated")

Page 13: Segurança – conceitos básicosnoemi/sd-15/aula10-seguranca.pdf · Segurança – conceitos básicos Sistemas Distribuídos 2015 . Ameaças ... Criptografia de chave pública e

protocolos de criptografia simétrica

•  RC2 •  RC4 •  DES •  IDEA •  ... e diferentes tamanhos de chave

Page 14: Segurança – conceitos básicosnoemi/sd-15/aula10-seguranca.pdf · Segurança – conceitos básicos Sistemas Distribuídos 2015 . Ameaças ... Criptografia de chave pública e

Distribuição de chaves secretas

•  como fazer para as duas partes compartilharem um segredo?

•  uso de intermediários confiáveis ou Key Distribution Centers –  ex Kerberos

Page 15: Segurança – conceitos básicosnoemi/sd-15/aula10-seguranca.pdf · Segurança – conceitos básicos Sistemas Distribuídos 2015 . Ameaças ... Criptografia de chave pública e

protocolos de acesso a KDCs

Page 16: Segurança – conceitos básicosnoemi/sd-15/aula10-seguranca.pdf · Segurança – conceitos básicos Sistemas Distribuídos 2015 . Ameaças ... Criptografia de chave pública e

Criptografia de chave pública e privada

•  chaves diferentes em cada direção –  também chamada de criptografia assimétrica

•  uma das chaves pode ser pública sem problemas

criptografar texto criptografado texto aberto decriptar texto aberto

Page 17: Segurança – conceitos básicosnoemi/sd-15/aula10-seguranca.pdf · Segurança – conceitos básicos Sistemas Distribuídos 2015 . Ameaças ... Criptografia de chave pública e

criptografia assimétrica

•  confidencialidade: –  A criptografa com chave pública de B

•  autenticação e integridade: –  A criptografa com chave privada de A

•  mas como B sabe que o que decriptou era de fato o que A queria enviar?

•  assinaturas digitais

criptografar texto criptografado texto aberto

decriptar texto aberto A B

Page 18: Segurança – conceitos básicosnoemi/sd-15/aula10-seguranca.pdf · Segurança – conceitos básicos Sistemas Distribuídos 2015 . Ameaças ... Criptografia de chave pública e

algoritmos de chave pública e privada

•  técnicas aritméticas –  manipulação de números primos muito grandes

•  surgimento do conceito com Diffie-Hellman, em 1976 –  D-H apenas para estabelecimento de segredo

compartilhado •  processamento mais custoso que o de

algoritmos de chave secreta –  uso combinado

Page 19: Segurança – conceitos básicosnoemi/sd-15/aula10-seguranca.pdf · Segurança – conceitos básicos Sistemas Distribuídos 2015 . Ameaças ... Criptografia de chave pública e

Distribuição de chave pública

•  intruso ainda pode fazer crer que sua chave pública é a de outra entidade

•  infraestutrura de distribuição –  certificados –  autoridades de certificação –  infraestruturas de chaves públicas

Page 20: Segurança – conceitos básicosnoemi/sd-15/aula10-seguranca.pdf · Segurança – conceitos básicos Sistemas Distribuídos 2015 . Ameaças ... Criptografia de chave pública e

ICPs – infraestruturas de chaves públicas

raiz

AC

AC

AC

AC AC

Page 21: Segurança – conceitos básicosnoemi/sd-15/aula10-seguranca.pdf · Segurança – conceitos básicos Sistemas Distribuídos 2015 . Ameaças ... Criptografia de chave pública e

exemplo: ssl

•  https://technet.microsoft.com/en-us/library/cc785811 •  http://httpd.apache.org/docs/2.4/ssl/ssl_intro.html

Page 22: Segurança – conceitos básicosnoemi/sd-15/aula10-seguranca.pdf · Segurança – conceitos básicos Sistemas Distribuídos 2015 . Ameaças ... Criptografia de chave pública e

algoritmos de hash

•  funções de hash: –  dado um bloco de dados de tamanho arbitrário,

retornam um string de bytes de tamanho fixo •  entrada: mensagem •  saída: hash ou digest

–  pequenas alterações nos dados de entrada devem alterar o valor do hash

–  não é possível descobrir a mensagem a partir do hash –  duas mensagens diferentes dificilmente levam ao

mesmo hash

Page 23: Segurança – conceitos básicosnoemi/sd-15/aula10-seguranca.pdf · Segurança – conceitos básicos Sistemas Distribuídos 2015 . Ameaças ... Criptografia de chave pública e

criptografia hash

–  em conjunto com segredo compartilhado KAB •  e possivelmente lista de IVs

Alice Bob

b1 = MD(KAB | IV)

b2 = MD(KAB | b1)

bi = MD(KAB | bi-1)

c1=p1 xor b1 c2=p2 xor b2

p1 =c1 xor b1 p2=c2 xor b2

msg = (IV, c1, c2, ...)

Page 24: Segurança – conceitos básicosnoemi/sd-15/aula10-seguranca.pdf · Segurança – conceitos básicos Sistemas Distribuídos 2015 . Ameaças ... Criptografia de chave pública e

ataques para descoberta de chaves

•  Diferentes níveis de dificuldade se atacante dispõe de: –  apenas texto criptografado –  pares (texto aberto, texto criptografado) –  pares escolhidos

•  ataques de “força bruta” –  tentativa de quebra com cada chave possível

–  tamanho de chaves e o “computacionalmente difícil”

Page 25: Segurança – conceitos básicosnoemi/sd-15/aula10-seguranca.pdf · Segurança – conceitos básicos Sistemas Distribuídos 2015 . Ameaças ... Criptografia de chave pública e

usos em comunicação

•  confidencialidade •  autenticidade •  não repudiação •  integridade

–  aplicação de criptografia sobre digest da msg

–  uso combinado de criptografia simétrica e assimétrica

Page 26: Segurança – conceitos básicosnoemi/sd-15/aula10-seguranca.pdf · Segurança – conceitos básicos Sistemas Distribuídos 2015 . Ameaças ... Criptografia de chave pública e

Autenticação

•  login e senha •  biometria •  algoritmos de autenticação

Page 27: Segurança – conceitos básicosnoemi/sd-15/aula10-seguranca.pdf · Segurança – conceitos básicos Sistemas Distribuídos 2015 . Ameaças ... Criptografia de chave pública e

algoritmos de autenticação

•  uso de desafios e criptografia –  simétrica e assimétrica

Page 28: Segurança – conceitos básicosnoemi/sd-15/aula10-seguranca.pdf · Segurança – conceitos básicos Sistemas Distribuídos 2015 . Ameaças ... Criptografia de chave pública e

autenticação com hash

–  em conjunto com segredo compartilhado KAB

Alice Bob

dA MD(KAB | dA)

Page 29: Segurança – conceitos básicosnoemi/sd-15/aula10-seguranca.pdf · Segurança – conceitos básicos Sistemas Distribuídos 2015 . Ameaças ... Criptografia de chave pública e
Page 30: Segurança – conceitos básicosnoemi/sd-15/aula10-seguranca.pdf · Segurança – conceitos básicos Sistemas Distribuídos 2015 . Ameaças ... Criptografia de chave pública e
Page 31: Segurança – conceitos básicosnoemi/sd-15/aula10-seguranca.pdf · Segurança – conceitos básicos Sistemas Distribuídos 2015 . Ameaças ... Criptografia de chave pública e

Autenticação em sistemas distribuídos

•  acesso a serviços em diferentes pontos –  (administrativos e geográficos) –  escalabilidade

•  cada um deles deve identificar o usuário individualmente? –  cenários como grades, bibliotecas digitais, etc –  autenticação e controle de acesso

Page 32: Segurança – conceitos básicosnoemi/sd-15/aula10-seguranca.pdf · Segurança – conceitos básicos Sistemas Distribuídos 2015 . Ameaças ... Criptografia de chave pública e

soluções clássicas

•  cadastro individual de cada usuário em cada serviço –  ônus para administrador de serviço

•  cadastro de cada usuário e de seus direitos –  ônus para usuário:

•  senha (ou outra coisa) para cada serviço?

•  conta única para todos os usuários de certa instituição –  ônus para administrador de serviço:

•  não há como fazer auditoria –  ônus para usuário

•  não há como diferenciar direitos

Page 33: Segurança – conceitos básicosnoemi/sd-15/aula10-seguranca.pdf · Segurança – conceitos básicos Sistemas Distribuídos 2015 . Ameaças ... Criptografia de chave pública e

sistemas de identidade web

•  institucionais •  centrados em usuários

Page 34: Segurança – conceitos básicosnoemi/sd-15/aula10-seguranca.pdf · Segurança – conceitos básicos Sistemas Distribuídos 2015 . Ameaças ... Criptografia de chave pública e

arquiteturas distribuídas

•  provedor de serviço: –  responsável por serviço controlado

•  provedor de identidade –  responsável por autenticação de usuários

•  provedor de atributos –  fornece informações que podem ser usadas pelo

controle de acesso

–  rede de confiança entre provedores –  propostas específicas para aplicações web

Page 35: Segurança – conceitos básicosnoemi/sd-15/aula10-seguranca.pdf · Segurança – conceitos básicos Sistemas Distribuídos 2015 . Ameaças ... Criptografia de chave pública e

exemplos

acesso a editoras online •  reconhecimento de usuários de instituições cadastradas

Page 36: Segurança – conceitos básicosnoemi/sd-15/aula10-seguranca.pdf · Segurança – conceitos básicos Sistemas Distribuídos 2015 . Ameaças ... Criptografia de chave pública e

exemplos

vendas com descontos p/ estudantes •  como saber que usuário é estudante? •  certificado? mas serviço tem que conhecer cada usuário?

Page 37: Segurança – conceitos básicosnoemi/sd-15/aula10-seguranca.pdf · Segurança – conceitos básicos Sistemas Distribuídos 2015 . Ameaças ... Criptografia de chave pública e

uso de provedores de identidade

•  provedores de serviços confiam em algumas fontes de identidade

serviço em qualquer lugar

provedor de identidade

Page 38: Segurança – conceitos básicosnoemi/sd-15/aula10-seguranca.pdf · Segurança – conceitos básicos Sistemas Distribuídos 2015 . Ameaças ... Criptografia de chave pública e

exemplo: uso de shibboleth

•  protocolo SAML usado na comunicação (shib 2.x)

Page 39: Segurança – conceitos básicosnoemi/sd-15/aula10-seguranca.pdf · Segurança – conceitos básicos Sistemas Distribuídos 2015 . Ameaças ... Criptografia de chave pública e

federações

•  em andamento em muitos países •  acoplamento com projetos de infraestruturas

de chaves públicas •  privacidade: fornecimento do conjunto

mínimo de atributos necessários •  foco atual em aplicações web

Page 40: Segurança – conceitos básicosnoemi/sd-15/aula10-seguranca.pdf · Segurança – conceitos básicos Sistemas Distribuídos 2015 . Ameaças ... Criptografia de chave pública e

Controle de acesso

•  matrizes de acesso –  usuários X recursos

•  normalmente esparsas •  opções:

–  lista de recursos para cada usuário/grupo –  lista de usuários/grupos para cada recurso

Page 41: Segurança – conceitos básicosnoemi/sd-15/aula10-seguranca.pdf · Segurança – conceitos básicos Sistemas Distribuídos 2015 . Ameaças ... Criptografia de chave pública e

RBAC

•  direitos nem sempre associados a usuários individuais –  papel do usuário na organização –  um mesmo usuário pode desempenhar diferentes

papéis •  dinamismo

papel

papel

Page 42: Segurança – conceitos básicosnoemi/sd-15/aula10-seguranca.pdf · Segurança – conceitos básicos Sistemas Distribuídos 2015 . Ameaças ... Criptografia de chave pública e

ABAC

•  simplificação de RBAC –  atributos de usuário utilizados para definir

autorizações

autoridade de atributos

Page 43: Segurança – conceitos básicosnoemi/sd-15/aula10-seguranca.pdf · Segurança – conceitos básicos Sistemas Distribuídos 2015 . Ameaças ... Criptografia de chave pública e

exemplo: uso de shibboleth

Page 44: Segurança – conceitos básicosnoemi/sd-15/aula10-seguranca.pdf · Segurança – conceitos básicos Sistemas Distribuídos 2015 . Ameaças ... Criptografia de chave pública e

privacidade

Page 45: Segurança – conceitos básicosnoemi/sd-15/aula10-seguranca.pdf · Segurança – conceitos básicos Sistemas Distribuídos 2015 . Ameaças ... Criptografia de chave pública e

identidades centradas em usuários

Page 46: Segurança – conceitos básicosnoemi/sd-15/aula10-seguranca.pdf · Segurança – conceitos básicos Sistemas Distribuídos 2015 . Ameaças ... Criptografia de chave pública e

identidades centradas em usuários

•  um conceito semelhante ao do intermediário confiável pode ser usado para armazenar dados do usuário

Page 47: Segurança – conceitos básicosnoemi/sd-15/aula10-seguranca.pdf · Segurança – conceitos básicos Sistemas Distribuídos 2015 . Ameaças ... Criptografia de chave pública e

autoridades de atributos x certificados

•  uso em organizações virtuais