Proteção de dados de autenticação em um sistema operacional usando enclaves SGX

Detalhes bibliográficos
Autor(a) principal: Condé, Rafael Campra Reis
Data de Publicação: 2017
Tipo de documento: Dissertação
Idioma: por
Título da fonte: Repositório Institucional da UFPR
Texto Completo: http://hdl.handle.net/1884/53489
Resumo: Orientador : Carlos Alberto Maziero
id UFPR_fb37a16417ab32df738cc27ccd54cb8f
oai_identifier_str oai:acervodigital.ufpr.br:1884/53489
network_acronym_str UFPR
network_name_str Repositório Institucional da UFPR
repository_id_str 308
spelling Condé, Rafael Campra ReisUniversidade Federal do Paraná. Setor de Ciências Exatas. Programa de Pós-Graduação em InformáticaMaziero, Carlos Alberto2018-06-21T11:58:48Z2018-06-21T11:58:48Z2017http://hdl.handle.net/1884/53489Orientador : Carlos Alberto MazieroDissertação (mestrado) - Universidade Federal do Paraná, Setor de Ciências Exatas, Programa de Pós-Graduação em Informática. Defesa: Curitiba, 11/12/2017Inclui referências : p. 91-95Resumo: Quando se trata sobre segurança computacional alguns aspectos devem ser observados. Um principio importante e manter a base de computação confiável (TCB) a menor possível. Desta forma a superfície de ataque fica reduzida, o que restringe as possibilidades de ataque do adversário e aumenta a segurança do sistema. Mesmo mantendo uma TCB pequena, não existe técnica de segurança que ofereça garantia de proteção contra qualquer tipo de adversário. Por este motivo, aplicações que requerem alto nível de sigilo devem dispor de um esquema de proteção projetado em diversas de camadas de segurança, de forma que o conteúdo sensível não seja comprometido mesmo considerando o caso do adversário explorar vulnerabilidades e violar uma das camadas de proteção. Em 2015 a Intel lançou em seus processadores a tecnologia Software Guard Extensions (SGX), que introduz um novo conjunto de instruções de CPU que permite que a aplicação utilize uma região encriptada de memoria, denominada enclave, que e protegida inclusive de códigos com alto nível de privilegio como do kernel e do sistema operacional. Junto ao SGX, a Intel prove, ainda, um mecanismo de criptografia de dados, denominado selagem, onde operações de cifragem ou decifragem são possíveis somente dentro dos enclaves. Em geral aplicações comuns tem em sua TCB além do próprio código, partes do sistema operacional, kernel e/ou hipervisor. O SGX proporciona a possibilidade de reduzir a TCB apenas a CPU e a fração sensível da aplicação, que será colocada dentro da região segura do enclave. Ainda, o SGX torna possível, através do processo de selagem, a adição de uma camada extra de segurança no armazenamento de informações sensíveis. Este trabalho propõe uma arquitetura de proteção de arquivos de senha valendo-se das possibilidades trazidas pela tecnologia Intel SGX e implementa, na forma de uma prova de conceito, um modulo de autenticação para o framework PAM do sistema operacional Linux, baseado no modulo pam_unix.so, que utiliza como referencia de autenticação um arquivo de credenciais protegido. Neste esquema o arquivo de senhas e armazenado selado através do SGX e todo o processo de validação de usuário e senha para autenticação e realizado seguramente dentro do enclave. E senso comum que segurança e desempenho em geral caminham em direções opostas, assim já era esperado custo para se trabalhar com regiões de memoria e arquivos encriptados. No entanto, o hardware SGX foi projetado para realizar operações criptográficas de maneira otimizada de forma a reduzir os impactos de desempenho. Usando um arquivo de credenciais de 500KB o tempo esperado para realização da autenticação aumentou de 1.4ms, no modulo original, para 27.1ms no protótipo implementado. O impacto no desempenho não e suficientemente grande para ser percebido pelo usuário, o que mostra que a solução e adequada para a finalidade proposta. A arquitetura apresentada neste trabalho também pode ser aplicada em outros sistemas de autenticação. Palavras-chave: Autenticação, Pluggable Authentication Module, PAM, Software Guard Extensions, SGX, Enclave, Criptografia, Proteção de credenciais.Abstract: When it comes to computational security, some aspects must be observed. An important principle is to maintain the trusted computing base (TCB) as small as possible. With a reduced attack surface, attack possibilities are restricted and an improvement in the system security is achieved. Even keeping the TCB small, there is no security technique that guarantees protection against any type of adversary. For this reason, when it comes to applications that require high level of security, it is desirable that the protection scheme be designed with several layers of security. Thus, sensitive content will not be compromised, even considering that an adversary might find a vulnerability and violate some of the protection layers. In 2015, Intel released the Software Guard Extensions (SGX) technology in its processors, which introduces of a new set of CPU instructions that allows the application to allocate a private memory region, called enclave, that is protected even from high-level privileged kernel and operating system processes. Along with SGX, Intel also provided a mechanism of data encryption, called sealing, where encryption and decryption operations are possible only within enclaves. Usually, non-SGX applications include in its TCB not only the application code itself, but and also parts of the operating system, kernel and hypervisor. Thus SGX provides the possibility of reducing the TCB to just the CPU and to the sensitive fraction of the application, which is safely placed inside the enclave. In addition, SGX makes it possible to add an extra layer of security to sensitive information storage through the sealing process. This document presents a novel passwords file protection architecture leveraging IntelR SGX deliveries and implements, as a proof of concept, an authentication module for the Linux PAM framework based on pam_unix.so module. In this scheme, an extra layer of security is applied to the password file, by storing it sealed by the SGX mechanism. All user and password checking for authentication is securely done within the enclave. It is common sense that safety and performance in general walk in opposite directions. Obviously a cost was expected to work with memory regions and encrypted files. SGX hardware is designed to perform cryptographic operations efficiently to reduce performance impacts. Using a 500KB credential file the expected time to perform the authentication increased from 1.4ms in the original module to 27.1ms in the prototype. Despite the overhead the result is perfectly suitable for the proposed application. Finally, performance impacts were quantified due to the use of SGX. The architecture presented in this scheme is also worthy to many other authentication system. Keywords: Authentication, Pluggable Authentication Module, PAM, Software Guard Extensions, SGX, Enclave, Credencial file protection.100 p. : il.application/pdfDisponível em formato digitalCiência da computaçãoProteção de dadosRedes de computação - Medidas de segurançaCriptografia de dados (Computação)TesesProteção de dados de autenticação em um sistema operacional usando enclaves SGXinfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesisporreponame:Repositório Institucional da UFPRinstname:Universidade Federal do Paraná (UFPR)instacron:UFPRinfo:eu-repo/semantics/openAccessORIGINALR - D - RAFAEL CAMPRA REIS CONDE.pdfapplication/pdf3690596https://acervodigital.ufpr.br/bitstream/1884/53489/1/R%20-%20D%20-%20RAFAEL%20CAMPRA%20REIS%20CONDE.pdffd4d494350eb62657fa7a4398aa38cc7MD51open access1884/534892018-06-21 08:58:49.053open accessoai:acervodigital.ufpr.br:1884/53489Repositório de PublicaçõesPUBhttp://acervodigital.ufpr.br/oai/requestopendoar:3082018-06-21T11:58:49Repositório Institucional da UFPR - Universidade Federal do Paraná (UFPR)false
dc.title.pt_BR.fl_str_mv Proteção de dados de autenticação em um sistema operacional usando enclaves SGX
title Proteção de dados de autenticação em um sistema operacional usando enclaves SGX
spellingShingle Proteção de dados de autenticação em um sistema operacional usando enclaves SGX
Condé, Rafael Campra Reis
Ciência da computação
Proteção de dados
Redes de computação - Medidas de segurança
Criptografia de dados (Computação)
Teses
title_short Proteção de dados de autenticação em um sistema operacional usando enclaves SGX
title_full Proteção de dados de autenticação em um sistema operacional usando enclaves SGX
title_fullStr Proteção de dados de autenticação em um sistema operacional usando enclaves SGX
title_full_unstemmed Proteção de dados de autenticação em um sistema operacional usando enclaves SGX
title_sort Proteção de dados de autenticação em um sistema operacional usando enclaves SGX
author Condé, Rafael Campra Reis
author_facet Condé, Rafael Campra Reis
author_role author
dc.contributor.other.pt_BR.fl_str_mv Universidade Federal do Paraná. Setor de Ciências Exatas. Programa de Pós-Graduação em Informática
dc.contributor.author.fl_str_mv Condé, Rafael Campra Reis
dc.contributor.advisor1.fl_str_mv Maziero, Carlos Alberto
contributor_str_mv Maziero, Carlos Alberto
dc.subject.por.fl_str_mv Ciência da computação
Proteção de dados
Redes de computação - Medidas de segurança
Criptografia de dados (Computação)
Teses
topic Ciência da computação
Proteção de dados
Redes de computação - Medidas de segurança
Criptografia de dados (Computação)
Teses
description Orientador : Carlos Alberto Maziero
publishDate 2017
dc.date.issued.fl_str_mv 2017
dc.date.accessioned.fl_str_mv 2018-06-21T11:58:48Z
dc.date.available.fl_str_mv 2018-06-21T11:58:48Z
dc.type.status.fl_str_mv info:eu-repo/semantics/publishedVersion
dc.type.driver.fl_str_mv info:eu-repo/semantics/masterThesis
format masterThesis
status_str publishedVersion
dc.identifier.uri.fl_str_mv http://hdl.handle.net/1884/53489
url http://hdl.handle.net/1884/53489
dc.language.iso.fl_str_mv por
language por
dc.relation.pt_BR.fl_str_mv Disponível em formato digital
dc.rights.driver.fl_str_mv info:eu-repo/semantics/openAccess
eu_rights_str_mv openAccess
dc.format.none.fl_str_mv 100 p. : il.
application/pdf
dc.source.none.fl_str_mv reponame:Repositório Institucional da UFPR
instname:Universidade Federal do Paraná (UFPR)
instacron:UFPR
instname_str Universidade Federal do Paraná (UFPR)
instacron_str UFPR
institution UFPR
reponame_str Repositório Institucional da UFPR
collection Repositório Institucional da UFPR
bitstream.url.fl_str_mv https://acervodigital.ufpr.br/bitstream/1884/53489/1/R%20-%20D%20-%20RAFAEL%20CAMPRA%20REIS%20CONDE.pdf
bitstream.checksum.fl_str_mv fd4d494350eb62657fa7a4398aa38cc7
bitstream.checksumAlgorithm.fl_str_mv MD5
repository.name.fl_str_mv Repositório Institucional da UFPR - Universidade Federal do Paraná (UFPR)
repository.mail.fl_str_mv
_version_ 1801860636909502464