Demonstration venue · read-only. Every page can be browsed; the buttons that would change it are switched off. Create an account to run TaxoReview on your own data. A simulation from public publication records: the people listed were not invited and did not agree to review.
? Tutorial for this page

Brian Johannesmeyer

dblp:157/3785 · DBLP profile ↗
← Back
7ranked-venue papers
3as first author
3since 2021 · last 2025
0009-0005-6882-3024ORCID · corroborated

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

Security and privacy · 6 · 3 first-author · 3 since 2021Software engineering, systems software and programming languages · 1

Expertise — from the expertise taxonomy: the topics of the expert's papers under the CCF categories. A weight counts papers with recency: 1 for a paper about the topic, 0.3 when the topic is its context, halved every five years.

Network and information security
6 papers
Systems and software security · 73% Hardware security and side channels · 22% Malware analysis · 5%
Software engineering, system software, and programming languages
5 papers
Program analysis · 29% Concurrent programming · 29% Operating systems · 19%

Topics — the 16 heaviest of 16, each with the papers that count most for it

TopicWeightPapersLastEvidence papers
Systems and software security
operating system security
0.912025
Dynamic Detection of Vulnerable DMA Race Conditions · CCS 2025
Concurrent programming › concurrency bug detection
data race detection
0.912025
Dynamic Detection of Vulnerable DMA Race Conditions · CCS 2025
Program analysis
dynamic analysis
0.912025
Dynamic Detection of Vulnerable DMA Race Conditions · CCS 2025
Systems and software security
exploitation
0.812024
Practical Data-Only Attack Generation · USENIX Security Symposium 2024
Systems and software security › exploitation
non-control data attack
0.812024
Practical Data-Only Attack Generation · USENIX Security Symposium 2024
Hardware security and side channels › microarchitectural attacks
transient execution attack
0.612022
Kasper: Scanning for Generalized Transient Execution Gadgets in the Linux Kernel · NDSS 2022
Operating systems › system security › operating system security
kernel security
0.612022
Kasper: Scanning for Generalized Transient Execution Gadgets in the Linux Kernel · NDSS 2022
Programming languages and type systems
domain-specific languages
0.412019
FaCT: a DSL for timing-sensitive computation · PLDI 2019
Systems and software security
memory safety
0.312017
Dead Store Elimination (Still) Considered Harmful · USENIX Security Symposium 2017
Compilers and program optimization
compiler optimization
0.312017
Dead Store Elimination (Still) Considered Harmful · USENIX Security Symposium 2017
Hardware security and side channels › hardware attacks
DMA attacks
0.312025
Dynamic Detection of Vulnerable DMA Race Conditions · CCS 2025
Systems and software security
vulnerability discovery
0.212024
Practical Data-Only Attack Generation · USENIX Security Symposium 2024
Systems and software security
binary analysis
0.212015
A Generic Approach to Automatic Deobfuscation of Executable Code · IEEE Symposium on Security and Privacy 2015
Malware analysis › obfuscation analysis
code deobfuscation
0.212015
A Generic Approach to Automatic Deobfuscation of Executable Code · IEEE Symposium on Security and Privacy 2015
Hardware security and side channels › side-channel attack
timing side channel
0.112019
FaCT: a DSL for timing-sensitive computation · PLDI 2019
Compilers and program optimization › program transformation
semantics-preserving transformation
0.112015
A Generic Approach to Automatic Deobfuscation of Executable Code · IEEE Symposium on Security and Privacy 2015

Methods — techniques the papers use, named apart from their topics

taint tracking · 1.7dynamic analysis · 1.7memory corruption · 0.8control-flow integrity bypass · 0.8constant-time programming · 0.8static analysis · 0.6semantics-preserving simplification · 0.4program transformation · 0.4
YearPublicationVenuePosition
2025 Dynamic Detection of Vulnerable DMA Race Conditions
abstract
The drivers of modern operating systems use Direct Memory Access (DMA) to efficiently communicate with peripheral devices. Since the memory accessed by DMA is a shared resource between driver and device, it is a possible source of race conditions. Peripheral devices are also often untrusted, so these race conditions open up a new potential attack vector against a trusted OS kernel. In this paper, we present DMARacer, a dynamic detector called for these DMA-based race conditions in kernel code. DMARacer tracks memory accesses to DMA memory throughout the kernel's lifetime and analyses them for various indicators of race conditions. Additionally, upon detecting a race condition, DMARacer uses taint tracking to trace its impact and identify any potential vulnerabilities it may trigger, such as memory corruption or denial-of-service. We used DMARacer to search the drivers of the Linux kernel for DMA-based errors and find that DMA-based race conditions are a systemic issue in driver code. In total, DMARacer was able to detect 817 problematic memory accesses and 344 vulnerable operations in the scanned Linux kernel drivers.
Brian Johannesmeyer, Raphael Isemann, Cristiano Giuffrida, Herbert Bos
CCS1
2024 Practical Data-Only Attack Generation
Brian Johannesmeyer, Asia Slowinska, Herbert Bos, Cristiano Giuffrida
USENIX Security Symposium1
2022 Kasper: Scanning for Generalized Transient Execution Gadgets in the Linux Kernel
Brian Johannesmeyer, Jakob Koschel, Kaveh Razavi, Herbert Bos, Cristiano Giuffrida
NDSS1
2019 FaCT: a DSL for timing-sensitive computation
abstract
Real-world cryptographic code is often written in a subset of C intended to execute in constant-time, thereby avoiding timing side channel vulnerabilities. This C subset eschews structured programming as we know it: if-statements, looping constructs, and procedural abstractions can leak timing information when handling sensitive data. The resulting obfuscation has led to subtle bugs, even in widely-used high-profile libraries like OpenSSL.
Sunjay Cauligi, Gary Soeller, Brian Johannesmeyer, Fraser Brown, Riad S. Wahby, John Renner, Benjamin Grégoire, Gilles Barthe, Ranjit Jhala, Deian Stefan
PLDI3
2017 Dead Store Elimination (Still) Considered Harmful
Zhaomo Yang, Brian Johannesmeyer, Anders Trier Olesen, Sorin Lerner, Kirill Levchenko
USENIX Security Symposium2
2015 Identifying and Understanding Self-Checksumming Defenses in Software
abstract
Software self-checksumming is widely used as an anti-tampering mechanism for protecting intellectual property and deterring piracy. This makes it important to understand the strengths and weaknesses of various approaches to self-checksumming. This paper describes a dynamic information-flow-based attack that aims to identify and understand self-checksumming behavior in software. Our approach is applicable to a wide class of self chesumming defenses and the information obtained can be used to determine how the checksumming defenses may be bypassed. Experiments using a prototype implementation of our ideas indicate that our approach can successfully identify self-checksumming behavior in (our implementations of) proposals from the research literature.
Jing Qiu 0003, Babak Yadegari, Brian Johannesmeyer, Saumya K. Debray, Xiaohong Su
CODASPY3
2015 A Generic Approach to Automatic Deobfuscation of Executable Code
abstract
Malicious software are usually obfuscated to avoid detection and resist analysis. When new malware is encountered, such obfuscations have to be penetrated or removed ("deobfuscated") in order to understand the internal logic of the code and devise countermeasures. This paper discusses a generic approach for deobfuscation of obfuscated executable code. Our approach does not make any assumptions about the nature of the obfuscations used, but instead uses semantics-preserving program transformations to simplify away obfuscation code. We have applied a prototype implementation of our ideas to a variety of different kinds of obfuscation, including emulation-based obfuscation, emulation-based obfuscation with runtime code unpacking, and return-oriented programming. Our experimental results are encouraging and suggest that this approach can be effective in extracting the internal logic from code obfuscated using a variety of obfuscation techniques, including tools such as Themida that previous approaches could not handle.
Babak Yadegari, Brian Johannesmeyer, Ben Whitely, Saumya K. Debray
IEEE Symposium on Security and Privacy2