segurança na nuvem - fcup - departamento de ciência de ...dpetiz/publications/nuvemppt.pdf ·...

29
Segurança na Nuvem Diogo Reis – Duarte Petiz – Pedro Seruca DCC/FCUP

Upload: voxuyen

Post on 09-Nov-2018

216 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Segurança na Nuvem - FCUP - Departamento de Ciência de ...dpetiz/publications/nuvemPPT.pdf · Intervenientes Provedor da Nuvem ... um grande número de clientes e otimizar recursos

Segurança na Nuvem

Diogo Reis – Duarte Petiz – Pedro Seruca

DCC/FCUP

Page 2: Segurança na Nuvem - FCUP - Departamento de Ciência de ...dpetiz/publications/nuvemPPT.pdf · Intervenientes Provedor da Nuvem ... um grande número de clientes e otimizar recursos

O que é realmente Computação

na Nuvem?

Definição mais aceite criada pela NIST (National Institute of Standards and Technology)

Computação na nuvem é um novo paradigma de computação que envolve terceirização de dados e computação.

Com:

Consumo “self-service” – Automático;

Acedido pela Internet;

Recursos escaláveis, infinitos e elásticos;

Sem custos iniciais – O cliente paga aquilo que consome

CONSUMA O QUE QUISERER, QUANDO QUISER, NO LOCAL QUE QUISER E PAGA AQUILO QUE USAR.

Page 3: Segurança na Nuvem - FCUP - Departamento de Ciência de ...dpetiz/publications/nuvemPPT.pdf · Intervenientes Provedor da Nuvem ... um grande número de clientes e otimizar recursos

Arquiteturas

Web Browser do Cliente

Software as a Service (SaaS)

Ex: Google Docs

Platform as a Service (PaaS)

Ex: Windows Azure

Infrastructure as a Service (IaaS)

Ex: Amazon EC2

Page 4: Segurança na Nuvem - FCUP - Departamento de Ciência de ...dpetiz/publications/nuvemPPT.pdf · Intervenientes Provedor da Nuvem ... um grande número de clientes e otimizar recursos

ImplementaçõesNem todos os utilizadores devem ter o mesmo acesso à nuvem dentro de uma organização. Como tal foram criados 4 tipos diferentes de nuvens:

Private Cloud:

• A infraestrutura pertence à organização ou a um provedor.

Public Cloud:

A infraestrutura pertence ao provedor.

Serviços disponíveis a múltiplos utilizadores.

Baixo custo e altamente escalável.

Community Cloud:

A infraestrutura é partilhada por diversas organizações.

Destinado a comunidades que partilhem os mesmos interesses.

Hybrid Cloud:

É a junção dos modelos Public e Private.

Uma nuvem privada pode ver os seus recursos aumentados utilizando uma reserva

de recursos de uma nuvem pública.

Page 5: Segurança na Nuvem - FCUP - Departamento de Ciência de ...dpetiz/publications/nuvemPPT.pdf · Intervenientes Provedor da Nuvem ... um grande número de clientes e otimizar recursos

Interfaces de Acesso

Como o utilizador não possui acesso físico sobre a nuvem necessita de uma

interface para aceder à mesma.

É essencial que existam mecanismos robustos de segurança para que o

acesso não seja comprometido.

Tipicamente o utilizador acede à nuvem utilizando um serviço web baseado

em SOAP (Simple Object Protocol) ou através de uma aplicação web REST.

Page 6: Segurança na Nuvem - FCUP - Departamento de Ciência de ...dpetiz/publications/nuvemPPT.pdf · Intervenientes Provedor da Nuvem ... um grande número de clientes e otimizar recursos

Intervenientes

Provedor da Nuvem: é a entidade que fornece e distribui as infraestruturas da nuvem.

Provedor do Serviço: é a entidade que utiliza as infraestruturas da nuvem para fornecer aplicações e serviços aos consumidores finais.

Consumidor do Serviço: é a entidade que utiliza os serviços hospedados na infraestrutura da nuvem.

Page 7: Segurança na Nuvem - FCUP - Departamento de Ciência de ...dpetiz/publications/nuvemPPT.pdf · Intervenientes Provedor da Nuvem ... um grande número de clientes e otimizar recursos

Estas classes (intervenientes) formam pares de interação.

Torna-se assim possível estudar as superfícies de ataque ao observar os pares de interação.

Intervenientes

Page 8: Segurança na Nuvem - FCUP - Departamento de Ciência de ...dpetiz/publications/nuvemPPT.pdf · Intervenientes Provedor da Nuvem ... um grande número de clientes e otimizar recursos

Superfícies de Ataque

A: Interface cliente-

servidor.

B: Interface de

comunicação do

utilizador com o

serviço.

C: Superfície entre os

serviços e a

infraestrutura da

nuvem.

D: Controlo por parte

do provedor da

cloud.

E: Interface de

controlo da nuvem

F: Exposição do utilizador

à cloud.

Page 9: Segurança na Nuvem - FCUP - Departamento de Ciência de ...dpetiz/publications/nuvemPPT.pdf · Intervenientes Provedor da Nuvem ... um grande número de clientes e otimizar recursos

Problemas e Ameaças à Nuvem

A Cloud Security Alliance (CSA) referencia 9 principais ameaças à computação na

nuvem:

Violação de dados

Perda de dados

Ataque/sequestro de contas

APIs inseguras

Negação de serviço (DoS)

Insiders maliciosos

Abuso dos serviços da Cloud

Due Diligence insuficiente

Problemas/vulnerabilidades em tecnologias partilhadas

Por que será que o

conceito da computação

na nuvem divide

opiniões?

Page 10: Segurança na Nuvem - FCUP - Departamento de Ciência de ...dpetiz/publications/nuvemPPT.pdf · Intervenientes Provedor da Nuvem ... um grande número de clientes e otimizar recursos

Problemas e Ameaças à Nuvem

Funcionários da Cloud

Informação de Eventos Relevantes (Logs)

Funcionários do Cliente

Informação de Passwords/Autenticação

Poder sobre o Controlo das VMs

Provedor de Serviço (PODEROSO)

Tem acesso às VMs, pode até mesmo copiar VMs

Consegue monitorizar detalhadamente a rede e sabe padrões de aplicações

É quem apresenta a conta ao utilizador. Será que o valor é mesmo real?

Insiders Maliciosos

Motivações: Vender as informações à concorrência;

Essencialmente dinheiro/poder;

Page 11: Segurança na Nuvem - FCUP - Departamento de Ciência de ...dpetiz/publications/nuvemPPT.pdf · Intervenientes Provedor da Nuvem ... um grande número de clientes e otimizar recursos

Problemas e Ameaças à Nuvem

Os provedores da Cloud de forma a albergar

um grande número de clientes e otimizar

recursos vendem os seus serviços através de

virtualização partilhada de hardware.

Realocação eficaz sem a necessidade de

alterações ao hardware dos servidores da

nuvem.

Problemas/vulnerabilidades em tecnologias partilhadas

Múltiplos utilizadores

independentes a

partilhar a mesma

infraestrutura física.

Então um atacante

pode estar na

mesma máquina

física que a vitima.

Então como é que

um atacante

descobre a máquina

da vitima?

Page 12: Segurança na Nuvem - FCUP - Departamento de Ciência de ...dpetiz/publications/nuvemPPT.pdf · Intervenientes Provedor da Nuvem ... um grande número de clientes e otimizar recursos

Problemas com Múltiplos Vizinhos

Para se tornar vizinho da vitima o atacante precisa de determinar a

localização da vitima através de uma estratégia de

mapear/cartografar a infraestrutura da nuvem e da rede.

Utilização de heurísticas para determinar coabitação de duas VMs.

Esta estratégia tira partido de

ferramentas como por

exemplo:

Wget, Traceroute, Nmap,

hping

Utilizadores podem escolher regiões

Ex: Us ou Europa

Tipo de Instância (Tamanho)

Ex: Grande, Média, Pequena

Instâncias têm um IP

Instâncias do mesmo tipo poderão ter

regiões de IP semelhantes

O atacante tem de estudar bem o sistema e combinar

várias vulnerabilidades!

Page 13: Segurança na Nuvem - FCUP - Departamento de Ciência de ...dpetiz/publications/nuvemPPT.pdf · Intervenientes Provedor da Nuvem ... um grande número de clientes e otimizar recursos

Problemas com Múltiplos Vizinhos

