Title
RAProducer: efficiently diagnose and reproduce data race bugs for binaries via trace analysis
Abstract
ABSTRACTA growing number of bugs have been reported by vulnerability discovery solutions. Among them, some bugs are hard to diagnose or reproduce, including data race bugs caused by thread interleavings. Few solutions are able to well address this issue, due to the huge space of interleavings to explore. What’s worse, in security analysis scenarios, analysts usually have no access to the source code of target programs and have troubles in comprehending them. In this paper, we propose a general solution RAProducer to efficiently diagnose and reproduce data race bugs, for both user-land binary programs and kernels without source code. The efficiency of RAProducer is achieved by analyzing the execution trace of the given PoC (proof-of-concept) sample to recognize race- and bug-related elements (including locks and shared variables), which greatly facilitate narrowing down the huge search space of data race spots and thread interleavings. We have implemented a prototype of RAProducer and evaluated it on 7 kernel and 10 user-land data race bugs. Evaluation results showed that, RAProducer is effective at reproducing all these bugs. More importantly, it enables us to diagnose 2 extra real world bugs which are left unconfirmed for a long time. It is also efficient as it reduces candidate data race spots of each bug to a small set, and narrows down the thread interleaving greatly.RAProducer is also more effective in reproducing real-world data race bugs than other state-of-the-art solutions.
Year
DOI
Venue
2021
10.1145/3460319.3464831
ISSTA
Keywords
DocType
Citations 
Data Race, Binary, Vulnerability, Reproduction
Conference
1
PageRank 
References 
Authors
0.35
0
6
Name
Order
Citations
PageRank
Ming Yuan16411.47
Yeseop Lee210.35
Chao Zhang342338.17
Yun Li410.35
Yan Cai5142.60
Bodong Zhao6121.27