Secure Authentication Mechanisms for the Management Interface in Cloud Computing Environments
Total Page:16
File Type:pdf, Size:1020Kb
UNIVERSITY OF BEIRA INTERIOR Engineering Secure Authentication Mechanisms for the Management Interface in Cloud Computing Environments Liliana Filipa Baptista Soares Dissertation Submitted in Partial Fulfillment of the Requirement for the Degree of Master of Science in Computer Science and Engineering (2nd Cycle Studies) Supervised by Prof. Dr. Pedro Ricardo Morais Inácio Covilhã, October 2013 ii To my beloved family, especially to my grandparents. iv Acknowledgements The endurance to overcome obstacles or predisposed objectives in life depends on how each one envisages them. It is up to each one to extract the most valuable lessons from each journey and transform them into knowledge. Without the guidance and support of very particular persons, it would have not been possible to accomplish this dissertation and many lessons would have not been learned. I hereby thank my mother and father, to whom I am mostly grateful, for helping me to achieve my goals, particularly those of my academic quest. I would like to thank my sister, Cátia, for her immeasurable support, and my grandparents, for always demonstrating their love and will to live. I am also grateful to my supervisor, Prof. Dr. Pedro Ricardo Morais Inácio, not only for the help, charisma and readiness he demonstrated to complete this stage, but also for being resourceful in aiding throughout other steps of my professional life. I also acknowledge the Multimedia Signal Processing – Covilhã Group at the Instituto de Telecomunicações, which hosted this dis- sertation work and the final project of my first degree, and the research folk in it, particularly Miguel Neto for lending me a smartcard reader temporarily. Last, but not least, I acknowledge my friends for their strength. Foremost, I would like to express my gratitude to Diogo, who always knew where and how to be present in the most important moments of my life in recent years. Thank you all. Liliana Filipa Baptista Soares v vi “Proving that I am right would be admitting that I could be wrong.” Pierre-Augustin de Beaumarchais (1732–1799) vii viii Resumo Nos últimos anos, a expressão computação na nuvem tem sido tema de discussão. A indústria adotou esta tecnologia massivamente enquanto que a academia se está a focar em melhorá-la, e a qual tem vindo a evoluir rapidamente. O paradigma da computação na nuvem consiste em adotar soluções de fornecedores de computação na nuvem, que são hospedadas nalgum centro de dados. Os clientes tornam-se, portanto, dependentes dessas (terceiras) entidades, já que estas ficam envolvidas nos seus negócios ao serem responsáveis pelas tecnologias de informação hospedadas em uma ou mais nuvens. Isto implica que os clientes migrem as suas infraestruturas de tecnologias de informação e serviços locais para essas nuvens, localizadas fora das suas instalações. Os serviços e infraestruturas que podem ser deslocalizados incluem, mas não estão limitados a, serviços de e-mail, aplicações web, bases de dados, ou servidores completos que passam a ser encapsulados em serviços acedidos via Internet. Como vantagens, as nuvens oferecem capacidades de armazenamento, processamento e rede de uma forma escalável e elástica, à medida que o cliente quer e de uma maneira automática, ao seguir o modelo de negócio de pagamento por utilização. Isto beneficia bastante os clientes, permitindo-lhes que se foquem nos seus negócios, abstraindo-os das infraestruturas e problemas relacionados com tecnologias de informação. Os serviços fornecidos pelas nuvens encapsulam-se normalmente num dos três principais mo- delos de fornecimento seguintes: Infraestrutura-como-um-Serviço (IaaS), Plataforma-como-um- -Serviço (PaaS), e Software-como-um-Serviço (SaaS). Estes são os alicerces para soluções de Qualquer-coisa-como-um-Serviço (XaaS) que podem ser customizadas consoante os requisitos dos clientes. IaaS mistura técnicas novas de virtualização com tecnologias atuais que permite correr sistemas operativos ou mesmo construir centros de dados virtuais. PaaS permite desen- volver aplicações de uma forma consistente através das plataformas da nuvem para correrem sobre elas, enquanto que o SaaS permite usufruir de software previamente desenvolvido, tendo o cliente pouco controlo sobre o mesmo. Estes modelos podem ser implementados sobre nuvens privadas ou públicas, ou então sobre uma versão híbrida das duas. O modelo público significa que os serviços subscritos são acedidos através da Internet e a partir de qualquer ponto do globo. As nuvens IaaS têm tipicamente uma interface de gestão para controlo de Máquinas Virtuais (VMs) e para organizar um centro de dados virtual, enquanto que as VMs são acedidas por protocolos de acesso remoto. A autenticação para estas interfaces de gestão é, portanto, de grande importância, visto que estão expostas aos perigos da Internet, contrariamente às ferramentas tradicionais de gestão que são colocadas dentro do perímetro de confiança de uma empresa em redes convencionais. Esta dissertação identifica em primeiro lugar tais problemas de segurança ao rever as abordagens existentes de autenticação, mostrando as suas vantagens e fraquezas. Por exemplo, uma única conta comprometida constitui um risco muito maior quando comparado a contas tradicionais de páginas web, porque os atacantes ganham controlo sobre ix as virtuais e potencialmente também sobre configurações de segurança. Isto pode resultar em perdas de dados e de dinheiro para ambos os clientes e os fornecedores de computação na nuvem, dado que um atacante malicioso consegue terminar instâncias de virtuais que possam correr aplicações criticas para o negócio do cliente. O problema também reside no facto de que autenticação por meio de palavra-passe estática tem vindo, ao longo do tempo, a ficar mais degradada, sendo hoje em dia considerada inse- gura para utilização. As inúmeras fugas de dados do passado forneceram um conhecimento chave para compreender os hábitos dos utilizadores na escolha de palavras-passe, permitindo a atacantes compilar grandes listas de palavras-passe e desenvolver algoritmos eficientes para descobrir palavras-passe. As ameaças inerentes à utilização da Internet para aceder à inter- face de administração também agravam o problema. O ciberespaço é cada vez mais utilizado de forma abusiva e violenta com a ciberguerra, a cibercriminalidade, e a vigilância em massa afetando todos os utilizadores. Por exemplo, os autores de malware estão a focar-se nas pla- taformas móveis já que é para elas que a tecnologia evoluiu e as quais os utilizadores utilizam largamente. Como resposta, a indústria e a academia viraram as suas atenções para esque- mas de autenticação alternativos baseados em Sistemas de Login Único (SSO) e Autenticação por Múltiplos Fatores (MFA). O SSO vem aliviar o fardo da gestão de múltiplas credenciais para aplicações na nuvem, enquanto que o MFA adiciona camadas adicionais de segurança em troca de uma quebra na usabilidade e um aumento no custo. Estas novas abordagens implementam esquemas de autenticação que recorrem a mecanismos da criptografia assimétrica e simétrica, por exemplo, e às novas tecnologias, sobretudo associadas ao móvel. A literatura contém várias contribuições nesta linha de investigação. No entanto, estas ainda não prestam total importân- cia às infraestruturas inerentes e às ameaças atuais. O âmbito desta dissertação está restrito aos tópicos de computação na nuvem e de autenticação na interface de administração de um cliente, estudando como este novo modelo de computação funciona, particularmente com ênfase na segurança, e revendo métodos de autenticação de forma ortogonal ao modelo de computação na nuvem e à perspetiva da segurança. Dado que as interfaces de gestão da nuvem são inerentemente mais arriscadas por estarem expostas e partindo do estudo inicial, esta dissertação propõe um novo modelo de autenticação, ideal para implementar nas fronteiras das redes de nuvens, e capaz de mediar o acesso de utilizadores aos serviços subscritos enquanto remenda as ameaças de segurança que emancipam da Internet. Este modelo funciona como um ponto central de segurança onde podem ser forçados controlos de segurança de qualquer tipo e a sua maior vantagem provém do facto de recorrer à tecnologia própria da computação na nuvem, nomeadamente virtualização, das quais herda robustez e elasticidade. Um protótipo que mostra como o modelo pode ser implementado é ainda descrito nesta dissertação. Este protótipo usa o cartão de cidadão Português para conseguir autenticação forte e mútua através de certificados de chave pública, de forma simples e transparente para x o utilizador. O protótipo demonstra a funcionalidade do modelo proposto e como pode ser implementado utilizado a tecnologia de computação na nuvem, de forma a esconder a interface interna de ameaças externas. Recomendações para implementar métodos de autenticação são também descritos, fluindo a discussão de métodos clássicos para autenticação para abordagens tendenciais de autenticação. Palavras-chave Autenticação, Autenticação por Múltiplos Fatores, Computação na Nuvem, Criptografia de Chave Pública, Interfaces de Gestão, Nuvens Públicas, Segurança xi xii Extended Abstract in Portuguese Introdução Este capítulo, escrito na língua Portuguesa, condensa as ideias principais discutidas ao longo do corpo desta dissertação. De seguida, são brevemente delineados o seu enquadramento, a descrição do problema e os objetivos propostos. Posteriormente, as contribuições principais do trabalho representado por esta dissertação são enumeradas e brevemente descritas. Os conceitos