Moritz Schneider 0001

dblp:155/4732-1 · DBLP profile ↗
← Back
7ranked-venue papers
1as first author
5since 2021 · last 2025
0000-0002-8069-9848ORCID · conflict

Domains — the database's venue-derived domains; a paper can count in several

Security and privacy · 5 · 1 first-author · 3 since 2021Systems, architecture and hardware · 2 · 2 since 2021Software engineering, systems software and programming languages · 1 · 1 since 2021
YearPublicationVenuePosition
2025 Breaking Bad: How Compilers Break Constant-Time Implementations
Moritz Schneider 0001, Daniele Lain, Ivan Puddu, Nicolas Dutly, Srdjan Capkun
AsiaCCS1
2024 On (the Lack of) Code Confidentiality in Trusted Execution Environments
abstract
Trusted Execution Environments (TEEs) have been proposed as a solution to protect code confidentiality in scenarios where computation is outsourced to an untrusted operator. We study the resilience of such solutions to side-channel attacks in two commonly deployed scenarios: when the confidential code is a native binary that is shipped and executed within a TEE and when the confidential code is an intermediate representation (IR) executed on top of a runtime within a TEE. We show that executing IR code such as WASM bytecode on a runtime executing in a TEE leaks most IR instructions with high accuracy and therefore reveals the confidential code. Contrary to IR execution, native execution is much less susceptible to leakage and largely resists even the most powerful side-channel attacks. We evaluate native execution leakage in Intel SGX and AMD SEV and experimentally demonstrate end-to-end instruction extraction on Intel SGX, with WASM bytecode as IR executed within two popular WASM runtimes: WAMR and wasmi. Our experiments show that IR code leakage from such systems is practical and therefore question the security claims of several commercial solutions which rely on TEEs+WASM for code confidentiality.
Ivan Puddu, Moritz Schneider 0001, Daniele Lain, Stefano Boschetto, Srdjan Capkun
SP2
2023 Systematic Prevention of On-Core Timing Channels by Full Temporal Partitioning
abstract
Microarchitectural timing channels enable unwanted information flow across security boundaries, violating fundamental security assumptions. They leverage timing variations of several state-holding microarchitectural components and have been demonstrated across instruction set architectures and hardware implementations. Analogously to memory protection, (Ge et al. 2019) have proposedtime protectionfor preventing information leakage via timing channels. They also showed that time protection calls for hardware support. This work leverages the open and extensible RISC-V instruction set architecture (ISA) to introduce the temporal fence instructionfence.t, which provides the required mechanisms by clearing vulnerable microarchitectural state and guaranteeing a history-independent context-switch latency. We propose and discuss three different implementations offence.tand implement them on an experimental version of the seL4 microkernel (Klein et al. 2014) and CVA6, an open-source, in-order, application class, 64-bit RISC-V core (Zaruba and Benini 2019). We find that a complete, systematic, ISA-supported erasure of all non-architectural core components is the most effective implementation while featuring a low implementation effort, a minimal performance overhead of less than 1%, and negligible hardware costs.
Nils Wistoff, Moritz Schneider 0001, Frank K. Gürkaynak, Gernot Heiser, Luca Benini
IEEE Trans. Computers2
2021 Microarchitectural Timing Channels and their Prevention on an Open-Source 64-bit RISC-V Core
abstract
Microarchitectural timing channels use variations in the timing of events, resulting from competition for limited hardware resources, to leak information in violation of the operating system's security policy. Such channels also exist on a simple in-order RISC-V core, as we demonstrate on the open-source RV64GC Ariane core. Time protection, recently proposed and implemented in the seL4 microkernel, aims to prevent timing channels, but depends on a controlled reset of microarchitectural state. Using Ariane, we show that software techniques for performing such a reset are insufficient and highly inefficient. We demonstrate that adding a single flush instruction is sufficient to close all five evaluated channels at negligible hardware costs, while requiring only minor modifications to the software stack.
Nils Wistoff, Moritz Schneider 0001, Frank K. Gürkaynak, Luca Benini, Gernot Heiser
DATE2
2021 Frontal Attack: Leaking Control-Flow in SGX via the CPU Frontend
Ivan Puddu, Moritz Schneider 0001, Miro Haller, Srdjan Capkun
USENIX Security Symposium2
2019 BITE: Bitcoin Lightweight Client Privacy using Trusted Execution
Sinisa Matetic, Karl Wüst, Moritz Schneider 0001, Kari Kostiainen, Ghassan Karame, Srdjan Capkun
USENIX Security Symposium3
2018 DelegaTEE: Brokered Delegation Using Trusted Execution Environments
Sinisa Matetic, Moritz Schneider 0001, Andrew Miller 0001, Ari Juels, Srdjan Capkun
USENIX Security Symposium2