Demo Data from EDBT 2026 / reviewers in the wild / expert
Taddeus Kroes
dblp:200/3240
· DBLP profile ↗
4ranked-venue papers
1as first author
1since 2021 · last 2024
0000-0002-8060-2989ORCID · corroborated
Domains — the database's venue-derived domains; a paper can count in several
Systems, architecture and hardware · 2 · 1 first-authorSecurity and privacy · 2 · 1 since 2021
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
2 papers |
Systems and software security · 100% | |
| Software engineering, system software, and programming languages
2 papers |
Program analysis · 59% Compilers and program optimization · 41% | |
| Computer architecture, parallel and distributed computing, and storage systems
1 paper |
Memory systems · 100% |
Topics — the 7 heaviest of 8, each with the papers that count most for it
| Topic | Weight | Papers | Last | Evidence papers |
|---|---|---|---|---|
Systems and software security
memory safety |
1.1 | 2 | 2024 | Sticky Tags: Efficient and Deterministic Spatial Memory Error Mitigation using Persistent Memory Tags · SP 2024 Delta pointers: buffer overflow checks without the checks · EuroSys 2018 |
Systems and software security › memory safety › hardware-enforced memory safety
memory tagging |
0.8 | 1 | 2024 | Sticky Tags: Efficient and Deterministic Spatial Memory Error Mitigation using Persistent Memory Tags · SP 2024 |
Memory systems › memory protection
memory tagging extension |
0.8 | 1 | 2024 | Sticky Tags: Efficient and Deterministic Spatial Memory Error Mitigation using Persistent Memory Tags · SP 2024 |
Program analysis › binary analysis
dynamic binary analysis |
0.4 | 1 | 2020 | BinRec: dynamic binary lifting and recompilation · EuroSys 2020 |
Systems and software security › memory safety › memory error detection
buffer overflow detection |
0.3 | 1 | 2018 | Delta pointers: buffer overflow checks without the checks · EuroSys 2018 |
Program analysis
dynamic analysis |
0.3 | 1 | 2018 | Delta pointers: buffer overflow checks without the checks · EuroSys 2018 |
Systems and software security › memory safety › memory corruption defense
buffer overflow protection |
0.2 | 1 | 2024 | Sticky Tags: Efficient and Deterministic Spatial Memory Error Mitigation using Persistent Memory Tags · SP 2024 |
Methods — techniques the papers use, named apart from their topics
stack and heap layout partitioning · 1.5memory tagging · 1.5pointer tagging · 0.7delta pointers · 0.7dynamic disassembly · 0.4
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2024 | Sticky Tags: Efficient and Deterministic Spatial Memory Error Mitigation using Persistent Memory TagsabstractSpatial memory errors such as buffer overflows still rank among the top vulnerabilities in C/C++ programs. Despite much research in the area, the performance overhead of (even partial) mitigations is still too high for practical adoption. To reduce the cost, recent solutions are shifting towards hardware-assisted techniques such as Arm’s Memory Tagging Extension (MTE). Unfortunately, state-of-the-art MTE solutions incur high overhead due to frequent memory (re)tagging, especially on the stack. Moreover, they rely on the secrecy of random memory tags and offer probabilistic security guarantees.In this paper, we first provide evidence that random tagging offers limited protection as attackers can deduce the memory tags by means of speculative probing. We then present StickyTags, a deterministic MTE solution that efficiently mitigates bounded spatial memory errors. By organizing the stack and heap layout into per-size-class regions, we can apply persistent memory tags to each region in a predetermined pattern. Hence, the memory tags need only be initialized once, after which they can be reused by objects of the same size class. This eliminates the need for costly memory retagging and allows for a fixed, round-robin assignment of the tags, surrounding every object with large implicit spatial guards. While the size of such guards is bounded by the 4-bit MTE entropy (16 tags), the protection is efficient and deterministic. Indeed, we show StickyTags significantly outperforms existing solutions with realistic runtime overheads for practical adoption (≤ 4% on SPEC CPU2006), while fully mitigating 7 out of 8 spatial CVEs evaluated by a recent probabilistic MTE solution. Floris Gorter, Taddeus Kroes, Herbert Bos, Cristiano Giuffrida |
SP | 2 |
| 2020 | BinRec: dynamic binary lifting and recompilationabstractBinary lifting and recompilation allow a wide range of install-time program transformations, such as security hardening, deobfuscation, and reoptimization. Existing binary lifting tools are based on static disassembly and thus have to rely on heuristics to disassemble binaries. Anil Altinay, Joseph Nash, Taddeus Kroes, Prabhu Rajasekaran, Dixin Zhou, Adrian Dabrowski, David Gens, Yeoul Na, Stijn Volckaert, Cristiano Giuffrida, Herbert Bos, Michael Franz |
EuroSys | 3 |
| 2018 | Type-After-Type: Practical and Complete Type-Safe Memory ReuseabstractTemporal memory errors, such as use-after-free bugs, are increasingly popular among attackers and their exploitation is hard to stop efficiently using current techniques. We present a new design, called Type-After-Type, which builds on abstractions in production allocators to provide complete temporal type safety for C/C++ programs---ensuring that memory reuse is always type safe---and efficiently hinder temporal memory attacks. Type-After-Type uses static analysis to determine the types of all heap and stack allocations, and replaces regular allocations with typed allocations that never reuse memory previously used by other types. On the heap, Type-After-Type splits available memory into separate pools for each type. For the stack, Type-After-Type efficiently implements type-safe memory reuse for the first time, pushing variables on separate stacks according to their types, unless they are provably safe (e.g., their address is not taken), in which case they are zero-initialized and kept on a special stack. In our evaluation, we show that Type-After-Type stops a variety of real-world temporal memory attacks and on SPEC CPU2006 incurs a performance overhead of 4.3% and a memory overhead of 17.4% (geomean). Erik van der Kouwe, Taddeus Kroes, Chris Ouwehand, Herbert Bos, Cristiano Giuffrida |
ACSAC | 2 |
| 2018 | Delta pointers: buffer overflow checks without the checksabstractDespite decades of research, buffer overflows still rank among the most dangerous vulnerabilities in unsafe languages such as C and C++. Compared to other memory corruption vulnerabilities, buffer overflows are both common and typically easy to exploit. Yet, they have proven so challenging to detect in real-world programs that existing solutions either yield very poor performance, or introduce incompatibilities with the C/C++ language standard. Taddeus Kroes, Koen Koning, Erik van der Kouwe, Herbert Bos, Cristiano Giuffrida |
EuroSys | 1 |