Trusted Systems in Untrusted Environments: Protecting Against Strong Attackers

Total Page:16

File Type:pdf, Size:1020Kb

Trusted Systems in Untrusted Environments: Protecting Against Strong Attackers Trusted Systems in Untrusted Environments: Protecting against Strong Attackers Vertrauenswürdige Systeme in nicht vertrauenswürdigen Umgebungen: Schutz vor starken Angreifern Der Technischen Fakultät der Friedrich-Alexander-Universität Erlangen-Nürnberg zur Erlangung des Doktorgrades Dr.-Ing. vorgelegt von Johannes Götzfried aus Amberg Als Dissertation genehmigt von der Technischen Fakultät der Friedrich-Alexander-Universität Erlangen-Nürnberg Tag der mündlichen Prüfung: 7. Dezember 2017 Vorsitzender des Promotionsorgans: Prof. Dr.-Ing. Reinhard Lerch Gutachter: Prof. Dr.-Ing. Felix Freiling Prof. Dr. Ir. Ingrid Verbauwhede Abstract In this thesis, we investigate possibilities of operating trusted systems within untrusted environments in the presence of strong attackers. We consider attackers with physical access to a system as well as root-level attackers which are able to execute code on the target system at the highest privilege level possible. Our proposed defense mechanisms range from hardware-based trusted computing architectures over hardware-assisted software solutions to pure software-based encryption schemes. First, we design two hardware-based trusted computing architectures for embedded devices, called Soteria and Atlas, which both protect against root-level attackers and focus on code and data confidentiality. At its heart, Soteria is a lightweight program-counter based memory access control extension which provides integrity, authenticity, and confidentiality guarantees for software modules. To guarantee the confidentiality of code at any given point in time against all software attacks, we design a scheme consisting of initially encrypted software modules and loader modules. Mutual integrity checks between software modules and the loader ensure that a software module is only decrypted if the system behaves with integrity. Atlas protects software modules with the help of an encryption unit placed between the cache and main memory. Because Atlas alone only guarantees confidentiality, but no integrity, it is usually combined with traditional memory protection mechanisms managed by the operating system. In case of a compromised operating system, however, Atlas still maintains confidentiality for protected modules. We then exploit existing hardware-based trusted computing architectures of general purpose devices by presenting two hardware-assisted software solutions built on top of them. However, we also demonstrate how secret information can be inferred from such an architecture if the attacker assumptions are violated. We leverage the Trusted Platform Module (TPM) to support the boot process for consumer devices in order to provide secure full disk encryption. In detail, we implement an authentication protocol which defends against traditional evil maid attacks with repeated physical access. Trust is bootstrapped from an external active USB drive which verifies the boot process by utilizing sealed nonces. The underlying principle is that the user and the computer are mutually authenticating each other with the help of this active USB drive. While with the TPM the whole software stack is part of the Trusted Computing Base (TCB), Intel’s Software Guard Extensions (SGX) allow to dynamically establish roots of trust on general purpose hardware. Although not being designed to work in kernel mode, we found a way to deploy SGX to shield kernel components from each other and user-mode applications, even in the event of a full system compromise. However, we also show that SGX is generally vulnerable against cache attacks by practically demonstrating an access driven cache attack on AES when running inside an SGX enclave. In fact, the attack surface for side-channels increases dramatically in the scenario of SGX due to the power of root-level attackers, for example, by exploiting the accuracy of Intel’s Performance Monitoring Counters (PMC) which are usually restricted to kernel code. Finally, we demonstrate that certain security guarantees can also be given when trust is not rooted in hardware by describing two software-based memory encryption solutions to mitigate memory disclosure attacks. RamCrypt targets the problem by providing mechanisms to transparently encrypt whole process address spaces and has been developed as an operating system kernel patch. It can be deployed and enabled on a per-process basis without recompiling user-mode applications. In every enabled process, data is only stored in cleartext for the moment it is processed, and otherwise stays encrypted in RAM. Because encrypting process address spaces is operating system specific, we also present HyperCrypt, a hypervisor-based solution which encrypts the entire kernel and user space while being transparent for the guest operating system and all applications running on top of it. i Zusammenfassung In der vorliegenden Arbeit untersuchen wir Möglichkeiten vertrauenswürdige Systeme innerhalb nicht vertrauenswürdiger Umgebungen in der Gegenwart starker Angreifer zu betreiben. Wir betrachten sowohl Angreifer mit physischem Zugriff auf ein System als auch Root-Level-Angreifer, die aufdem Zielsystem Code mit maximalen Berechtigungen ausführen können. Unsere Verteidigungsmechanis- men reichen von hardwarebasierten Trusted-Computing-Architekturen über hardwareunterstützte Softwarelösungen bis zu rein softwarebasierten Verschlüsselungsmaßnahmen. Zuerst entwerfen wir zwei hardwarebasierte Trusted-Computing-Architekturen für eingebettete Systeme, Soteria und Atlas genannt. Beide schützen gegen Root-Level-Angreifer, wobei der Fokus auf der Vertraulichkeit von Code und Daten liegt. Soteria ist im Herzen eine leichtgewichtige programmzählerbasierte Speicherzugriffskontrollerweiterung, die Integritäts-, Authentizitäts- und Vertraulichkeitsgarantien für Softwaremodule anbietet. Um die Vertraulichkeit von Code zu jeder Zeit gegen alle Software-Angriffe zu gewährleisten, konzipieren wir ein Schema bestehend aus anfangs verschlüsselten Softwaremodulen und Lademodulen. Gegenseitige Integritätsprüfungen zwischen Softwaremodulen und dem Lader sorgen dafür, dass ein Softwaremodul nur entschlüsselt wird, wenn das Gesamtsystem integer ist. Atlas schützt Softwaremodule mit Hilfe einer Verschlüs- selungseinheit zwischen Cache und Hauptspeicher. Weil Atlas selbst nur Vertraulichkeit jedoch keine Integrität garantiert, wird es in der Regel mit traditionellen vom Betriebssystem verwalteten Speicherschutzmechanismen kombiniert. Im Falle eines kompromittierten Betriebssystems erhält Atlas jedoch weiterhin die Vertraulichkeit für geschützte Module aufrecht. Als Nächstes nutzen wir bestehende hardwarebasierte Trusted-Computing-Architekturen von Endbe- nutzergeräten aus. Dazu präsentieren wir zwei hardwareunterstützte Softwarelösungen. Wir zeigen allerdings auch, wie geheime Informationen einer solchen Architektur gewonnen werden können, wenn die Angreiferannahmen verletzt sind. Wir nutzen das Trusted Platform Module (TPM) um den Bootvorgang für Verbrauchergeräte zu unterstützen und eine sichere Festplattenvollverschlüsselung bereitzustellen. Genauer gesagt implementieren wir ein Authentifizierungsprotokoll, das gegen traditionelle Evil-Maid-Angriffe mit wiederholtem physischem Zugriff schützt. Vertrauen wird dabei ausgehend von einem aktiven USB-Gerät aufgebaut, das den Bootvorgang unter der Verwendung von versiegelten Einmalnummern überprüft. Das zugrundeliegende Prinzip ist, dass sich der Benutzer und der Computer gegenseitig mit Hilfe dieses aktiven USB-Geräts authentifizieren. Während bei der Benutzung des TPM der gesamte Software-Stack Teil der Trusted Computing Base (TCB) ist, ermöglichen Intel’s Software Guard Extensions (SGX) dynamisch Vertrauensanker auf handelsübli- cher Hardware zu errichten. Obwohl SGX nicht zur Verwendung im Kernelmodus ausgelegt wurde, haben wir einen Weg gefunden SGX einzusetzen um Kernelkomponenten untereinander und gegen Usermode-Anwendungen auch im Falle einer vollständigen Systemkompromittierung abzuschotten. Wir zeigen allerdings auch, dass SGX im Allgemeinen anfällig gegen Cache-Angriffe ist, indem wir praktisch einen zugriffsgesteuerten Cache-Angriff gegen AES demonstrieren, während es inner- halb einer SGX-Enklave läuft. Tatsächlich vergrößert sich die Angriffsoberfläche für Seitenkanäle im Falle von SGX aufgrund der Mächtigkeit von Root-Level-Angreifern drastisch, zum Beispiel durch die Ausnutzung der Genauigkeit von Intel’s Performance Monitoring Counters (PMC), deren Verfügbarkeit üblicherweise auf Kernelcode beschränkt ist. Zuletzt demonstrieren wir, dass bestimmte Sicherheitsgarantien auch gegeben werden können, wenn das Vertrauen nicht in Hardware verankert ist, indem wir zwei softwarebasierte Speicherverschlüsse- lungslösungen vorstellen, die Angriffe auf den Hauptspeicher mildern. RamCrypt adressiert das Problem, indem es Mechanismen zur transparenten Verschlüsselung gesamter Prozessadressräume bereitstellt und wurde als Betriebssystem-Kernel-Patch entwickelt. Es kann pro Prozess ohne die Not- wendigkeit Usermode-Applikationen neu zu übersetzen eingesetzt und aktiviert werden. Für jeden aktivierten Prozess werden Daten nur so lange im Klartext gespeichert, wie sie verarbeitet werden, und verbleiben ansonsten verschlüsselt im RAM. Weil das Verschlüsseln von Prozessadressräumen betriebssystemspezifisch ist, präsentieren wir zusätzlich HyperCrypt, eine Hypervisor-basierte Lö- sung, die Kernel- und Userspace vollständig verschlüsselt, wobei sie transparent gegenüber dem Gastbetriebssystem und allen darauf laufenden Applikationen ist. ii Acknowledgments
Recommended publications
  • Trusted Platform Module (TPM) Quick Reference Guide
    Trusted Platform Module (TPM) Quick Reference Guide System builders/integrators should give this Guide to the system owners to assist them in enabling and activating the Trusted Platform Module. Warning of Potential Data Loss ..........................3 Trusted Platform Module (TPM) .........................5 System Requirements ........................................5 Security Precautions ..........................................5 Password Procedures ............................................. 6 Emergency Recovery File Back Up Procedures ........... 7 Hard Drive Image Backup Procedures....................... 7 Clear Text Backup (Optional) .................................. 7 Trusted Platform Module Ownership ..................8 Trusted Platform Module Software Installation..8 Enabling the Trusted Platform Module ...............8 Assuming Trusted Platform Module Ownership..9 Recovery Procedures ........................................10 How to Recover from a Hard Drive Failure ............... 10 How to Recover from a Desktop Board, coin battery or TPM Failure........................................... 10 Clearing Trusted Platform Module Ownership ...11 Support Links ....................................................12 INFORMATION IN THIS DOCUMENT IS PROVIDED IN CONNECTION WITH INTEL® PRODUCTS. NO LICENSE, EXPRESS OR IMPLIED, BY ESTOPPEL OR OTHERWISE, TO ANY INTELLECTUAL PROPERTY RIGHTS IS GRANTED BY THIS DOCUMENT. EXCEPT AS PROVIDED IN INTEL'S TERMS AND CONDITIONS OF SALE FOR SUCH PRODUCTS, INTEL ASSUMES NO LIABILITY WHATSOEVER,
    [Show full text]
  • Trusted Platform Module (TPM) TCG 1.2 / 2.0
    Trusted Platform Module (TPM) TCG 1.2 / 2.0 USER GUIDE Revision 1.20 The information in this user's guide has been carefully reviewed and is believed to be accurate. The vendor assumes no responsibility for any inaccuracies that may be contained in this document, and makes no commitment to update or to keep current the information in this manual, or to notify any person or organization of the updates. Please Note: For the most up-to-date version of this manual, please see our website at www.supermicro.com. Super Micro Computer, Inc. ("Supermicro") reserves the right to make changes to the product described in this manual at any time and without notice. This product, including software and documentation, is the property of Supermicro and/ or its licensors, and is supplied only under a license. Any use or reproduction of this product is not allowed, except as expressly permitted by the terms of said license. IN NO EVENT WILL SUPER MICRO COMPUTER, INC. BE LIABLE FOR DIRECT, INDIRECT, SPECIAL, INCIDENTAL, SPECULATIVE OR CONSEQUENTIAL DAMAGES ARISING FROM THE USE OR INABILITY TO USE THIS PRODUCT OR DOCUMENTATION, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. IN PARTICULAR, SUPER MICRO COMPUTER, INC. SHALL NOT HAVE LIABILITY FOR ANY HARDWARE, SOFTWARE, OR DATA STORED OR USED WITH THE PRODUCT, INCLUDING THE COSTS OF REPAIRING, REPLACING, INTEGRATING, INSTALLING OR RECOVERING SUCH HARDWARE, SOFTWARE, OR DATA. Any disputes arising between manufacturer and customer shall be governed by the laws of Santa Clara County in the State of California, USA. The State of California, County of Santa Clara shall be the exclusive venue for the resolution of any such disputes.
    [Show full text]
  • Introduction to Trusted Computing: TPM 101
    Introduction to Trusted Computing: TPM 101 Ariel Segall [email protected] Day 1 Approved for Public Release: 12-2749. Distribution unlimited Day 1 Approved for Public Release: 12-2749. Distribution unlimited 1 Ariel Segall [email protected] () TPM 101 / 1 License All materials are licensed under a Creative Commons \Share Alike" license. http://creativecommons.org/licenses/by-sa/3.0 Day 1 Approved for Public Release: 12-2749. Distribution unlimited 2 Ariel Segall [email protected] () TPM 101 / 1 What We'll Be Covering In this section: What is a TPM? What does it do? What's it good for? Some TPM myths (and the truths behind them) Why enterprises should care about TPMs All at a high level{ deep dive this afternoon. Day 1 Approved for Public Release: 12-2749. Distribution unlimited 3 Ariel Segall [email protected] () TPM 101 / 1 What is a TPM? Trusted Platform Module Inexpensive (<$1, usually) chip on almost all motherboards today Not in Macs Only some servers have them{ ask. Hardware basis for platform trust In secrets In platform state Combined with a Root of Trust for Measurement1 In platform identity Current version is 1.2 Unless otherwise specified, we'll always refer to 1.2 TPMs Previous version 1.1; next, 2.0. 1We'll get to these in a little while Day 1 Approved for Public Release: 12-2749. Distribution unlimited 4 Ariel Segall [email protected] () TPM 101 / 1 What's In a TPM? TPM Non−Volatile Memory Cryptographic Co−Processor Volatile Memory Execution Engine (Processor) Random Number Generator Day 1 Approved for Public Release: 12-2749.
    [Show full text]
  • Trusted Platforms UEFI, PI and TCG-Based Firmware
    White Paper by Intel Corporation and IBM Corporation Trusted Platforms UEFI, PI and TCG-based firmware Vincent J. Zimmer Intel Corporation Shiva R. Dasari Sean P. Brogan IBM September 2009 Executive Summary This document provides an overview of the interactions of the Trusted Computing Group (TCG) [TCG Overview], the firmware standards work within the Unified Extensible Firmware Interface (UEFI) Forum, and implementation practices of UEFI PI-based [UEFI Book][UEFI Shell Book][UEFI Overview] implementations. In addition, this paper will provide some use-cases and implementation examples of this technology in addition to the industry threats that motivate the design of this class of technology. This paper is mainly intended for Hardware, firmware, software, and BIOS engineers. But beyond this audience, some of the information in this paper will be valuable for IT decision makers, marketing, and other parties. The goal of the paper is to take away an understanding of the motivations behind trusted platform design, the terminology of trust, how to navigate the Trusted Computing Group set of specifications and technology that relate to platform, impact on platform firmware and UEFI, instances of deployment in the market, and some future possible directions for hardware and firmware. ii Table of Contents Overview ............................................................................................................2 Problems to solve ...........................................................................................3 Security architecture
    [Show full text]
  • Crypto Wars of the 1990S
    Danielle Kehl, Andi Wilson, and Kevin Bankston DOOMED TO REPEAT HISTORY? LESSONS FROM THE CRYPTO WARS OF THE 1990S CYBERSECURITY June 2015 | INITIATIVE © 2015 NEW AMERICA This report carries a Creative Commons license, which permits non-commercial re-use of New America content when proper attribution is provided. This means you are free to copy, display and distribute New America’s work, or in- clude our content in derivative works, under the following conditions: ATTRIBUTION. NONCOMMERCIAL. SHARE ALIKE. You must clearly attribute the work You may not use this work for If you alter, transform, or build to New America, and provide a link commercial purposes without upon this work, you may distribute back to www.newamerica.org. explicit prior permission from the resulting work only under a New America. license identical to this one. For the full legal code of this Creative Commons license, please visit creativecommons.org. If you have any questions about citing or reusing New America content, please contact us. AUTHORS Danielle Kehl, Senior Policy Analyst, Open Technology Institute Andi Wilson, Program Associate, Open Technology Institute Kevin Bankston, Director, Open Technology Institute ABOUT THE OPEN TECHNOLOGY INSTITUTE ACKNOWLEDGEMENTS The Open Technology Institute at New America is committed to freedom The authors would like to thank and social justice in the digital age. To achieve these goals, it intervenes Hal Abelson, Steven Bellovin, Jerry in traditional policy debates, builds technology, and deploys tools with Berman, Matt Blaze, Alan David- communities. OTI brings together a unique mix of technologists, policy son, Joseph Hall, Lance Hoffman, experts, lawyers, community organizers, and urban planners to examine the Seth Schoen, and Danny Weitzner impacts of technology and policy on people, commerce, and communities.
    [Show full text]
  • A Complete Bibliography of ACM Transactions on Computer Systems
    A Complete Bibliography of ACM Transactions on Computer Systems Nelson H. F. Beebe University of Utah Department of Mathematics, 110 LCB 155 S 1400 E RM 233 Salt Lake City, UT 84112-0090 USA Tel: +1 801 581 5254 FAX: +1 801 581 4148 E-mail: [email protected], [email protected], [email protected] (Internet) WWW URL: http://www.math.utah.edu/~beebe/ 10 August 2021 Version 1.75 Title word cross-reference Accelerating [BJS01]. Accelerator [CZL+15]. Accelerators [LAB+13]. Accent [FR86]. Access [AT83, LZCZ86, LP93, Smi84b, GB01]. arc [GS93]. N [SHG95, Mae85]. Access/Execute [Smi84b]. Accesses [AJ19, HY92, Kel00]. accessing [ACM04]. -Body [SHG95]. accounting [EV03]. accuracy [Jim05]. Accurate [GVM+11, NTW09]. Ace [RR99]. 11/780 [Cla83, CE85]. 1988 [ACM88]. Achieve [LLL+16]. ACM [Jha20]. ACM/SIGOPS [ACM88]. Action [Sch84]. + 2.6 [PTS 14]. 2011 [Mow12]. 2019 [MT20]. Actions [Ree83]. Activations [ABLL92]. active [SJS+00]. Activity 36 [Jha20]. [IRH86, MSB+06]. Ad [BYFK08, FKA10]. Adaptable [AC92]. Adaptation 4 [Jha20]. 432 [CGJ88, CCLP83]. [BS91, AD03, FS04]. Adaptive [ALHH08, AS95, MLS97, CT01]. Address 780 [Cla83, CE85]. [CLFL94, SV99]. Adrenaline [HZL+17]. Affected [IRH86]. Aggregate [AB83]. Abstract [Her86, SS84]. abstraction aggregation [JMB05]. Aggressive [CRL03, Kel00]. Abstractions [SKH+16]. 1 2 [GWSU13]. AI [RDB+21]. Air [CDD96]. al [HKS+83]. Arrays [SHCG94]. Article [Jha20]. Algorithm [Jha20]. Asbestos [VEK+07]. [Bad86, DC85, HBAK86, Lam87, Mae85, Assignments [BGM86]. Assistant Ray89, SK85, Zha91]. Algorithms [HLZ+16]. Assisting [KMG16]. [CM86, GD87, GLM91, KS91, KH92, LA93, Associative [SA95]. Astrolabe [VBV03]. MCS91, San87, Sau83a, Sau83b, TS89, KY04]. Asymmetric [SFKP12]. At-Most-Once allergies [QTZS07]. Allocation [LSW91]. ATC [MT20].
    [Show full text]
  • Revention of Coldboot Attack on Linux Systems Measures to Prevent Coldboot Attack
    Special Issue - 2017 International Journal of Engineering Research & Technology (IJERT) ISSN: 2278-0181 ICIATE - 2017 Conference Proceedings Prevention of Coldboot Attack on Linux Systems Measures to Prevent Coldboot Attack Siddhesh Patil Ekta Patel Nutan Dhange Information Technology, Atharva Information Technology, Atharva Assistant Professor College of Engineering College of Engineering Information Technology, Atharva Mumbai University Mumbai University College of Engineering Mumbai, India Mumbai, India Mumbai University Mumbai, India Abstract— Contrary to the popular belief, DDR type RAM boot attack techniques. We implement measures to ensure that data modules retain stored memory even after power is cut off. stays secure on system shutdown. Data security is critical for most Provided physical access to the cryptosystem, a hacker or a of the business and even home computer users. RAM is used to store forensic specialist can retrieve information stored in the RAM non-persistent information into it. When an application is in use, by installing it on another system and booting from a USB drive user-specific or application-specific data may be stored in RAM. to take a RAM dump. With adequate disassembly and analytic This data can be sensitive information like client information, tools, this information stored in the RAM dump can be payment details, personal files, bank account details, etc. All this deciphered. Hackers thrive on such special-case attack information, if fallen into wrong hands, can be potentially techniques to gain access to systems with sensitive information. dangerous. The goal of most unethical hackers / attackers is to An unencrypted RAM module will contain the decryption key disrupt the services and to steal information.
    [Show full text]
  • Pitx-APL V2.0
    USER GUIDE pITX-APL V2.0 Doc. Rev. 1.4 Doc-ID: 1065-6365 pITX-APL V2.0 – Rev. 1.4 This page has been intentionally left blank pITX-APL V2.0 – Rev. 1.4 PITX-APL V2.0 – USER GUIDE Disclaimer Kontron would like to point out that the information contained in this manual may be subject to alteration, particularly as a result of the constant upgrading of Kontron products. This document does not entail any guarantee on the part of Kontron with respect to technical processes described in the manual or any product characteristics set out in the manual. Kontron assumes no responsibility or liability for the use of the described product(s), conveys no license or title under any patent, copyright or mask work rights to these products and makes no representations or warranties that these products are free from patent, copyright or mask work right infringement unless otherwise specified. Applications that are described in this manual are for illustration purposes only. Kontron makes no representation or warranty that such application will be suitable for the specified use without further testing or modification. Kontron expressly informs the user that this manual only contains a general description of processes and instructions which may not be applicable in every individual case. In cases of doubt, please contact Kontron. This manual is protected by copyright. All rights are reserved by Kontron. No part of this document may be reproduced, transmitted, transcribed, stored in a retrieval system, or translated into any language or computer language, in any form or by any means (electronic, mechanical, photocopying, recording, or otherwise), without the express written permission of Kontron.
    [Show full text]
  • CIS 4360 Secure Computer Systems Attacks Against Boot And
    CIS 4360 Secure Computer Systems Attacks against Boot and RAM Professor Qiang Zeng Spring 2017 Previous Class • BIOS-MBR: Generation I system boot – What BIOS and MBR are? – How does it boot the system? // Jumping to MBR – How does multi-boot work? // Chain-loading • The limitations of BIOS and MBR – Disk, memory, file system, multi-booting, security, … • UEFI-GPT: Generation II system boot – What UEFI and GPT are? – How does it boot the system? // UEFI boot manager – How does multi-boot work? // separate dirs in ESP CIS 4360 – Secure Computer Systems 2 Limitations of BIOS-MBR • MBR is very limited – Support ~2TB disk only – 4 primary partitions at most (so four OSes at most) – A MBR can store only one boot loader • BIOS is very restrictive – 16-bit processor mode; 1MB memory space (little spare space to accommodate a file system driver) – Blindly executes whatever code on MBR CIS 4360 – Secure Computer Systems 3 UEFI vs. BIOS • Disk partitioning schemes – GPT (GUID Partition Table): part of UEFI spec.; to replace MBR – MBR supports disk size 232 x 512B = 2TB, while UEFI supports much larger disks (264 x 512B = 8,000,000,000 TB) – MBR supports 4 partitions, while GPT supports 128 • Memory space – BIOS: 20-bit addressing; UEFI: 32-bit or 64-bit • Pre-OS environment – BIOS only provides raw disk access, while UEFI supports the FAT file system (so you can use file names to read files) • Booting – BIOS supports boot through boot sectors (MBR and VBR) – UEFI provides a boot partition of hundreds of megabytes (and boot manager and secure boot) CIS 4360 – Secure Computer Systems 4 Previous Class How does dual-boo-ng of Linux and Windows work in UEFI-GPT? Each vendor has a separate directory storing its own boot loader code and configuraon files in the ESP (EFI System Par--on).
    [Show full text]
  • Self-Encrypting Deception: Weaknesses in the Encryption of Solid State Drives
    Self-encrypting deception: weaknesses in the encryption of solid state drives Carlo Meijer Bernard van Gastel Institute for Computing and Information Sciences School of Computer Science Radboud University Nijmegen Open University of the Netherlands [email protected] and Institute for Computing and Information Sciences Radboud University Nijmegen Bernard.vanGastel@{ou.nl,ru.nl} Abstract—We have analyzed the hardware full-disk encryption full-disk encryption. Full-disk encryption software, especially of several solid state drives (SSDs) by reverse engineering their those integrated in modern operating systems, may decide to firmware. These drives were produced by three manufacturers rely solely on hardware encryption in case it detects support between 2014 and 2018, and are both internal models using the SATA and NVMe interfaces (in a M.2 or 2.5" traditional form by the storage device. In case the decision is made to rely on factor) and external models using the USB interface. hardware encryption, typically software encryption is disabled. In theory, the security guarantees offered by hardware encryp- As a primary example, BitLocker, the full-disk encryption tion are similar to or better than software implementations. In software built into Microsoft Windows, switches off software reality, we found that many models using hardware encryption encryption and completely relies on hardware encryption by have critical security weaknesses due to specification, design, and implementation issues. For many models, these security default if the drive advertises support. weaknesses allow for complete recovery of the data without Contribution. This paper evaluates both internal and external knowledge of any secret (such as the password).
    [Show full text]
  • Low-Cost Mitigation Against Cold Boot Attacks for an Authentication Token
    Low-cost Mitigation against Cold Boot Attacks for an Authentication Token Ian Goldberg?1, Graeme Jenkinson2, and Frank Stajano2 1 University of Waterloo (Canada) 2 University of Cambridge (United Kingdom) Abstract. Hardware tokens for user authentication need a secure and usable mechanism to lock them when not in use. The Pico academic project proposes an authentication token unlocked by the proximity of simpler wearable devices that provide shares of the token’s master key. This method, however, is vulnera- ble to a cold boot attack: an adversary who captures a running Pico could extract the master key from its RAM and steal all of the user’s credentials. We present a cryptographic countermeasure—bivariate secret sharing—that protects all the credentials except the one in use at that time, even if the token is captured while it is on. Remarkably, our key storage costs for the wearables that supply the cryp- tographic shares are very modest (256 bits) and remain constant even if the token holds thousands of credentials. Although bivariate secret sharing has been used before in slightly different ways, our scheme is leaner and more efficient and achieves a new property—cold boot protection. We validated the efficacy of our design by implementing it on a commercial Bluetooth Low Energy development board and measuring its latency and energy consumption. For reasonable choices of latency and security parameters, a standard CR2032 button-cell battery can power our prototype for 5–7 months, and we demonstrate a simple enhancement that could make the same battery last for over 9 months.
    [Show full text]
  • Model Driven Scheduling for Virtualized Workloads
    Model Driven Scheduling for Virtualized Workloads Proefschrift voorgelegd op 28 juni 2013 tot het behalen van de graad van Doctor in de Wetenschappen – Informatica, bij de faculteit Wetenschappen, aan de Universiteit Antwerpen. PROMOTOREN: prof. dr. Jan Broeckhove dr. Kurt Vanmechelen Sam Verboven RESEARCH GROUP COMPUTATIONAL MODELINGAND PROGRAMMING Dankwoord Het behalen van een doctoraat is een opdracht die zonder hulp onmogelijk tot een goed einde kan gebracht worden. Gelukkig heb ik de voorbije jaren de kans gekregen om samen te werken met talrijke stimulerende collega’s. Stuk voor stuk hebben zij bijgedragen tot mijn professionele en persoonlijke ontwikkeling. Hun geduldige hulp en steun was essentieel bij het overwinnen van de vele uitdagingen die met een doctoraat gepaard gaan. Graag zou ik hier dan ook enkele woorden van dank neerschrijven. Allereerst zou ik graag prof. dr. Jan Broeckhove en em. prof. dr. Frans Arickx bedanken om mij de kans te geven een gevarieerde en boeiend academisch traject te starten. Bij het beginnen van mijn doctoraat heeft Frans mij niet alleen geholpen om een capabel onderzoeker te worden, ook bij het lesgeven heeft hij mij steeds met raad en daad bijgestaan. Na het emiraat van Frans heeft Jan deze begeleiding overgenomen en er voor gezorgd dat ik het begonnen traject ook succesvol kon beeïndigen. Beiden hebben ze mij steeds grote vrijheid gegeven in mijn zoektocht om interessante onderzoeksvragen te identificeren en beantwoorden. Vervolgens zou ik graag dr. Peter Hellinckx en dr. Kurt Vanmechelen bedanken voor hun persoonlijke en vaak intensieve begeleiding. Zelfs voor de start van mijn academische carrière, bij het schrijven van mijn Master thesis, heeft Peter mij klaar- gestoomd voor een vlotte start als onderzoeker.
    [Show full text]