Quando o invasor conseguir ser vizinho pode realizar ataques DoS ou obter

informação da vitima através de ataques de canais laterais (Side Channels).

Estes problemas podem ser mitigados se o provedor:

Atribuir endereços IP aleatórios às instancias.

Restringir ferramentas de mapeamento da rede.

Utilizar técnicas de deteção de vizinhos e saber se o isolamento foi violado.

Após o atacante descobrir a localização do alvo basta adquirir um serviço que

utilize várias máquinas virtuais de forma a aumentar a janela de oportunidade de

coabitação.

Instâncias lançadas após as instâncias da vitima existe 40% de probabilidade de serem

vizinhas.*

* T. Ristenpart, E. Tromer, H. Shacham, and S. Savage, “Hey, you, get off of my cloud: exploring information leakage in third-party compute clouds,” in Proceedings of the 16th ACM conference on Computer and communications security, pp. 199–212, ACM, 2009.

Page 14: Segurança na Nuvem - FCUP - Departamento de Ciência de ...dpetiz/publications/nuvemPPT.pdf · Intervenientes Provedor da Nuvem ... um grande número de clientes e otimizar recursos

Canais Laterais

É um tipo de ataque passivo

O atacante escuta informação do meio

físico e posteriormente usa esta

informação para atacar outras máquinas

virtuais presentes no mesmo meio físico.

O ataque mais vulgar deste tipo é a

escuta dos tempos de utilização do CPU

Caches permitem que um atacante saiba

a carga computacional de outras

instâncias.

Extração de bits por um canal lateral

Será assim tão perigoso?

Page 15: Segurança na Nuvem - FCUP - Departamento de Ciência de ...dpetiz/publications/nuvemPPT.pdf · Intervenientes Provedor da Nuvem ... um grande número de clientes e otimizar recursos

Canais Laterais

Este tipo de ataque por vezes é considerado inofensivo.

• Y. Zhang, A. Juels, M. K. Reiter, e T. Ristenpart demonstraramem

2012 que é possível extrair Private Keys a partir deste tipo de

ataque.

Através das Private Keys conseguem por sua vez proceder a outro tipo de ataques à vitima.

Como evitar? DESSINCRONIZAR

Para evitar este tipo de ataques é limitar os recursos

partilhados, cache wiping, inserção de atrasos aleatórios,

ajustar a perceção do tempo de cada instância

Os recursos da nuvem são utilizados mais tempo como

desvantagem.

Não é fácil e requer antevisão de todos os canais.

Page 16: Segurança na Nuvem - FCUP - Departamento de Ciência de ...dpetiz/publications/nuvemPPT.pdf · Intervenientes Provedor da Nuvem ... um grande número de clientes e otimizar recursos

Problemas do Poder das 3ªs Partes

A nuvem funciona como uma caixa preta,

nada dentro da nuvem é visível para os

clientes.

É a base das inseguranças que o cliente tem

quanto à privacidade e integridade dos seus

dados.

Uma das componentes da nuvem são humanos: CORROMPIVEIS

Funcionários do provedor, Funcionários do Cliente e o Provedor da Cloud.

Estes funcionários tem poderes consoante a sua hierarquia dentro do provedor.

Estes poderes podem ser utilizados para a boa gestão e funcionamento do provedor, mas também podem ser utilizados para o oposto.

Page 17: Segurança na Nuvem - FCUP - Departamento de Ciência de ...dpetiz/publications/nuvemPPT.pdf · Intervenientes Provedor da Nuvem ... um grande número de clientes e otimizar recursos

Problemas do Poder das 3ªs Partes

Caso uma organização entre em conflito com o

seu provedor surge um grave problema.

O provedor poderá quebrar toda a ética e

vender ou libertar informação das organizações

para atacantes interessados, ou simplesmente

conceder-lhes acesso ao meio.

A confiança é um fator fulcral na escolha de um provedor de serviços na nuvem.

A necessidade de confiança e de proteção de integridade fez com que fossem criadas

soluções de segurança.

CONFIANÇA

Page 18: Segurança na Nuvem - FCUP - Departamento de Ciência de ...dpetiz/publications/nuvemPPT.pdf · Intervenientes Provedor da Nuvem ... um grande número de clientes e otimizar recursos

