kirancodes.me
To Proof Maintenance & Beyond!

Binary Diffing as a Network Alignment Problem via Belief Propagation

Elie Mengin, Fabrice Rossi

Abstract

In this paper, we address the problem of finding a correspondence, or matching, between the functions of two programs in binary form, which is one of the most common task in binary diffing. We introduce a new formulation of this problem as a particular instance of a graph edit problem over the call graphs of the programs. In this formulation, the quality of a mapping is evaluated simultaneously with respect to both function content and call graph similarities. We show that this formulation is equivalent to a network alignment problem. We propose a solving strategy for this problem based on max-product belief propagation. Finally, we implement a prototype of our method, called QBinDiff, and propose an extensive evaluation which shows that our approach outperforms state of the art diffing tools.

BibTeX
@inproceedings{Mengin-Rossi:ASE21,
  author    = {Elie Mengin and
               Fabrice Rossi},
  title     = {Binary Diffing as a Network Alignment Problem via Belief Propagation},
  booktitle = {ASE},
  pages     = {967--978},
  publisher = {{IEEE}},
  year      = {2021},
}

Related papers