Marco: A Stochastic Asynchronous Concolic Explorer

10Citations
Citations of this article
7Readers
Mendeley users who have this article in their library.
Get full text

Abstract

Concolic execution is a powerful program analysis technique for code path exploration. Despite recent advances that greatly improved the efficiency of concolic execution engines, path constraint solving remains a major bottleneck of concolic testing. An intelligent scheduler for inputs/branches becomes even more crucial. Our studies show that the previously under-studied branch-flipping policy adopted by state-of-the-art concolic execution engines has several limitations. We propose to assess each branch by its potential for new code coverage from a global view, concerning the path divergence probability at each branch. To validate this idea, we implemented a prototype Marco and evaluated it against the state-of-the-art concolic executor on 30 real-world programs from Google’s Fuzzbench, Binutils, and UniBench. The result shows that Marco can outperform the baseline approach and make continuous progress after the baseline approach terminates.

Cite

CITATION STYLE

APA

Hu, J., Duan, Y., & Yin, H. (2024). Marco: A Stochastic Asynchronous Concolic Explorer. In Proceedings - International Conference on Software Engineering. IEEE Computer Society. https://doi.org/10.1145/3597503.3623301

Register to see more suggestions

Mendeley helps you to discover research relevant for your work.

Already have an account?

Save time finding and organizing research with Mendeley

Sign up for free