Soluções de Segurança

Foram criadas soluções de segurança ao nível de hardware como de

software que visassem proteger ao máximo as organizações.

Proteção de dados

• ProtectV

• AES256

Controlo dos dados à distancia

Trusted Hardware

• Trusted Platform Module

Page 19: Segurança na Nuvem - FCUP - Departamento de Ciência de ...dpetiz/publications/nuvemPPT.pdf · Intervenientes Provedor da Nuvem ... um grande número de clientes e otimizar recursos

Proteção dos Dados

Uma vez que o cliente ao utilizar a computação na nuvem estará sempre

dependente do provedor necessitará de um meio que separe os dados e

os torne inacessíveis, ou pelo menos ilegíveis, contra terceiros.

É assim usado criptografia e encriptação de dados, aumentando a

segurança do cliente.

• Consegue-se assim proteger a integridade de uma organização.

Page 20: Segurança na Nuvem - FCUP - Departamento de Ciência de ...dpetiz/publications/nuvemPPT.pdf · Intervenientes Provedor da Nuvem ... um grande número de clientes e otimizar recursos

ProtectV

Solução comercial desenvolvida pela SafeNet.

Inteiramente compatível com AWS EC2 e o VMWare.

Encripta máquinas virtuais e volumes de armazenamento conectados.

Com o ProtectV nenhuma máquina pode ser ligada sem a devida

autenticação (key) do ProtectV StartGuard.

Page 21: Segurança na Nuvem - FCUP - Departamento de Ciência de ...dpetiz/publications/nuvemPPT.pdf · Intervenientes Provedor da Nuvem ... um grande número de clientes e otimizar recursos

ProtectV

A SafeNet ProtectV e a KeySecure fornecem criptografia dos dados

garantindo:

Servidores físicos protegidos da mesma forma que VMs

Encripta toda a VM, backup e snapshots associados.

Separa a administração da encriptação da administração de

armazenamento eliminando assim o acesso a dados sensíveis.

Torna rapidamente os dados ilegíveis em caso de ataque, devido ao

sistema de exclusão de chave (key deletion)

Page 22: Segurança na Nuvem - FCUP - Departamento de Ciência de ...dpetiz/publications/nuvemPPT.pdf · Intervenientes Provedor da Nuvem ... um grande número de clientes e otimizar recursos

AES256

O AES256 (Advanced Encryptation Standart) é uma especificação para encriptação de dados estabelecida pelo NIST (National Institute of StandartsTechnology).

A chave é expandida pelo algoritmo de Rijndael.

O AES atua sobre um array bidimensional de bytes com um total de 4x4 posições e atua sobre um número de turnos.

Cada turno tem 5 estágios, sendo o 5º um novo AddRoundKey.

AddRoundKey: Cada byte do estado é associado à subchave própria do turno respetivo (RoundKey).

SubBytes: Cada byte é substituído por outro de acordo com uma tabela de referencia.

ShiftRows: Cada fila do estado é deslocada uma certo número de posições.

MixColumns: Combina os quatro bytes de cada coluna usando uma transformação linear.

Esta técnica é atualmente utilizada pela DropBox para cifrar os ficheiros dos seus utilizadores.

Page 23: Segurança na Nuvem - FCUP - Departamento de Ciência de ...dpetiz/publications/nuvemPPT.pdf · Intervenientes Provedor da Nuvem ... um grande número de clientes e otimizar recursos

Controlo dos Dados à Distancia

Desenvolveram-se protocolos que garantem que o cliente consiga

certificar-se à distância de que os seus dados não foram adulterados

por algum agente malicioso.

Provable Data Possession (PDP).

Proof of Retrievability (PoR).

Proof of PossessionO utilizador pode

agora eliminar o

ficheiro

Page 24: Segurança na Nuvem - FCUP - Departamento de Ciência de ...dpetiz/publications/nuvemPPT.pdf · Intervenientes Provedor da Nuvem ... um grande número de clientes e otimizar recursos

Provable Data Possession

Este sistema de controlo de dados à distancia usa uma técnica de verificação local (spot checking).

De forma a reduzir o trafego de rede o cliente recolhe amostras de dados de blocos aleatórios e compara-os com a sua cópia local.

