Skip to content

Latest commit

 

History

History
20 lines (12 loc) · 768 Bytes

README.md

File metadata and controls

20 lines (12 loc) · 768 Bytes

differ

Simple binary diffing tool written in python and built on top of angr that uses the Weisfeiler-Lehman kernel graph to match similar functions.

How it works

The tool is heavily inspired from the article Weisfeiler-Lehman Graph Kernel for Binary Function Analysis. It matches functions in two steps: first a heuristic based approach is used and then the Weisfeiler-Lehman graph kernel is used to match the remaining unmatched functions.

How to use

Set up the database

First of all you need to set up the database with base-db.sql

>> sqlite3 db.sqlite3 < base-db.sql

Usage

Now you can run the program like this

>> python differ.py prog1 prog2