• Stars
    star
    152
  • Rank 244,685 (Top 5 %)
  • Language
    Python
  • License
    GNU General Publi...
  • Created over 8 years ago
  • Updated almost 6 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

REmatch, a complete binary diffing framework that is free and strives to be open source and community driven.

Read The Docs Gitter Chat Build Status Codacy Badge rematch-idaplugin PyPI rematch-server PyPI

rematch

REmatch, yet another binary comparison tool.

Rematch is still a work in progress and is not as feature-rich as we'd like it to be. Basic functionality is available at this point and more advanced features are being worked on. Hopefully, since extendability and maintainability were first priorities we'll get there relatively fast.

It is intended to be used by reverse engineers by revealing and identifying previously reverse engineered similar functions and migrating documentation and annotations to current IDB. It does that by locally collecting data about functions in your IDB and uploading that information to a web service (which you're supposed to set up as well). Upon request, the web service can match your functions against all (or part) of previously uploaded functions and provide matches.

A secondary goal of this (which is not currently pursued) is to allow synchronization between multiple reverse engineers working on the same file.

Installation

Rematch is made of two components, both are quite simple to install. Additional information can be found at https://rematch.readthedocs.io

IDA plugin: Installing the IDA plugin is a simple as dropping it in IDA's plugins directory.

Web service: Installing the web service requires docker and building the webservice's docker image by executing the following command:

$ vim ./server/.env # this file holds passwords, change them!
$ docker-compose -f ./server/docker-compose.yml build ;
$ docker-compose -f ./server/docker-compose.yml up -d ;

To create the rematch server administrator execute the following command:

$ docker-compose -f ./server/docker-compose.yml exec web ./server/manage.py createsuperuser

Finally, point your browser to http://SERVER_IP:8000/admin/ to manage the service and add more users.