Jan Tobias Mühlberg

dblp:84/4044 · DBLP profile ↗
← Back
30ranked-venue papers
5as first author
15since 2021 · last 2026
0000-0001-5035-0576ORCID · verified

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

Security and privacy · 19 · 2 first-author · 10 since 2021Software engineering, systems software and programming languages · 6 · 2 first-author · 1 since 2021Computer networks · 2 · 2 since 2021Systems, architecture and hardware · 1 · 1 since 2021Human-computer interaction and ubiquitous computing · 1 · 1 since 2021Theory of computation · 1 · 1 first-authorApplied, interdisciplinary, general and emerging computing · 1 · 1 since 2021
YearPublicationVenuePosition
2026 LiReS IDS: A Lightweight, Real-time, and Secure Intrusion Detection System for RISC-V Edge Devices
Songxuan Liu, Qingyu Zeng 0001, Jan Tobias Mühlberg, Yuko Hara-Azumi
ICC3
2025 Do We Still Need Canaries in the Coal Mine? Measuring Shadow Stack Effectiveness in Countering Stack Smashing
Hugo Depuydt, Merve Gülmez, Thomas Nyman, Jan Tobias Mühlberg
ARES (2)4
2025 Systematic Assessment of Cache Timing Vulnerabilities on RISC-V Processors
Cédrick Austa, Jan Tobias Mühlberg, Jean-Michel Dricot
ESORICS (3)2
2025 Mon CHERI: Mitigating Uninitialized Memory Access with Conditional Capabilities
abstract
Up to 10% of memory-safety vulnerabilities in languages like C and C++ stem from uninitialized variables. This work addresses the prevalence and lack of adequate software mitigations for uninitialized memory issues, proposing architectural protections in hardware. Capability-based addressing, such as the University of Cambridge's CHERI, mitigates many memory defects, including spatial and temporal safety violations at an architectural level. CHERI, however, does not handle undefined behavior from uninitialized variables. We extend the CHERI capability model to include “conditional capabilities”, enabling memory-access policies based on prior operations. This allows enforcement of policies that satisfy memory-safety objectives such as “no reads to memory without at least one prior write” (Write-before-Read). We present our architecture extension, compiler support, and detailed evaluation of our approach on the QEMU full-system simulator and a modified FPGA-based CHERI-RISCV softcore. Our evaluation shows conditional capabilities are practical, with high detection accuracy while adding a small (≈3.5%) overhead which is comparable to the cost of baseline CHERI capabilities.
Merve Gülmez, Håkan Englund, Jan Tobias Mühlberg, Thomas Nyman
SP3
2024 An Improved PUF-Based Privacy-Preserving IoT Protocol for Cloud Storage
abstract
The IoT technology allows many types of personal data to be measured by many kinds of devices and sensors, and to be sent over the Internet for various applications. However, this data transmission has to be secure and the privacy of the users should ideally be preserved. In this work, we propose a SRAM PUF-based privacy-preserving IoT protocol for cloud storage based on an existing protocol from the literature. Proposals are made to increase the supply chain security of the PUF construction used by a device, to extend the secure lifetime of this device by increasing the number of keys it may generate and avoiding reboot-based attacks, and to allow a PUF construction to be used for different applications. These proposals only require changes on the device enrollment and on the master key generation procedure, leaving the PUF construction, the fuzzy extractor construction and the cryptographic key derivation unchanged. Benefits and limitations of this new protocol are evaluated and security objectives achieved with these proposals are analyzed.
Cédrick De Pauw, Jan Tobias Mühlberg, Jean-Michel Dricot
ICISSP2
2024 Efficient and Timely Revocation of V2X Credentials
Gianluca Scopelliti, Christoph Baumann, Fritz Alder, Eddy Truyen, Jan Tobias Mühlberg
NDSS5
2023 Zero-Cost In-Depth Enforcement of Network Policies for Low-Latency Cloud-Native Systems
abstract
Packaging applications in containers and managing them dynamically using a cluster orchestrator is the de-facto approach for deployment of cloud-native applications. When containers run inside virtual machines (VMs) to protect infrastructural assets, network policies (NPs) at the container layer and security groups (SGs) at the VM layer provide complementary firewall mechanisms that strengthen defenses against lateral movement of attackers. However, least-privilege NPs at the container layer may not always be consistent with statically defined, over-permissive SGs at the VM layer. This is especially a problem with low-latency configuration of container networking solutions that requires every opened container protocol, port and traffic direction also to be opened at the VM layer. In any post-exploitation scenario where attackers escape from within an already compromised or infected container, such over-permissive SGs do not prevent the attacker from spreading across VMs to find powerful tokens for accessing the cluster orchestrator. In this paper, we introduce GrassHopper (GH), a fast and dynamic cross-layer enforcement approach for NPs, which automatically generates SG configurations from dynamically verified NPs. Given the low-latency context, the design of GH must ensure that dynamically generated SG rules are applied fast before the newly scheduled containers become ready to serve traffic. We evaluate GH on a Kubernetes cluster running on OpenStack. For a wide range of relevant low-latency applications and cluster setups, GH can reduce the network attack surface between VMs at a ratio of 75-to-99% while causing no application level performance overhead with respect to latency, throughput, and CPU utilization.
Gerald Budigiri, Christoph Baumann, Eddy Truyen, Jan Tobias Mühlberg, Wouter Joosen
CLOUD4
2023 Rewind & Discard: Improving Software Resilience using Isolated Domains
abstract
Well-known defenses exist to detect and mitigate common faults and memory safety vulnerabilities in software. Yet, many of these mitigations do not address the challenge of software resilience and availability, i.e., whether a system can continue to carry out its function and remain responsive, while being under attack and subjected to malicious inputs. In this paper we propose secure rewind and discard of isolated domains as an efficient and secure method of improving the resilience of software that is targeted by run-time attacks. In difference to established approaches, we rely on compartmentalization instead of replication and checkpointing. We show the practicability of our methodology by realizing a software library for Secure Domain Rewind and Discard (SDRaD) and demonstrate how SDRaD can be applied to real-world software.
Merve Gülmez, Thomas Nyman, Christoph Baumann, Jan Tobias Mühlberg
DSN4
2023 Informing Children about Privacy: A Review and Assessment of Age-Appropriate Information Designs in Kids-Oriented F2P Video Games
abstract
With the rise of free-to-play (F2P) games, the profitability of video-gaming apps critically depends on the ability of developers to acquire, retain, and monetize large numbers of players. In this context, most game designers have no viable alternative than massively collecting players' personal data and monitoring their behavior to target them with personalized advertising and in-game purchases. Given the risks associated with such data practices, players, in particular children, need to be aware that a video game might compromise their privacy. Game designers should therefore ensure that players receive appropriate information about the data practices associated with their games. This might, however, be challenging, especially when the game is directed at children, given the complexity of privacy information and the limited literacy capacities of children and their parents. To answer game designers' need for comprehensive guidance regarding the communication of privacy information to children, we provide a survey of the age-appropriate information design strategies which been recommended by data protection authorities, children protection organizations and the relevant scientific literature. On this occasion, we also refer to illustrative examples of designs which can be considered good practices. Finally, by using an "evaluation matrix", we reviewed and assessed the implementation of those design strategies in nine F2P mobile games committed to following Google Play's Families Policies. Our findings show that, despite being child-oriented, the reviewed games largely fail at communicating privacy information in an age-appropriate way.
Martin Sas, Maarten Denoo, Jan Tobias Mühlberg
Proc. ACM Hum. Comput. Interact.3
2023 End-to-End Security for Distributed Event-driven Enclave Applications on Heterogeneous TEEs
abstract
This article presents an approach to provide strong assurance of the secure execution of distributed event-driven applications on shared infrastructures, while relying on a small Trusted Computing Base. We build upon and extend security primitives provided by Trusted Execution Environments (TEEs) to guarantee authenticity and integrity properties of applications, and to secure control of input and output devices. More specifically, we guarantee that if an output is produced by the application, it was allowed to be produced by the application’s source code based on an authentic trace of inputs. We present an integrated open-source framework to develop, deploy, and use such applications across heterogeneous TEEs. Beyond authenticity and integrity, our framework optionally provides confidentiality and a notion of availability, and facilitates software development at a high level of abstraction over the platform-specific TEE layer. We support event-driven programming to develop distributed enclave applications in Rust and C for heterogeneous TEE, including Intel SGX, ARM TrustZone, and Sancus. In this article we discuss the workings of our approach, the extensions we made to the Sancus processor, and the integration of our development model with commercial TEEs. Our evaluation of security and performance aspects show that TEEs, together with our programming model, form a basis for powerful security architectures for dependable systems in domains such as Industrial Control Systems and the Internet of Things, illustrating our framework’s unique suitability for a broad range of use cases which combine cloud processing, mobile and edge devices, and lightweight sensing and actuation.
Gianluca Scopelliti, Sepideh Pouyanrad, Job Noorman, Fritz Alder, Christoph Baumann, Frank Piessens, Jan Tobias Mühlberg
ACM Trans. Priv. Secur.7
2021 Aion: Enabling Open Systems through Strong Availability Guarantees for Enclaves
abstract
Embedded Trusted Execution Environments (TEEs) can provide strong security for software in the IoT or in critical control systems. Approaches to combine this security with real-time and availability guarantees are currently missing. In this paper we present Aion, a configurable security architecture that provides a notion of guaranteed real-time execution for dynamically loaded enclaves. We implement preemptive multitasking and restricted atomicity on top of strong enclave software isolation and attestation. Our approach allows the hardware to enforce confidentiality and integrity protections, while a decoupled small enclaved scheduler software component can enforce availability and guarantee strict deadlines of a bounded number of protected applications, without necessarily introducing a notion of priorities amongst these applications. We implement a prototype on a light-weight TEE processor and provide a case study. Our implementation can guarantee that protected applications can handle interrupts and make progress with deterministic activation latencies, even in the presence of a strong adversary with arbitrary code execution capabilities.
Fritz Alder, Jo Van Bulck, Frank Piessens, Jan Tobias Mühlberg
CCS4
2021 POSTER: An Open-Source Framework for Developing Heterogeneous Distributed Enclave Applications
abstract
We present an integrated open-source framework to develop, deploy, and use event-driven distributed enclaved applications across heterogeneous Trusted Execution Environments (TEEs). Our framework strives for strong application authenticity and integrity guarantees, and optionally confidentiality and availability, while minimizing the run-time Trusted Computing Base (TCB). For software developers, our framework provides a high level of abstraction over the platform-specific TEE layer that provides isolation, attestation and secure communication amongst distributed application components, allowing developers to focus of application logic. We provide a notion of event-driven programming to develop distributed enclave applications in Rust and C for heterogeneous TEEs, including Intel SGX, ARM TrustZone and the open-source Sancus. This heterogeneity makes our framework uniquely suitable for a broad range of use cases which combine cloud processing, mobile and edge devices, and lightweight sensing and actuation.
Gianluca Scopelliti, Sepideh Pouyanrad, Job Noorman, Fritz Alder, Frank Piessens, Jan Tobias Mühlberg
CCS6
2021 Compiler-Assisted Hardening of Embedded Software Against Interrupt Latency Side-Channel Attacks
abstract
Recent controlled-channel attacks exploit timing differences in the rudimentary fetch-decode-execute logic of processors. These new attacks also pose a threat to software on embedded systems. Even when Trusted Execution Environments (TEEs) are used, interrupt latency attacks allow untrusted code to extract application secrets from a vulnerable enclave by scheduling interruption of the enclave. Constant-time programming is effective against these attacks but, as we explain in this paper, can come with some disadvantages regarding performance. To deal with this new threat, we propose a novel algorithm that hardens programs during compilation by aligning the execution time of corresponding instructions in secret-dependent branches. Our results show that, on a class of embedded systems with deterministic execution times, this approach eliminates interrupt latency side-channel leaks and mitigates limitations of constant-time programming. We have implemented our approach in the LLVM compiler infrastructure for the San-cus TEE, which extends the openMSP430 microcontroller, and we discuss applicability to other architectures. We make our implementation and benchmarks available for further research.
Hans Winderix, Jan Tobias Mühlberg, Frank Piessens
EuroS&P2
2021 Robust authentication for automotive control networks through covert channels
Stien Vanderhallen, Jo Van Bulck, Frank Piessens, Jan Tobias Mühlberg
Comput. Networks4
2021 Securing Interruptible Enclaved Execution on Small Microprocessors
abstract
Computer systems often provide hardware support for isolation mechanisms such as privilege levels, virtual memory, or enclaved execution. Over the past years, several successful software-based side-channel attacks have been developed that break, or at least significantly weaken, the isolation that these mechanisms offer. Extending a processor with new architectural or micro-architectural features brings a risk of introducing new software-based side-channel attacks. This article studies the problem of extending a processor with new features without weakening the security of the isolation mechanisms that the processor offers. Our solution is heavily based on techniques from research on programming languages. More specifically, we propose to use the programming language concept of full abstraction as a general formal criterion for the security of a processor extension. We instantiate the proposed criterion to the concrete case of extending a microprocessor that supports enclaved execution with secure interruptibility. This is a very relevant instantiation, as several recent papers have shown that interruptibility of enclaves leads to a variety of software-based side-channel attacks. We propose a design for interruptible enclaves and prove that it satisfies our security criterion. We also implement the design on an open-source enclave-enabled microprocessor and evaluate the cost of our design in terms of performance and hardware size.
Matteo Busi 0001, Job Noorman, Jo Van Bulck, Letterio Galletta, Pierpaolo Degano, Jan Tobias Mühlberg, Frank Piessens
ACM Trans. Program. Lang. Syst.6
2020 SCFMSP: static detection of side channels in MSP430 programs
abstract
Information leakage through side-channels poses a serious threat to the security of distributed systems. Recent research on countermeasures against side-channel attacks show that, on embedded platforms with predictable execution times, certain classes of these vulnerabilities can be detected and mitigated automatically by means of language-based security techniques. In this paper, we propose a security type system to statically analyse MSP430 assembly programs to detecting information leakage through novel interrupt-latency attacks (a.k.a. Nemesis), timing side-channels, and undesired information flow. We have implemented our technique in a tool, Side Channel FinderMSP, which automatically verifies MSP430 object-code programs to be free of such vulnerabilities. We evaluate the effectiveness of our tool by applying it to a representative set of vulnerable and benign programs. Our experiments demonstrate that the tool is both effective in detecting vulnerabilities, and scalable to realistic applications.
Sepideh Pouyanrad, Jan Tobias Mühlberg, Wouter Joosen
ARES2
2020 Provably Secure Isolation for Interruptible Enclaved Execution on Small Microprocessors
abstract
Computer systems often provide hardware support for isolation mechanisms like privilege levels, virtual memory, or enclaved execution. Over the past years, several successful software-based side-channel attacks have been developed that break, or at least significantly weaken the isolation that these mechanisms offer. Extending a processor with new architectural or micro-architectural features, brings a risk of introducing new such side-channel attacks. This paper studies the problem of extending a processor with new features without weakening the security of the isolation mechanisms that the processor offers. We propose to use full abstraction as a formal criterion for the security of a processor extension, and we instantiate that criterion to the concrete case of extending a microprocessor that supports enclaved execution with secure interruptibility of these enclaves. This is a very relevant instantiation as several recent papers have shown that interruptibility of enclaves leads to a variety of software-based side-channel attacks. We propose a design for interruptible enclaves, and prove that it satisfies our security criterion. We also implement the design on an open-source enclave-enabled microprocessor, and evaluate the cost of our design in terms of performance and hardware size.
Matteo Busi 0001, Job Noorman, Jo Van Bulck, Letterio Galletta, Pierpaolo Degano, Jan Tobias Mühlberg, Frank Piessens
CSF6
2018 Generating Inductive Shape Predicates for Runtime Checking and Formal Verification
Jan H. Boockmann, Gerald Lüttgen, Jan Tobias Mühlberg
ISoLA (2)3
2017 VulCAN: Efficient Component Authentication and Software Isolation for Automotive Control Networks
abstract
Vehicular communication networks have been subject to a growing number of attacks that put the safety of passengers at risk. This resulted in millions of vehicles being recalled and lawsuits against car manufacturers. While recent standardization efforts address security, no practical solutions are implemented in current cars.
Jo Van Bulck, Jan Tobias Mühlberg, Frank Piessens
ACSAC2
2017 Sancus 2.0: A Low-Cost Security Architecture for IoT Devices
abstract
The Sancus security architecture for networked embedded devices was proposed in 2013 at the USENIX Security conference. It supports remote (even third-party) software installation on devices while maintaining strong security guarantees. More specifically, Sancus can remotely attest to a software provider that a specific software module is running uncompromised and can provide a secure communication channel between software modules and software providers. Software modules can securely maintain local state and can securely interact with other software modules that they choose to trust. Over the past three years, significant experience has been gained with applications of Sancus, and several extensions of the architecture have been investigated—both by the original designers as well as by independent researchers. Informed by these additional research results, this journal version of the Sancus paper describes an improved design and implementation, supporting additional security guarantees (such as confidential deployment) and a more efficient cryptographic core. We describe the design of Sancus 2.0 (without relying on any prior knowledge of Sancus) and develop and evaluate a prototype FPGA implementation. The prototype extends an MSP430 processor with hardware support for the memory access control and cryptographic functionality required to run Sancus. We report on our experience using Sancus in a variety of application scenarios and discuss some important avenues of ongoing and future work.
Job Noorman, Jo Van Bulck, Jan Tobias Mühlberg, Frank Piessens, Pieter Maene, Bart Preneel, Ingrid Verbauwhede, Johannes Götzfried, Tilo Müller, Felix C. Freiling
ACM Trans. Priv. Secur.3
2016 POSTER: Identifying Dynamic Data Structures in Malware
abstract
As the complexity of malware grows, so does the necessity of employing program structuring mechanisms during development. While control flow structuring is often obfuscated, the dynamic data structures employed by the program are typically untouched. We report on work in progress that exploits this weakness to identify dynamic data structures present in malware samples for the purposes of aiding reverse engineering and constructing malware signatures, which may be employed for malware classification. Using a prototype implementation, which combines the type recovery tool Howard and the identification tool Data Structure Investigator (DSI), we analyze data structures in Carberp and AgoBot malware. Identifying their data structures illustrates a challenging problem. To tackle this, we propose a new type recovery for binaries based on machine learning, which uses Howard's types to guide the search and DSI's memory abstraction for hypothesis evaluation.
Thomas Rupprecht, Xi Chen 0038, David H. White 0001, Jan Tobias Mühlberg, Herbert Bos, Gerald Lüttgen
CCS4
2016 An Implementation of a High Assurance Smart Meter Using Protected Module Architectures
Jan Tobias Mühlberg, Sara Cleemput, Mustafa A. Mustafa, Jo Van Bulck, Bart Preneel, Frank Piessens
WISTP1
2015 Lightweight and Flexible Trust Assessment Modules for the Internet of Things
abstract
In this paper we describe a novel approach to securely obtain measurements with respect to the integrity of software running on a low-cost and low-power computing node autonomously or on request. We propose to use these measurements as an indication of the trustworthiness of that node. Our approach is based on recent developments in Program Counter Based Access Control. Specifically, we employ Sancus, a light-weight hardware-only Trusted Computing Base and Protected Module Architecture, to integrate trust assessment modules into an untrusted embedded OS without using a hypervisor. Sancus ensures by means of hardware extensions that code and data of a protected module cannot be tampered with, and that the module’s data remains confidential. Sancus further provides cryptographic primitives that are employed by our approach to enable the trust management system to verify that the obtained trust metrics are authentic and fresh. Thereby, our trust assessment modules can inspect the OS or application code and securely report reliable trust metrics to an external trust management system. We evaluate a prototypic implementation of our approach that integrates Sancus-protected trust assessment modules with the Contiki OS running on a Sancus-enabled TI MSP430 microcontroller.
Jan Tobias Mühlberg, Job Noorman, Frank Piessens
ESORICS (1)1
2015 Learning Assertions to Verify Linked-List Programs
Jan Tobias Mühlberg, David H. White 0001, Mike Dodds, Gerald Lüttgen, Frank Piessens
SEFM1
2015 Secure Resource Sharing for Embedded Protected Module Architectures
Jo Van Bulck, Job Noorman, Jan Tobias Mühlberg, Frank Piessens
WISTP3
2014 Software verification with VeriFast: Industrial case studies
Pieter Philippaerts, Jan Tobias Mühlberg, Willem Penninckx, Jan Smans, Bart Jacobs 0002, Frank Piessens
Sci. Comput. Program.2
2014 Symbolic object code analysis
Jan Tobias Mühlberg, Gerald Lüttgen
Int. J. Softw. Tools Technol. Transf.1
2012 HyperForce: Hypervisor-enForced Execution of Security-Critical Code
Francesco Gadaleta, Nick Nikiforakis, Jan Tobias Mühlberg, Wouter Joosen
SEC3
2012 Verifying compiled file system code
abstract
Abstract This article presents a case study on retrospective verification of the Linux Virtual File System (VFS), which is aimed at checking violations of API usage rules and memory properties. Since VFS maintains dynamic data structures and is written in a mixture of C and inlined assembly, modern software model checkers cannot be applied. Our case study centres around our novel automated software verification tool, the SOCA Verifier, which symbolically executes and analyses compiled code. We describe how this verifier deals with complex features such as memory access, pointer aliasing and computed jumps in the VFS implementation, while reducing manual modelling to a minimum. Our results show that the SOCA Verifier is capable of analysing the complex Linux VFS implementation reliably and efficiently, thereby going beyond traditional testing tools and into niches that current software model checkers do not reach. This testifies to the SOCA Verifier’s suitability as an effective and efficient bug-finding tool during the development of operating system components.
Jan Tobias Mühlberg, Gerald Lüttgen
Formal Aspects Comput.1
2009 Model-Checking the Linux Virtual File System
Andy Galloway, Gerald Lüttgen, Jan Tobias Mühlberg, Radu Siminiceanu
VMCAI3