Demo Data from EDBT 2026 / reviewers in the wild / expert
Rukayat Erinfolami
dblp:219/8147 · also Rukayat Ayomide Erinfolami
· DBLP profile ↗
4ranked-venue papers
3as first author
1since 2021 · last 2021
—ORCID · none
Domains — the database's venue-derived domains; a paper can count in several
Security and privacy · 4 · 3 first-author · 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.
| Software engineering, system software, and programming languages
1 paper |
Program analysis · 77% Programming languages and type systems · 23% | |
| Network and information security
1 paper |
Systems and software security · 100% |
Topics — the 3 heaviest of 3, each with the papers that count most for it
| Topic | Weight | Papers | Last | Evidence papers |
|---|---|---|---|---|
Systems and software security › memory safety
control-flow integrity |
0.4 | 1 | 2020 | Devil is Virtual: Reversing Virtual Inheritance in C++ Binaries · CCS 2020 |
Program analysis
binary analysis |
0.4 | 1 | 2020 | Devil is Virtual: Reversing Virtual Inheritance in C++ Binaries · CCS 2020 |
Programming languages and type systems › object-oriented programming
c++ object model |
0.1 | 1 | 2020 | Devil is Virtual: Reversing Virtual Inheritance in C++ Binaries · CCS 2020 |
Methods — techniques the papers use, named apart from their topics
static analysis · 0.9binary reverse engineering · 0.9
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2021 | Program Obfuscation via ABI DebiasingabstractThe Itanium ABI is the most popular C++ ABI that defines data structures essential to implement underlying object-oriented concepts in C++. Specifically, name mangling rules, object and VTable layouts, alignment, etc. are all mandated by the ABI. Adherence to the ABI comes with undesirable side effects. While it allows interoperability, past research efforts have shown that it provides robust inference points that an attacker can leverage to reveal sensitive design information through binary reverse engineering. In this work, we aim to reduce the ability of an attacker to successfully reverse engineer a binary. We do this via removal of what we call ABI Bias, i.e., the reverse engineering bias that manifests due to a compiler’s adherence to the ABI. David Demicco, Rukayat Erinfolami, Aravind Prakash |
ACSAC | 2 |
| 2020 | Devil is Virtual: Reversing Virtual Inheritance in C++ BinariesabstractThe complexities that arise from the implementation of object-oriented concepts in C++ such as virtual dispatch and dynamic type casting have attracted the attention of attackers and defenders alike. Binary-level defenses are dependent on full and precise recovery of class inheritance tree of a given program. While current solutions focus on recovering single and multiple inheritances from the binary, they are oblivious of virtual inheritance. The conventional wisdom among binary-level defenses is that virtual inheritance is uncommon and/or support for single and multiple inheritances provides implicit support for virtual inheritance. In this paper, we show neither to be true. Specifically, (1) we present an efficient technique to detect virtual inheritance in C++ binaries and show through a study that virtual inheritance can be found in non-negligible number (more than 10% on Linux and 12.5% on Windows) of real-world C++ programs including Mysql and Libstdc++. (2) We show that failure to handle virtual inheritance introduces both false positives and false negatives in the hierarchy tree. These falses either introduce attack surface when the hierarchy recovered is used to enforce CFI policies, or make the hierarchy difficult to understand when it is needed for program understanding (e.g., during decompilation). (3) We present a solution to recover virtual inheritance from COTS binaries. We recover a maximum of 95% and 95.5% (GCC -O0) and a minimum of 77.5% and 73.8% (Clang -O2) of virtual and intermediate bases respectively in the virtual inheritance tree. Rukayat Erinfolami, Aravind Prakash |
CCS | 1 |
| 2019 | DeClassifier: Class-Inheritance Inference Engine for Optimized C++ BinariesabstractRecovering class inheritance from C++ binaries has several security benefits including in solving problems such as decompilation and program hardening. Thanks to the optimization guidelines prescribed by the C++ standard, commercial C++ binaries tend to be optimized. While state-of-the-art class inheritance inference solutions are effective in dealing with unoptimized code, their efficacy is impeded by optimization. Particularly, constructor inlining---or worse exclusion---due to optimization render class inheritance recovery challenging. Further, while modern solutions such as MARX can successfully group classes within an inheritance sub-tree, they fail to establish directionality of inheritance, which is crucial for security-related applications (e.g. decompilation). We implemented a prototype of DeClassifier using Binary Analysis Platform (BAP) and evaluated DeClassifier against 16 binaries compiled using gcc under multiple optimization settings. We show that (1) DeClassifier can recover 94.5% and 71.4% true positive directed edges in the class hierarchy tree (CHT) under O0 and O2 optimizations respectively, (2) a combination of constructor-destructor (ctor-dtor) analysis provides a substantial improvement in inheritance inference than constructor-only (ctor-only) analysis. Rukayat Erinfolami, Aravind Prakash |
AsiaCCS | 1 |
| 2019 | On Design Inference from Binaries Compiled using Modern C++ Defenses
Rukayat Erinfolami, Anh Quach, Aravind Prakash |
RAID | 1 |