Skip to main content

GUI for angr

Project description

angr Management

Code style: black

This is the GUI for angr. Launch it and analyze some binaries!

Some screenshots:

Disassembly Decompilation

Installation

Portable, pre-built executable

The easiest way to run angr-management is by grabbing a bundled release from the releases page: https://github.com/angr/angr-management/releases

Builds can be extracted and then run from anywhere. Note that builds are currently unsigned.

From PyPI

To install angr-management, use pip:

pip install angr-management

angr-management can then be run with the command angr-management.

Development Install

See angr-dev for how to set up a development environment for the angr suite. angr-management is included by default and checked out to angr-management directory. If you encounter dependency issues, re-running setup.sh or setup.bat from angr-dev will ensure all dependencies are installed.

angr-management can then be run with angr-management or python start.py.

FLIRT signatures: For now, please manually clone FLIRT signatures by running git clone --recurse-submodules https://github.com/angr/angr-management, which will clone the flirt_signatures submodule.

Usage

Shortcuts

  • Load a new binary: Ctrl+O

  • Load a new Docker Image Ctrl+Shift+O

  • Load a Trace File Ctrl+Shift+T

  • Save angr database... : Ctrl+S

  • Save angr database as... : Ctrl+Shift+S

  • Decompile: F5

  • Documentation: Alt+H

  • Next Tab: Ctrl+Tab

  • Previous Tab: Ctrl+Shift+Tab

Configuration

Configuration files locations vary by platform.

  • Windows: ~\AppData\Local\angr-management\config.toml
  • macOS: ~/Library/Preferences/angr-management/config.toml
  • Linux: ~/.config/angr-management/config.toml

Plugins

Plugins may be installed by placing a subdirectory under plugins. The directory must contain an __init__.py like that in TestPlugin:

from .test_plugin import TestPlugin
PLUGIN_CLS_NAME = TestPlugin.__name__

This also allows you to import a plugin class from another package entirely. The plugin itself should inherit from BasePlugin. Callbacks and events are a work in progress, so the API is subject to change. See TestPlugin for an example of a multithreaded plugin sample.

Scripting

Take a look at https://docs.angr.io/extending-angr/angr_management!

Building with PyInstaller

To build a portable executable using PyInstaller, install angr management into a python envrionment with the pyinstaller extra. Do not install anything in editable mode (pip's -e), as PyInstaller currently fails to bundle modules installed with editable mode. Then, run pyinstaller angr-management.spec.

If things go wrong, the best bet is to reference the nightly build pipeline and the PyInstaller docs. The CI environment that produces nightly builds is at .github/workflows/nightly-build.yml and .github/workflows/nightly-build.sh.

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

angr-management-9.2.75.tar.gz (1.2 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

angr_management-9.2.75-py3-none-any.whl (1.3 MB view details)

Uploaded Python 3

File details

Details for the file angr-management-9.2.75.tar.gz.

File metadata

  • Download URL: angr-management-9.2.75.tar.gz
  • Upload date:
  • Size: 1.2 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.8.18

File hashes

Hashes for angr-management-9.2.75.tar.gz
Algorithm Hash digest
SHA256 d3ec4404aad1b17305e968a212d9c3860ad21f3ecefba38bf39d0fad592df754
MD5 73d2cb436ce4d601af75c75ff8e33767
BLAKE2b-256 6988abf46bb54e85facef06e16173f591a04eeece2e17e75c9202ddc5fb68b14

See more details on using hashes here.

File details

Details for the file angr_management-9.2.75-py3-none-any.whl.

File metadata

File hashes

Hashes for angr_management-9.2.75-py3-none-any.whl
Algorithm Hash digest
SHA256 4788a54efeee4745821d4d4efd620c5daf6ee04633e9cf2b2e9026e2549651dc
MD5 e77d4946b4dac3c7b99754885bbd5f01
BLAKE2b-256 5088325e6bc100721dc5faf34ebfdf5cbe1c8f5f4d3918d2a3333a6d893d2872

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page