2 releases

0.2.35 Feb 3, 2024
0.2.34 May 9, 2023

#17 in #binary-analysis

Download history 88/week @ 2024-09-26 100/week @ 2024-10-03 148/week @ 2024-10-10 87/week @ 2024-10-17 123/week @ 2024-10-24 88/week @ 2024-10-31 46/week @ 2024-11-07 130/week @ 2024-11-14 295/week @ 2024-11-21 105/week @ 2024-11-28 128/week @ 2024-12-05 139/week @ 2024-12-12 72/week @ 2024-12-19 13/week @ 2024-12-26 70/week @ 2025-01-02 121/week @ 2025-01-09

324 downloads per month
Used in 24 crates (3 directly)

MIT and maybe LGPL-3.0+

260KB
9K SLoC

Fugue logo

Fugue Binary Analysis Framework

DOI

Fugue is a binary analysis framework in the spirit of B2R2 and BAP, with a focus on providing reusable components to rapidly prototype new binary analysis tools and techniques.

Fugue is built around a core collection of crates, i.e., fugue-core. These crates provide a number of fundamental capabilities:

  • Data structures and types:

    • Architecture definitions (fugue-arch).
    • Bit vectors (fugue-bv).
    • Floating point numbers (fugue-fp).
    • Endian-aware conversion to and from various primitive types (fugue-bytes).
  • Program representations and abstractions:

    • A knowledge database to represent program binaries that can be populated using third-party tools (fugue-db).
    • Disassembly and lifting to intermediate representations (fugue-ir).

Prerequisites

git submodule init
git submodule update --recursive

Build

cargo build

Dependencies

~1.1–2.8MB
~52K SLoC