Se apenas 1% dos dados forem corrompidos por agentes maliciosos através de uma amostra aleatória de 460 blocos é possível detetar com 99% de probabilidade essa corrupção. *

A vulnerabilidade deste sistema está no tamanho dos dados corrompidos.

• Para dados corrompidos muito pequenos (ex: 1 bit) é difícil detetar corrupção.

• Uma solução é introdução de Error Correction Code(ECC).

Um exemplo de uma implementação dessas é o RobustDynamic Provable Data Possession (R-DPD)

?

* G. Ateniese, R. Burns, R. Curtmola, J. Herring, L. Kissner, Z. Peterson, and D. Song, “Provable data possession at untrusted stores,” in Proceedings of the 14th ACM conference on Computer and communications security, pp. 598–609, Acm, 2007.

O utilizador tem de

guardar sempre

alguns pedaços dos

ficheiros.

Page 25: Segurança na Nuvem - FCUP - Departamento de Ciência de ...dpetiz/publications/nuvemPPT.pdf · Intervenientes Provedor da Nuvem ... um grande número de clientes e otimizar recursos

Proof of Retrievability Neste sistema é o provedor de serviço que comprova ao cliente

que possui os dados dele através de um protocolo servidor/arquivo.

• Baseado num sistema criptográfico simétrico

Apenas existe uma chave de verificação que é armazenada no próprio ficheiro de forma a melhorar e a verificar a integridade do mesmo.

• Ao juntar a chave ao ficheiro os atacantes não conseguem encontrar

a chave uma vez que os blocos são todos iguais.

• Assim o utilizador consegue verificar se os seus ficheiros foram, ou não,

adulterados.

Page 26: Segurança na Nuvem - FCUP - Departamento de Ciência de ...dpetiz/publications/nuvemPPT.pdf · Intervenientes Provedor da Nuvem ... um grande número de clientes e otimizar recursos

Trusted Hardware

Partindo da ideia de que os atacantes conseguem controlar algum

software, mas não componentes de hardware dentro da própria

estrutura da nuvem foram criados criptoprocessadores seguros,

chamados de Trusted Platform Module.

• São capazes de armazenar chaves criptográficas.

• Atuam como raiz para dar confiança remota aos clientes.

Conseguem assim saber se estão ligados à verdadeira máquina remota.

Page 27: Segurança na Nuvem - FCUP - Departamento de Ciência de ...dpetiz/publications/nuvemPPT.pdf · Intervenientes Provedor da Nuvem ... um grande número de clientes e otimizar recursos

Trusted Platform Module

E na Nuvem?Problema Agentes internos com acesso root podem comprometer as VMs dos clientes

Solução Possivel?: Encriptar as máquinas virtuais? Mas mais cedo ou mais tarde estas

terão de de ser descriptografadas para correrem!

Solução Possivel?: Apenas permitir que nós (máquinas) com software confiável para

descriptografar a VM!

Problema Como determinar que o Cloud Control Operation é seguro?

Solução Possivel?: TPM?

O TPM pode ser uma Solução para dar confiança ao Utilizador!

Page 28: Segurança na Nuvem - FCUP - Departamento de Ciência de ...dpetiz/publications/nuvemPPT.pdf · Intervenientes Provedor da Nuvem ... um grande número de clientes e otimizar recursos

Conclusão

A computação em nuvem faz com que uma organização

ganhe um grande desempenho e reduza os custos de

hardware.

O maior obstáculo que se pode encontrar na computação em

nuvem é a segurança, sendo a privacidade e integridade dos

dados a chave da discussão.

O Facto de não existir nenhum standard para as infraestruturas

da nuvem faz com que a implementação de técnicas de

segurança standard e protocolares se tornem difíceis.

Os sistemas de segurança continuarão a evoluir de forma a

fortalecer a segurança da nuvem.

Mesmo existindo alguns problemas ao nível da segurança o

conceito de computação na nuvem vai continuar a evoluir e a

expandir-se.

A segurança de hoje, é a insegurança de amanha!

Page 29: Segurança na Nuvem - FCUP - Departamento de Ciência de ...dpetiz/publications/nuvemPPT.pdf · Intervenientes Provedor da Nuvem ... um grande número de clientes e otimizar recursos

Obrigado pela atenção!

Thanks!