angr-management


Nameangr-management JSON
Version 9.2.98 PyPI version JSON
download
home_pagehttps://github.com/angr/angr-management
SummaryGUI for angr
upload_time2024-04-09 17:15:25
maintainerNone
docs_urlNone
authorNone
requires_python>=3.8
licenseBSD-2-Clause
keywords
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # angr Management
[![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black)

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

Some screenshots:

[![Disassembly](screenshots/disassembly.png)](https://github.com/angr/angr-management/blob/master/screenshots/disassembly.png)
[![Decompilation](screenshots/decompilation.png)](https://github.com/angr/angr-management/blob/master/screenshots/decompilation.png)

## 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](https://github.com/angr/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](https://github.com/pyinstaller/pyinstaller/issues/7524) 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](https://pyinstaller.org/en/stable/).
The CI environment that produces nightly builds is at `.github/workflows/nightly-build.yml` and `.github/workflows/nightly-build.sh`.

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/angr/angr-management",
    "name": "angr-management",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.8",
    "maintainer_email": null,
    "keywords": null,
    "author": null,
    "author_email": null,
    "download_url": "https://files.pythonhosted.org/packages/3e/d7/ab70f729c1e08728b506c099c168ca8016f0a35765a3182ed9b8e1420268/angr-management-9.2.98.tar.gz",
    "platform": null,
    "description": "# angr Management\n[![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black)\n\nThis is the GUI for angr.\nLaunch it and analyze some binaries!\n\nSome screenshots:\n\n[![Disassembly](screenshots/disassembly.png)](https://github.com/angr/angr-management/blob/master/screenshots/disassembly.png)\n[![Decompilation](screenshots/decompilation.png)](https://github.com/angr/angr-management/blob/master/screenshots/decompilation.png)\n\n## Installation\n\n### Portable, pre-built executable\n\nThe easiest way to run angr-management is by grabbing a bundled release from the releases page: https://github.com/angr/angr-management/releases\n\nBuilds can be extracted and then run from anywhere.\nNote that builds are currently unsigned.\n\n### From PyPI\n\nTo install angr-management, use pip:\n\n```\npip install angr-management\n```\n\nangr-management can then be run with the command `angr-management`.\n\n### Development Install\n\nSee [angr-dev](https://github.com/angr/angr-dev) for how to set up a development environment for the angr suite.\nangr-management is included by default and checked out to `angr-management` directory.\nIf you encounter dependency issues, re-running `setup.sh` or `setup.bat` from angr-dev will ensure all dependencies are installed.\n\nangr-management can then be run with `angr-management` or `python start.py`.\n\n**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.\n\n## Usage\n\n### Shortcuts\n- Load a new binary: ```Ctrl+O```\n- Load a new Docker Image ```Ctrl+Shift+O```\n- Load a Trace File ```Ctrl+Shift+T```\n- Save angr database... : ```Ctrl+S```\n- Save angr database as... : ```Ctrl+Shift+S```\n- Decompile: ```F5```\n- Documentation: ```Alt+H```\n\n- Next Tab: ```Ctrl+Tab```\n- Previous Tab: ```Ctrl+Shift+Tab```\n\n## Configuration\n\nConfiguration files locations vary by platform.\n\n- Windows: `~\\AppData\\Local\\angr-management\\config.toml`\n- macOS: `~/Library/Preferences/angr-management/config.toml`\n- Linux: `~/.config/angr-management/config.toml`\n\n## Plugins\n\nPlugins may be installed by placing a subdirectory under `plugins`. The directory must contain an `__init__.py` like that in `TestPlugin`:\n```\nfrom .test_plugin import TestPlugin\nPLUGIN_CLS_NAME = TestPlugin.__name__\n```\n\nThis 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.\n\n## Scripting\n\nTake a look at https://docs.angr.io/extending-angr/angr_management!\n\n## Building with PyInstaller\nTo build a portable executable using PyInstaller, install angr management into a python envrionment with the `pyinstaller` extra.\nDo not install anything in editable mode (pip's `-e`), as PyInstaller currently [fails to bundle](https://github.com/pyinstaller/pyinstaller/issues/7524) modules installed with editable mode.\nThen, run `pyinstaller angr-management.spec`.\n\nIf things go wrong, the best bet is to reference the nightly build pipeline and the [PyInstaller docs](https://pyinstaller.org/en/stable/).\nThe CI environment that produces nightly builds is at `.github/workflows/nightly-build.yml` and `.github/workflows/nightly-build.sh`.\n",
    "bugtrack_url": null,
    "license": "BSD-2-Clause",
    "summary": "GUI for angr",
    "version": "9.2.98",
    "project_urls": {
        "Homepage": "https://github.com/angr/angr-management"
    },
    "split_keywords": [],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "5c07a1ab9ddec6f99b8206ee0e478ee300f89b0f1bfba234716d53274ee60afe",
                "md5": "982ea0e017627a6dc64411766bb798f7",
                "sha256": "39635d4a0fae5cdec12d95ed8fc857124e94f89f6af088435f27b7aad74690fa"
            },
            "downloads": -1,
            "filename": "angr_management-9.2.98-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "982ea0e017627a6dc64411766bb798f7",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.8",
            "size": 1443414,
            "upload_time": "2024-04-09T17:14:59",
            "upload_time_iso_8601": "2024-04-09T17:14:59.541513Z",
            "url": "https://files.pythonhosted.org/packages/5c/07/a1ab9ddec6f99b8206ee0e478ee300f89b0f1bfba234716d53274ee60afe/angr_management-9.2.98-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "3ed7ab70f729c1e08728b506c099c168ca8016f0a35765a3182ed9b8e1420268",
                "md5": "eaf10c43c19d65b01416d5735eb0c3c7",
                "sha256": "4471c7faae832bb0b8bc08b1b8c20dde23540a6bbb6796ddaa1bcbbe60dd3e0d"
            },
            "downloads": -1,
            "filename": "angr-management-9.2.98.tar.gz",
            "has_sig": false,
            "md5_digest": "eaf10c43c19d65b01416d5735eb0c3c7",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.8",
            "size": 1302868,
            "upload_time": "2024-04-09T17:15:25",
            "upload_time_iso_8601": "2024-04-09T17:15:25.608616Z",
            "url": "https://files.pythonhosted.org/packages/3e/d7/ab70f729c1e08728b506c099c168ca8016f0a35765a3182ed9b8e1420268/angr-management-9.2.98.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-04-09 17:15:25",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "angr",
    "github_project": "angr-management",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "angr-management"
}
        
Elapsed time: 0.26731s