Skip to content

newtoncw/unisgx

Repository files navigation

UniSGX Prototypes

Using Intel SGX to Protect Authentication Credentials in an Untrusted Operating System

Source code of the prototype presented in the paper Using Intel SGX to Protect Authentication Credentials in an Untrusted Operating System, presented at 23th IEEE Symposium on Computers and Communications (ISCC 2018).

Abstract

We present a novel password file protection scheme, which uses Intel SGX to protect authentication credentials in the PAM authentication framework, commonly used in UNIX systems. We defined and implemented an SGX-enabled version of the pam_unix.so authentication module, called UniSGX. This module uses an SGX enclave to handle the credentials informed by the user and to check them against the password file. To add an extra security layer, the password file is stored using SGX sealing. Different scenarios were implemented to evaluate the overhead posed by protected memory, sealed file, and the overall overhead.

Sources

  • UniSGX no seal: The authentication is done inside the enclave, but the original unprotected credentials file is used.

  • UniSGX: Runs the UniSGX module prototype, including enclave instantiation, sealed data, and hashed passwords.

  • UniSGX no hash: Runs the UniSGX module prototype, including enclave instantiation, sealed data, but using a credentials file with unhashed passwords.

Using a Shared SGX Enclave in the UNIX PAM Authentication Service

Source code of the prototype presented in the paper Using a Shared SGX Enclave in the UNIX PAM Authentication Service, presented at 14th Annual IEEE International Systems Conference (SysCon 2020).

Abstract

Using SGX enclaves usually incurs in a performance impact in the application execution. We propose an enclave sharing approach to reduce the performance overhead in scenarios where multiple enclaves handle the same data. To evaluate this approach, we implemented a SGX-secured OS authentication service. Three prototypes were built, considering distinct concerns about security and performance.

Sources

License

Licenced under the GPL-3.0 License. If you make any use of this code for academic purpose, you must cite the papers.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors