Introduction

Sidekick is an AI-powered extension to the Binary Ninja tool, with capabilities to assist users in analyzing and understanding binary programs. Its advertised feature set includes e.g. the

  • Recovery of structures
  • Assisting with naming of fields and variables
  • Providing summaries and descriptions of functions
  • Support for using simple language to search or answer questions about a binary

Objectives

The main goal of this project is to systematically evaluate the capabilities of Sidekick and review its added value for a reverse engineer. Also, potential alternative tools should be identified and compared against Sidekick. To do so, a binary testbed should be created to e.g. compare the performance with respect to different structures/functions, varying compilation/optimization settings, architectures, etc.

Type

This proposal is recommended for a semester project or as a Bachelor’s thesis at an university of applied sciences.

Requirements

  • Experience in binary analysis and reverse engineering
  • Solid understanding of assembly languages

References