VLDB 2026 Research / reviewers in the wild / expert
Stefan Bucur
dblp:97/7805
· DBLP profile ↗
5ranked-venue papers
2as first author
0since 2021 · last 2019
—ORCID · none
Domains — the database's venue-derived domains; a paper can count in several
Systems, architecture and hardware · 3 · 2 first-authorSoftware engineering, systems software and programming languages · 3 · 1 first-author
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
4 papers |
Program analysis · 50% Software testing · 47% Programming languages and type systems · 3% | |
| Network and information security
1 paper |
Systems and software security · 100% |
Topics — the 10 heaviest of 11, each with the papers that count most for it
| Topic | Weight | Papers | Last | Evidence papers |
|---|---|---|---|---|
Program analysis
symbolic execution |
0.5 | 3 | 2014 | Prototyping symbolic execution engines for interpreted languages · ASPLOS 2014 Efficient state merging in symbolic execution · PLDI 2012 Parallel symbolic execution for automated real-world software testing · EuroSys 2011 |
Systems and software security › vulnerability discovery
fuzzing |
0.4 | 1 | 2019 | FUDGE: fuzz driver generation at scale · ESEC/SIGSOFT FSE 2019 |
Systems and software security
vulnerability discovery |
0.4 | 1 | 2019 | FUDGE: fuzz driver generation at scale · ESEC/SIGSOFT FSE 2019 |
Software testing › fuzzing
fuzz driver generation |
0.4 | 1 | 2019 | FUDGE: fuzz driver generation at scale · ESEC/SIGSOFT FSE 2019 |
Software testing
fuzzing |
0.4 | 1 | 2019 | FUDGE: fuzz driver generation at scale · ESEC/SIGSOFT FSE 2019 |
Program analysis
dynamic analysis |
0.2 | 1 | 2014 | Prototyping symbolic execution engines for interpreted languages · ASPLOS 2014 |
Program analysis › symbolic execution
state merging |
0.1 | 1 | 2012 | Efficient state merging in symbolic execution · PLDI 2012 |
Program analysis › symbolic execution
parallel symbolic execution |
0.1 | 1 | 2011 | Parallel symbolic execution for automated real-world software testing · EuroSys 2011 |
Software testing
test generation |
0.1 | 2 | 2014 | Prototyping symbolic execution engines for interpreted languages · ASPLOS 2014 Efficient state merging in symbolic execution · PLDI 2012 |
High-performance computing
cluster computing |
0.0 | 1 | 2011 | Parallel symbolic execution for automated real-world software testing · EuroSys 2011 |
Methods — techniques the papers use, named apart from their topics
symbolic execution · 0.4POSIX environment modeling · 0.2constraint solving · 0.1
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2019 | FUDGE: fuzz driver generation at scaleabstractAt Google we have found tens of thousands of security and robustness bugs by fuzzing C and C++ libraries. To fuzz a library, a fuzzer requires a fuzz driver—which exercises some library code—to which it can pass inputs. Unfortunately, writing fuzz drivers remains a primarily manual exercise, a major hindrance to the widespread adoption of fuzzing. In this paper, we address this major hindrance by introducing the Fudge system for automated fuzz driver generation. Fudge automatically generates fuzz driver candidates for libraries based on existing client code. We have used Fudge to generate thousands of new drivers for a wide variety of libraries. Each generated driver includes a synthesized C/C++ program and a corresponding build script, and is automatically analyzed for quality. Developers have integrated over 200 of these generated drivers into continuous fuzzing services and have committed to address reported security bugs. Further, several of these fuzz drivers have been upstreamed to open source projects and integrated into the OSS-Fuzz fuzzing infrastructure. Running these fuzz drivers has resulted in over 150 bug fixes, including the elimination of numerous exploitable security vulnerabilities. Domagoj Babic, Stefan Bucur, Franjo Ivancic, Tim King 0001, Markus Kusano, Caroline Lemieux, Laszlo Szekeres |
ESEC/SIGSOFT FSE | 2 |
| 2014 | Prototyping symbolic execution engines for interpreted languagesabstractSymbolic execution is being successfully used to automatically test statically compiled code. However, increasingly more systems and applications are written in dynamic interpreted languages like Python. Building a new symbolic execution engine is a monumental effort, and so is keeping it up-to-date as the target language evolves. Furthermore, ambiguous language specifications lead to their implementation in a symbolic execution engine potentially differing from the production interpreter in subtle ways. Stefan Bucur, Johannes Kinder, George Candea |
ASPLOS | 1 |
| 2012 | Efficient state merging in symbolic executionabstractSymbolic execution has proven to be a practical technique for building automated test case generation and bug finding tools. Nevertheless, due to state explosion, these tools still struggle to achieve scalability. Given a program, one way to reduce the number of states that the tools need to explore is to merge states obtained on different paths. Alas, doing so increases the size of symbolic path conditions (thereby stressing the underlying constraint solver) and interferes with optimizations of the exploration process (also referred to as search strategies). The net effect is that state merging may actually lower performance rather than increase it. Volodymyr Kuznetsov, Johannes Kinder, Stefan Bucur, George Candea |
PLDI | 3 |
| 2011 | Parallel symbolic execution for automated real-world software testingabstractThis paper introduces Cloud9, a platform for automated testing of real-world software. Our main contribution is the scalable parallelization of symbolic execution on clusters of commodity hardware, to help cope with path explosion. Cloud9 provides a systematic interface for writing "symbolic tests" that concisely specify entire families of inputs and behaviors to be tested, thus improving testing productivity. Cloud9 can handle not only single-threaded programs but also multi-threaded and distributed systems. It includes a new symbolic environment model that is the first to support all major aspects of the POSIX interface, such as processes, threads, synchronization, networking, IPC, and file I/O. We show that Cloud9 can automatically test real systems, like memcached, Apache httpd, lighttpd, the Python interpreter, rsync, and curl. We show how Cloud9 can use existing test suites to generate new test cases that capture untested corner cases (e.g., network stream fragmentation). Cloud9 can also diagnose incomplete bug fixes by analyzing the difference between buggy paths before and after a patch. Stefan Bucur, Vlad Ureche, Cristian Zamfir, George Candea |
EuroSys | 1 |
| 2010 | Automated software testing as a serviceabstractThis paper makes the case for TaaS--automated software testing as a cloud-based service. We present three kinds of TaaS: a "programmer's sidekick" enabling developers to thoroughly and promptly test their code with minimal upfront resource investment; a "home edition" on-demand testing service for consumers to verify the software they are about to install on their PC or mobile device; and a public "certification service," akin to Underwriters Labs, that independently assesses the reliability, safety, and security of software. George Candea, Stefan Bucur, Cristian Zamfir |
SoCC | 2 |