Segurança em Computação na Nuvem Ricardo Dobelin Barros Faculdade de Engenharia Elétrica e de Computação - FEEC Universidade Estadual de Campinas - UNICAMP Campinas, Brasil [email protected] Resumo Ao mesmo tempo em que cresce os adeptos à computação em nuvem, varios assuntos relacionados a segurança da informação em ambientes de cloud computing, aparecem como uma das principais barreiras para a adoção mais rápida e mais generalizada dessa tecnologia. Essa visão se origina a partir de diferentes perspectivas de pesquisadores, tomadores de decisão da indústria e organizações governamentais. Para empresas cuja natureza de seus negócios são críticos, com aplicações extremamente sensíveis ao tempo e resposta ou empresas do setor financeiro, a computação em nuvem de hoje parece desaconselhável, devido a questões como a disponibilidade dos serviços, a confidencialidade dos dados, integridade das informações entre outros. Com base nessas informações esse artigo se propõe em primeiro lugar para apresentar cloud computing, sua arquitetura e modelos e em segundo lugar, a partir das características essenciais da segurança da informação, apresentar uma solução viável que elimine ameaças potenciais relacionadas a confidencialidade, integridade e disponibilidade. Este trabalho apresenta a introdução de uma terceira parte confiável (Trusted Third Party) conforme proposto por Dimitrios Zissis e Dimitrios Lekkas, para poder assegurar as características de segurança especificas em um ambiente de nuvem. Alem de abordar assuntos como a criptografia, Infraestrutura de Chaves Públicas especificamente operando em conjunto com SSO e LDAP, com o objetivo de garantir a autenticação, integridade e confidencialidade dos dados e as comunicações dos envolvidos. Palavras Chaves: Computação em nuvem, Segurança da informação na nuvem, terceiro confiável Abstract While growing adoption of cloud computing, the issues related to information security in cloud computing environments appear as arguably one of the principal barriers to more rapid and widespread adoption of cloud computing. This view stems from different perspectives as researchers, decision makers, industry and government organizations. For companies whose nature of business is critical, with applications extremely sensitive to response time and or financial companies, cloud computing today seems inadvisable due to issues such as service availability, data confidentiality, integrity of information between others. Based on this information this article first proposes to introduce cloud computing, architecture and models, and secondly from the essences of information security caractistics present a viable solution to eliminate potential threats related to confidentiality, integrity and availability. This paper presents the introduction of a trusted third party (Trusted Third Party) as proposed by Dimitrios Zissis and Dimitrios Lekkas, in order to guarantee the characteristics of specific security in a cloud environment. In addition to addressing issues such as encryption, Public Key Infrastructure operating specifically in conjunction with SSO and LDAP, aiming to ensure authentication, integrity and confidentiality of data and communications of those involved. Keywords: Cloud computing, Information security in the cloud, trusted third party I. INTRODUÇÃO Com a crescente adoção da computação em nuvem, passa a existir uma alteração drástica na percepção de todos sobre as arquiteturas de infraestrutura, no uso de softwares e nos modelos de desenvolvimento. Como um passo evolutivo, após a transição de computadores mainframe para modelos de cliente/servidor, chega a computação em nuvem que soma elementos de grid computing, utility computing e computação autônoma, em uma nova arquitetura. Os argumentos econômicos também somam para que a computação em nuvem ganhe ampla aceitação. Provedores de computação em nuvem podem construir grandes datacenters a baixo custo, devido a grande experiência desses provedores na organização e provisionamento de recursos computacionais, as economias de escala podem aumentar a receita para os provedores de nuvem e ao mesmo tempo conseguir custos mais baixos para os usuários de nuvem. O modelo resultante de computação sob demanda permite aos provedores conseguirem uma melhor utilização dos recursos computacionais compartilhando infraestrutura de datacenter, recursos, ferramentas e processos de gerenciamento. Esse mesmo modelo de consumo da computação, permite aos usuários da computação em nuvem evitar os custos de excesso no provisionamento de recursos, podendo aumentar ou reduzir dinamicamente sua infraestrutura ou aplicações conforme a necessidade de suas empresas[01, 02]. Esta rápida transição para a nuvem, tem causado preocupações sobre algumas questões críticas para o sucesso dos sistemas de informação, comunicação e segurança da informação. A partir de uma perspectiva de segurança, uma série de riscos e desafios inexplorados são introduzidos diante desta mudança para a nuvem, ruindo com grande parte da eficácia dos modelos e mecanismos tradicionais de proteção. II. ENTENDENDO DE CLOUD COMPUTING Embora nos últimos anos estejamos ouvindo muito sobre o termo de cloud compuing computação nas nuvens, esse conceito não é novo. De acordo com Kaufman, o conceito de computação em nuvem vem evoluindo há mais de 40 anos. Na década de 1960, J.C.R. Licklider introduziu o termo "intergalactic computer network" na Agência de Projetos de Pesquisa Avançada. Este conceito serviu para introduzir o termo que o mundo hoje conhece como Internet. A premissa subjacente era a interconexão global de programas de computador e dados. [03] O nome computação em nuvem ,foi inspirado no símbolo da nuvem que muitas vezes é usado para representar a Internet nos fluxogramas e diagramas. A migração para a nuvem vem ocorrendo nos últimos anos com os usuários finais. Um número crescente de dados pessoais, incluindo bookmarks, fotografias, arquivos de música e muito mais, que podem ser armazenados em servidores remotos e estarem acessíveis através de uma rede. A computação em nuvem está baseada nos conceitos de virtualização; uma tecnologia que, na verdade, remonta a 1967, mas durante décadas estava disponível apenas em sistemas mainframe. Na sua essência, um computador host executa um aplicativo conhecido como um hypervisor; isso cria uma ou mais máquinas virtuais, que simulam computadores físicos tão fielmente que as simulações podem executar qualquer software, de sistemas operacionais a aplicações de usuário final. [04] Esse conceito de nuvem não se aplica apenas a virtualização dos componentes de tecnologia mas atualmente, ao consumo de tecnologia que pode ser virtual ou física, pode ser de hardware ou de software e das varias camadas que compõe uma aplicação. Na computação em nuvem existem três principais modelos comercializados, são eles: - Software as a Service (SaaS) - software com um serviço: Fornece ao consumidor a capacidade de usar os aplicativos do provedor executando em uma infraestrutura da nuvem. As aplicações são acessíveis a partir de vários dispositivos do cliente, através de uma interface "thin client", como um navegador web (por exemplo: web e-mail). O consumidor não gerencia nem controla a infraestrutura de nuvem subjacente, incluindo rede, servidores, sistemas operacionais, armazenamento, ou mesmo a configuração de seus aplicativos. - Platform as a service (PaaS) - plataforma como serviço: Possibilita ao consumidor a capacidade de criar aplicações e fazer o consumo de plataformas de desenvolvimento como linguagens de programação, serviços de localização, gerenciadores de banco de dados e ferramentas suportadas pelo provedor. O consumidor não gerencia nem controla a infraestrutura subjacente da nuvem, incluindo rede, servidores, sistemas operacionais ou armazenamento, mas tem o controle sobre os aplicativos implementados e possivelmente a hospedagem de seus aplicativos. - Infrastructure as a service (IaaS) infraestrutura como um serviço: Fornece ao consumidor a capacidade de provisionar processamento computacional, armazenamento de dados, trafego de rede e outros recursos de computação fundamentais. Permite que o consumidor possa implantar e executar o software que desejar o que pode incluir sistemas operacionais e aplicativos. O consumidor tem o controle sobre sistemas: operacionais, de armazenamento, aplicativos implementados e possivelmente, controle limitado aos componentes de rede. Existem três arquiteturas mais usadas de computação em nuvem: nuvens públicas, nuvens privadas e nuvens híbridas. - Nuvem privada - A infraestrutura de nuvem é operada pela própria organização dona de toda infraestrutura. Pode ser gerenciada pela organização ou por um terceiro, e pode existir no cliente ou fora do seu próprio datacenter. Em geral os recursos computacionais nessa arquitetura são dedicados. - Nuvem pública - A infraestrutura de nuvem é disponibilizada para o público em geral ou um grande grupo da indústria e é propriedade de uma organização que vende serviços em nuvem. Nesse caso os recursos computacionais são compartilhados com outros clientes usuários da nuvem. - Nuvem Hibrida - A infraestrutura desta nuvem é uma composição das duas arquiteturas anteriores, onde nesse caso a complexidade no gerenciamento e segurança da informação tende a aumentar. III. SEGURANÇA DA INFORMAÇÃO EM CLOUD Dentro do mundo da computação em nuvem, em um ambiente virtual, físico, compartilhado ou dedicado, onde é possivel aos usuários obter o mais ou menos poder computacional atraves de processos e ferramentas de forma diferente do que tradicionalmente se faz em tecnologia da informação, nota-se que a complexidade aumenta e portato exirge maior atenção e controle à segurança das informações. Segurança passa a ser um dos fatores chaves para o sucesso ou fracasso na adoção de computação em nuvem. Ao se adotar um ambiente de nuvem, começam a surgir varias duvidas e preocupações, como por exemplo sobre o armazenamento e acesso aos dados. É comum em uma arquitetura de computação em nuvem que os usuários, não saibam a localização exata de seus dados, tão pouco de outras fontes de dados armazenadas em conjunto com a com as suas informações. A segurança da informação em ambientes de nuvem devem garantir a confidencialidade, integridade e disponibilidade (confidentiality, integrity, and availability - CIA), fatores que elevam a complexidade do gerenciamento de um ambiente de tecnologia da informação, para os provedores de computação em nuvem [05]. Segurança deve ser um dos itens a ser construído juntamente com o modelo de nuvem. Questões como: “A segurança é unicamente uma responsabilidade do dono dos dados, ou também compete ao provedor de nuvem que aluga a capacidade de armazenamento para suas aplicações e dados?” Além disso, questões legais surgem, referentes à conformidade e direito de privacidade, ou ainda, auditoria dos dados que podem estar armazenados no país de origem do usuário ou em qualquer outro país do mundo com legislações próprias e até mesmo diferentes do país de origem. O número de preocupações legais referentes às questões como confidencialidade e direito de acesso a dados armazenados na computação em nuvem, ganham força à medida em que a tecnologia se torna cada vez mais difundida. Estas questões e as suas respostas, ainda a serem determinadas, mostram de forma significativa como a segurança dos dados desempenha e desempenhará um papel vital no crescimento e desenvolvimento contínuo da computação em nuvem. Para superar estas e outras preocupações, devemos desenvolver um modelo de segurança que promova a confidencialidade, integridade e disponibilidade dos recursos computacionais na nuvem. Esse modelo deveria permitir que cada nuvem possa oferecer os seus serviço de forma que os usuários tenham esses riscos minimizados ou que tendam a zero. Compreender e documentar claramente os requisitos dos usuários de nuvem é imprescindível na concepção de uma solução visando assegurar Camada: Aplicação Virtual Fisica Modelo de Nuvem: Software como um Serviço Plataforma como um Serviço Infraestrutura com um Serviço Datacenter Fisico (Infraestrutura com um Serviço) estas necessidades (confidencialidade, integridade e disponibilidade). Verificar identidades que compartilhem requirimentos comuns de segurança, determinar as necessidades de protecção dos dados e garantir a segurança da informação podem ser alguns dos elementos mais complexos do projeto de uma nuvem. Em ambientes com diversas arquiteturas e modelos de nuvem, como em um ambiente distribuído multiusuário, propõe-se desafios de segurança únicos, que são dependentes do nível em que o usuário opera, da aplicação ou se o servidor é virtual ou físico. Esses requisitos podem ser analisados na tabela 1 a seguir, conforme proposto por D. Zissis e D Lekkas onde temos: Usuário: Cliente final se aplica a uma pessoa ou organização que assina um serviço oferecido por um provedor de nuvem, o cliente pela sua utilização do software. Requisitos de Segurança: • Privacidade em ambiente com vários usuários • A protecção dos dados • O controle de acesso • Comunicação Segura • Softwares de segurança • A disponibilidade do serviço Desenvolvedor-moderador se aplica a uma pessoa ou organização que implanta software em uma infraestrutura em nuvem • O controle de acesso • A segurança do aplicativo • Segurança de dados, (dados em trânsito, dados armazenados) • Controle de gerenciamento segurança da nuvem • Imagens seguras • Proteção da nuvem virtual •Segurança Comunicação Usuário se aplica a uma pessoa ou organização que possui a infraestrutura sobre a qual as nuvens serão implantadas • Legal uso não abusivo da computação em nuvem • Segurança do Hardware • Confiabilidade do Hardware • Proteção dos recursos de rede Tabela – 1 Requirimentos de Segurança de Usuários de Computação em Nuvem. Ameaças: • Intercepção • Modificação dos dados em armazenados ou em trânsito • Interrupção de dados • Violação de privacidade • Roubo de identidade • Seqüestro de sessão • Análise do fluxo de tráfego • Exposição na rede • Falhas de programação • Modificação do Software • Interrupção do uso do Software • Roubo de identidade • Seqüestro de sessão • Análise do fluxo de tráfego • Exposição na rede • Distributed Denial of Service - Ataque de negação de Serviço • Comunicações Interrompidas • Os ataques a rede • Distributed Denial of Service - Ataque de negação de Serviço • Interrupção do Hardware • Roubo Hardware • Modificação de hardware • Desvios de infraestrutura • Desastres naturais Os objetivos da segurança da informação dentro de um sistema distribuído são essencialmente [06]: • Garantir a disponibilidade das informações comunicadas entre os participantes dos sistemas; • Manter a integridade das informações comunicadas entre os participantes dos sistemas, ou seja, evitando a perda ou alteração de informações devido ao acesso não autorizado, falha de componentes ou outros erros; • Manter a integridade dos serviços prestados, ou seja, confidencialidade e operação correta; • Fornecer controle de acesso somente aos seus componentes de serviços contratados e bloquear os que não estão autorizados; • Autenticar a identidade dos parceiros de comunicação (entidades de pares). IV. TERCEIRO CONFIÁVEL, PKI E SSO PARA SEGURANÇA NA NUVEM De acordo com Stallings um terceiro confiável pode ser necessário para se conseguir uma transmissão segura. Por exemplo, um terceiro pode ser responsável por distribuir a informação secreta aos dois principais enquanto a protege de qualquer oponente [07]. Dimitrios Zissis e Dimitrios Lekkas afirmam que usar serviços de terceiros confiáveis (TTP - Trusted Third Party) dentro da nuvem, leva ao estabelecimento do nível de confiança necessário e pode oferecer soluções ideais para preservar a confidencialidade, integridade e autenticidade dos dados e das comunicações. [08] Em criptografia, uma terceira parte confiável (TTP) é uma entidade que facilita a interação segura entre duas partes que ambas confiam neste terceiro. O escopo de uma TTP dentro de um Sistema de Informação é fornecer serviços end-to-end de segurança, que são escaláveis, possuem padrões e útil em diferentes domínios, áreas geográficas e setores. A introdução de um terceiro confiável pode endereçar o problema que ocorre ao implementar uma nuvem, onde deixamos os modelos tradicionais de segurança, produzindo domínios de segurança confiáveis. Esta infraestrutura utiliza um sistema de distribuição de certificado digital e um mecanismo para associar esses certificados com uma origem conhecida e o destino de cada servidor participante. TTPs são operacionalmente conectados por meio de cadeias de confiança (normalmente chamados de caminhos de certificados), com o objetivo de fornecer uma rede de confiança que formam a noção de uma infraestrutura de chave pública Public Key Infrastructure (PKI). Uma Public Key Infrastructure fornece meios tecnicamente sólidos e juridicamente aceitáveis para implementar: -Autenticação Forte: O controle de autenticidade, o processo de identificação das partes envolvidas em transações eletrônicas ou troca de informações com meios eletrônicos. -Autorização: O acesso autenticado aos recursos, banco de dados e sistemas de informação, de acordo com os direitos de permissão do usuário e os papéis. -Sigilo de dados: A proteção de informações seja armazenados localmente ou na tentativa de acessos não autorizados. -Integridade dos Dados: A proteção de informações armazenadas. -Autenticidade: Garantir que nenhuma das partes de uma transação eletrônica pode negar a realização da mesma. PKI em um sistema de informação distribuído se beneficia do acoplamento a um diretório. Um diretório é um conjunto de objetos com atributos semelhantes organizados de uma forma lógica e hierárquica. O Lightweight Directory Access Protocol, ou LDAP, é o padrão da Internet na maneira de acessar serviços de um diretório que estejam em conformidade com o modelo de dados X.500. LDAP tornou-se o protocolo predominante para suportar PKIs que acessam os serviços de diretório de certificados e listas de revogação de certificados (CRLs) e é frequentemente utilizado por outros serviços (web) de autenticação. Um diretório quando usado em conjunto com PKI pode servir para distribuir [09]: • Certificados, para aplicações como e-mail no qual um usuário final deverá obter um certificado antes de uma mensagem criptografada ser enviada. • Informações de status de certificados, tais como listas de certificados revogados (CRLs). • Chaves privadas, quando a portabilidade é necessária em ambientes onde os usuários não usam o mesmo computador todos os dias. PKI implantado em conjunto com o SingleSign-On (SSO) são mecanismos ideais para ambientes distribuídos, tais como ambientes de nuvem, onde os usuários navegam entre um numero elevado de sistemas e plataformas com necessidade continua de autenticação e validação de suas identidade e inclusive tipo de acesso. Em um ambiente de Single Sign-On, o usuário não precisa digitar repetidamente as senhas para acessar recursos através de uma rede. Em vez disso, o usuário assina uma vez usando uma senha, cartão inteligente ou outro mecanismo de autenticação, e assim obtém acesso a vários recursos em máquinas diferentes. PKIs baseada em Single-Sign-On são indispensáveis dentro de um ambiente de nuvem, já que eles fornecem os meios para uma autenticação forte e transparente através de diferentes recursos físicos. SSO em conjunto com PKI aprimora e elimina a complexidade para processos de autorização e autenticação. Na prática, isso resulta na melhoria da segurança de toda a infraestrutura, incluindo a solução de outros problemas evidentes relacionados a segurança, pois um nível suficiente de usabilidade e segurança é garantido. A terceira parte confiável pode ser invocada para: •Baixo e Alto nível de confidencialidade. •Autenticação client/server. •Criação de domínios de segurança. •Separação de criptografia de dados. •Autorização baseada em certificado. V. AVALIAÇÃO Neste trabalho podemos encontrar uma solução de segurança para uma série de desafios em um ambiente de nuvem, usando um terceiro confiável. Confiança opera essencialmente de uma forma top-down, onde cada camada precisa confiar na camada imediatamente abaixo dela, e exige uma garantia de segurança a nível operacional, técnico, processual e legal, para poder permitir uma comunicação seguras entre eles ( Fig. 1 ). Fig.1 - Um usuário autentica-se em um serviço de nuvem usando o seu certificado pessoal. Um certificado confiável serve como um "passaporte" eletrônico confiável, que estabelece identidade, credenciais e as responsabilidades de uma entidade. A confiança pode ser vista como uma cadeia do usuário final, para o proprietário do aplicativo, que por sua vez, confia o provedor de infraestrutura (tanto a nível virtual ou físico de acordo com o modelo de serviço selecionado). Uma terceira parte confiável é capaz de fornecer a confiança necessária para garantir que as partes comunicantes sejam quem dizem ser e atendam aos requisitos de segurança necessários. Este processo é realizado através do processo de certificação. TTP é um facilitador de segurança ideal em um ambiente de nuvem distribuído em que as entidades pertencem aos domínios administrativos separados, sem o conhecimento prévio do outro, onde se fazem necessárias interações seguras. Um usuário final é necessário para usar o seu certificado digital pessoal, onde deve autenticarse com um serviço de nuvem e validar seus direitos de acesso a um recurso solicitado. Este certificado é usado em combinação com o certificado do fornecedor de serviços (PaS ou nível IAS) para criar uma conexão SSL segura entre eles. O provedor de aplicativo pode usar o seu próprio certificado para autenticar-se e realizar a comunicação com a nuvem, mas pode também usar esse certificado para criptografar e descriptografar os dados do aplicativo. Estes certificados podem ser melhorados para transportar informações sobre um usuário ou processo (certificados X.509 estendidos). No nível mais baixo o proprietário da infraestrutura de hardware pode fazer uso de um certificado digital para a comunicação segura entre os dispositivos e os servidores virtuais, mas também para fins de autenticação, se necessário. O gerenciamento das chaves é uma das questões críticas em infraestruturas de nuvem. A virtualização dos serviços obscurecem a identificação do local de armazenamento da chave física, desativando os mecanismos de proteção tradicionais. As chaves estão armazenadas e protegidas, principalmente, a um nível de infraestrutura de hardware. A solução proposta apela para criptografia, usando as PKIs especificamente, para garantir a autenticação, integridade e confidencialidade dos dados envolvidos nas comunicações. A TTP é encarregada de assegurar as características de segurança em um ambiente de nuvem, gerando uma malha de confiança entre as entidades envolvidas, formando federações de nuvens. Essa abordagem faz uso de uma combinação de criptografia de chave pública, a tecnologia Single-Sign-On e diretórios LDAP para identificar de forma segura e autenticar as entidades envolvidas. O modelo apresentado neste artigo oferece as vantagens de cada tecnologia apresenta que quando combinadas suprem suas deficiências. PKIs são capazes de transformar efetivamente os problemas de gestão de segurança da informação. Em última análise, o sucesso da solução proposta, como qualquer sistema de criptografia, é dependente de controlar o acesso à chaves privadas. Um ponto de atenção a ser observado é a criptografia constante e descriptografia de dados transportados pela rede, o que pode ter um forte impacto sobre a velocidade, induzindo o consumo adicional de processamento. solucionar vulnerabilidades reconhecidas no modelo tradicional de computação, mas suas características dinâmicas são capazes de impedir uma eficácia de contramedidas dos modelos de segurança tradicionais. Neste trabalho é possível identificar os princípios de design genéricos de um ambiente de nuvem que decorrem da necessidade de controlar as vulnerabilidades e ameaças relevantes. Para isso, foram adotadas abordagens de design de sistemas de informação e engenharia de software. A segurança em um ambiente de nuvem pode requerer um ponto de vista sistêmico, a partir do qual a segurança será construída com a confiança, mitigando e usando a proteção de um terceiro confiável. Uma combinação de PKI, LDAP e SSO pode resolver a maioria das ameaças identificadas em computação em nuvem como a integridade, confidencialidade, autenticidade e disponibilidade dos dados e das comunicações. A solução, apresenta um nível horizontal de serviço, disponível a todas as entidades envolvidas, que realizam uma malha de segurança através de federações e em que a confiança essencial pode ser mantida. VI. CONCLUSÃO Inevitavelmente a computação em nuvem vai agregar um excedente de sistemas de informação devido aos seus benefícios superam os defeitos. A computação em nuvem oferece arquitetura de implantação, com a capacidade para VIII. REFERÊNCIAS [01] Michael Armbrust et al. Above the Clouds: A Berkeley View of Cloud Computing. Technical report EECS-2009-28,BC Berkeley, http://www.eecs.berkeley.edu/Pubs/TechRpts/2009/ VII. TRABALHOS FUTUROS Embora os temas de terceiros confiáveis, SSO e PKIs não sejam novos a constante evolução da computação em nuvem faz com que a cada dia novas ameaças e estratégias apareçam para enfraquecer a segurança da informação nesse modelo ainda em desenvolvimento, portanto abaixo, seguem algumas sugestões de temas para futuras pesquisas: - Modelos de Implementação de Gerencia de Identidade em Nuvem - Modelos de Certificados simplificados para nuvens. - Modelos de criptografia para nuvem, com baixo consumo de recursos computacionais (rede, CPU, etc.) EECS-2009-28.html, Junho/2014 Feb 2009. Acessado [02] Amazon web services economics center. http://aws.amazon.com/economics/. Acessado Junho/2014 [03] Kaufman, L.M., "Data Security in the World of Cloud Computing", Security & Privacy, IEEE, Volume:7 Issue:4, 2009 [04] E. Naone, Technology overview, conjuring clouds, MIT Technology Review, July–August, 2009. [05] Yanpei Chen, Vern Paxson, Randy H. Katz, "What’s New About Cloud Computing Security?", University of California at Berkeley Technical Report No.UCB/EECS-2010-5, http://www.eecs.berkeley.edu/Pubs/TechRpts/2010/ EECS-2010-5.html, January 20, 2010 Acessado Junho/2014 [06] R. Sherman, Distributed systems security, Computers & Security 11 (1) (1992). [07] W Stallings, Cryptography and Network Security Principles and Practice, 5 Edtion. 2006 [08] D. Polemi, Trusted third party services for health care in Europe, Future Generation Computer Systems 14 (1998) 51–59. [09] VeriSign. Directories and public—key infrastructure (PKI), Directories and Public—Key Infrastructure, PKI. [10] Dimitrios Zissis, Dimitrios Lekkas, "Addressing cloud computing security issues", Future Generation Computer Systems, Volume 28, Issue 3, March 2012 [11] S. Shankland. HP’s Hurd dings cloud computing, IBM. CNET News. October 20, 2009. [12] Cloud computing risk assessment. European Network and Information Security Agency. November 20, 2009. [13] P. Mell and T. Grance. Effectively and securely using the cloud computing paradigm. National Institute of Standards and Technology. October 7, 2009.