angr


Nameangr JSON
Version 9.2.165 PyPI version JSON
download
home_pageNone
SummaryA multi-architecture binary analysis toolkit, with the ability to perform dynamic symbolic execution and various static analyses on binaries
upload_time2025-07-10 01:36:27
maintainerNone
docs_urlNone
authorNone
requires_python>=3.10
licenseBSD-2-Clause
keywords
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # angr

[![Latest Release](https://img.shields.io/pypi/v/angr.svg)](https://pypi.python.org/pypi/angr/)
[![Python Version](https://img.shields.io/pypi/pyversions/angr)](https://pypi.python.org/pypi/angr/)
[![PyPI Statistics](https://img.shields.io/pypi/dm/angr.svg)](https://pypistats.org/packages/angr)
[![License](https://img.shields.io/github/license/angr/angr.svg)](https://github.com/angr/angr/blob/master/LICENSE)

angr is a platform-agnostic binary analysis framework.
It is brought to you by [the Computer Security Lab at UC Santa Barbara](https://seclab.cs.ucsb.edu), [SEFCOM at Arizona State University](https://sefcom.asu.edu), their associated CTF team, [Shellphish](https://shellphish.net), the open source community, and **[@rhelmot](https://github.com/rhelmot)**.

## Project Links
Homepage: https://angr.io

Project repository: https://github.com/angr/angr

Documentation: https://docs.angr.io

API Documentation: https://api.angr.io/en/latest/

## What is angr?

angr is a suite of Python 3 libraries that let you load a binary and do a lot of cool things to it:

- Disassembly and intermediate-representation lifting
- Program instrumentation
- Symbolic execution
- Control-flow analysis
- Data-dependency analysis
- Value-set analysis (VSA)
- Decompilation

The most common angr operation is loading a binary: `p = angr.Project('/bin/bash')` If you do this in an enhanced REPL like IPython, you can use tab-autocomplete to browse the [top-level-accessible methods](https://docs.angr.io/docs/toplevel) and their docstrings.

The short version of "how to install angr" is `mkvirtualenv --python=$(which python3) angr && python -m pip install angr`.

## Example

angr does a lot of binary analysis stuff.
To get you started, here's a simple example of using symbolic execution to get a flag in a CTF challenge.

```python
import angr

project = angr.Project("angr-doc/examples/defcamp_r100/r100", auto_load_libs=False)

@project.hook(0x400844)
def print_flag(state):
    print("FLAG SHOULD BE:", state.posix.dumps(0))
    project.terminate_execution()

project.execute()
```

# Quick Start

- [Install Instructions](https://docs.angr.io/introductory-errata/install)
- Documentation as [HTML](https://docs.angr.io/) and sources in the angr [Github repository](https://github.com/angr/angr/tree/master/docs)
- Dive right in: [top-level-accessible methods](https://docs.angr.io/core-concepts/toplevel)
- [Examples using angr to solve CTF challenges](https://docs.angr.io/examples).
- [API Reference](https://angr.io/api-doc/)
- [awesome-angr repo](https://github.com/degrigis/awesome-angr)

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "angr",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.10",
    "maintainer_email": null,
    "keywords": null,
    "author": null,
    "author_email": null,
    "download_url": "https://files.pythonhosted.org/packages/ad/58/907e59e5190627c13116c3488de180f0fcfee1a3c2a7350176791f915ccb/angr-9.2.165.tar.gz",
    "platform": null,
    "description": "# angr\n\n[![Latest Release](https://img.shields.io/pypi/v/angr.svg)](https://pypi.python.org/pypi/angr/)\n[![Python Version](https://img.shields.io/pypi/pyversions/angr)](https://pypi.python.org/pypi/angr/)\n[![PyPI Statistics](https://img.shields.io/pypi/dm/angr.svg)](https://pypistats.org/packages/angr)\n[![License](https://img.shields.io/github/license/angr/angr.svg)](https://github.com/angr/angr/blob/master/LICENSE)\n\nangr is a platform-agnostic binary analysis framework.\nIt is brought to you by [the Computer Security Lab at UC Santa Barbara](https://seclab.cs.ucsb.edu), [SEFCOM at Arizona State University](https://sefcom.asu.edu), their associated CTF team, [Shellphish](https://shellphish.net), the open source community, and **[@rhelmot](https://github.com/rhelmot)**.\n\n## Project Links\nHomepage: https://angr.io\n\nProject repository: https://github.com/angr/angr\n\nDocumentation: https://docs.angr.io\n\nAPI Documentation: https://api.angr.io/en/latest/\n\n## What is angr?\n\nangr is a suite of Python 3 libraries that let you load a binary and do a lot of cool things to it:\n\n- Disassembly and intermediate-representation lifting\n- Program instrumentation\n- Symbolic execution\n- Control-flow analysis\n- Data-dependency analysis\n- Value-set analysis (VSA)\n- Decompilation\n\nThe most common angr operation is loading a binary: `p = angr.Project('/bin/bash')` If you do this in an enhanced REPL like IPython, you can use tab-autocomplete to browse the [top-level-accessible methods](https://docs.angr.io/docs/toplevel) and their docstrings.\n\nThe short version of \"how to install angr\" is `mkvirtualenv --python=$(which python3) angr && python -m pip install angr`.\n\n## Example\n\nangr does a lot of binary analysis stuff.\nTo get you started, here's a simple example of using symbolic execution to get a flag in a CTF challenge.\n\n```python\nimport angr\n\nproject = angr.Project(\"angr-doc/examples/defcamp_r100/r100\", auto_load_libs=False)\n\n@project.hook(0x400844)\ndef print_flag(state):\n    print(\"FLAG SHOULD BE:\", state.posix.dumps(0))\n    project.terminate_execution()\n\nproject.execute()\n```\n\n# Quick Start\n\n- [Install Instructions](https://docs.angr.io/introductory-errata/install)\n- Documentation as [HTML](https://docs.angr.io/) and sources in the angr [Github repository](https://github.com/angr/angr/tree/master/docs)\n- Dive right in: [top-level-accessible methods](https://docs.angr.io/core-concepts/toplevel)\n- [Examples using angr to solve CTF challenges](https://docs.angr.io/examples).\n- [API Reference](https://angr.io/api-doc/)\n- [awesome-angr repo](https://github.com/degrigis/awesome-angr)\n",
    "bugtrack_url": null,
    "license": "BSD-2-Clause",
    "summary": "A multi-architecture binary analysis toolkit, with the ability to perform dynamic symbolic execution and various static analyses on binaries",
    "version": "9.2.165",
    "project_urls": {
        "Homepage": "https://angr.io/",
        "Repository": "https://github.com/angr/angr"
    },
    "split_keywords": [],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "1518ff1af7ee7b49300594969878fce08f75e8553a5eb463e2c76ad46bdce5a8",
                "md5": "9477c7ff6b131ca023e42eeb70e02388",
                "sha256": "85fe6b199a81584b5d716a31c869f95472623a1e1c1af22960bfc5c07c871685"
            },
            "downloads": -1,
            "filename": "angr-9.2.165-cp310-abi3-macosx_10_12_x86_64.whl",
            "has_sig": false,
            "md5_digest": "9477c7ff6b131ca023e42eeb70e02388",
            "packagetype": "bdist_wheel",
            "python_version": "cp310",
            "requires_python": ">=3.10",
            "size": 5970151,
            "upload_time": "2025-07-10T01:36:01",
            "upload_time_iso_8601": "2025-07-10T01:36:01.666949Z",
            "url": "https://files.pythonhosted.org/packages/15/18/ff1af7ee7b49300594969878fce08f75e8553a5eb463e2c76ad46bdce5a8/angr-9.2.165-cp310-abi3-macosx_10_12_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "2a740eab775833305c7987d8458a2165643f42dd372c5c415b2d3fe1c632bdae",
                "md5": "d3ab5ffbbb2ce2eecb337b4d6bc990b3",
                "sha256": "aa7d35d131a341db41505046f9c47ef908a78d04c3ce5414b52bc068941d0c67"
            },
            "downloads": -1,
            "filename": "angr-9.2.165-cp310-abi3-macosx_11_0_arm64.whl",
            "has_sig": false,
            "md5_digest": "d3ab5ffbbb2ce2eecb337b4d6bc990b3",
            "packagetype": "bdist_wheel",
            "python_version": "cp310",
            "requires_python": ">=3.10",
            "size": 5799178,
            "upload_time": "2025-07-10T01:36:04",
            "upload_time_iso_8601": "2025-07-10T01:36:04.395180Z",
            "url": "https://files.pythonhosted.org/packages/2a/74/0eab775833305c7987d8458a2165643f42dd372c5c415b2d3fe1c632bdae/angr-9.2.165-cp310-abi3-macosx_11_0_arm64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "cc02c6c72fdd841366d05ca42fac6a636ec34bc783e3c63ceac53eb404ef1678",
                "md5": "aa7ab1a0dff7b13383b081820fd24c21",
                "sha256": "1236b3221e25196bcf050c90beffc04e10601d41f6ca3e4df99f4d47c4f5cb2f"
            },
            "downloads": -1,
            "filename": "angr-9.2.165-cp310-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
            "has_sig": false,
            "md5_digest": "aa7ab1a0dff7b13383b081820fd24c21",
            "packagetype": "bdist_wheel",
            "python_version": "cp310",
            "requires_python": ">=3.10",
            "size": 6008507,
            "upload_time": "2025-07-10T01:36:05",
            "upload_time_iso_8601": "2025-07-10T01:36:05.973708Z",
            "url": "https://files.pythonhosted.org/packages/cc/02/c6c72fdd841366d05ca42fac6a636ec34bc783e3c63ceac53eb404ef1678/angr-9.2.165-cp310-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "291d6c99e524fd9288aa297d462bc6a0b49235f939a6e60820ea5b94f0974370",
                "md5": "ca9df1fd90a7bad64b1488875f5f7e31",
                "sha256": "958161568c4208f79bb449d075c73f198628b6a8027b86727ee59d7c93b2e477"
            },
            "downloads": -1,
            "filename": "angr-9.2.165-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "has_sig": false,
            "md5_digest": "ca9df1fd90a7bad64b1488875f5f7e31",
            "packagetype": "bdist_wheel",
            "python_version": "cp310",
            "requires_python": ">=3.10",
            "size": 6146696,
            "upload_time": "2025-07-10T01:36:07",
            "upload_time_iso_8601": "2025-07-10T01:36:07.709598Z",
            "url": "https://files.pythonhosted.org/packages/29/1d/6c99e524fd9288aa297d462bc6a0b49235f939a6e60820ea5b94f0974370/angr-9.2.165-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "6b58490fc1445f71b3c9da859d1031966c58c3cd0552d5d5e4efe5a9ab287841",
                "md5": "beaef57748a09a44390c715946384f4d",
                "sha256": "8cf2af097ed5afa767d38d1240426a58eefc8e5f966e1a6e4224f80c3a52e3f6"
            },
            "downloads": -1,
            "filename": "angr-9.2.165-cp310-abi3-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "beaef57748a09a44390c715946384f4d",
            "packagetype": "bdist_wheel",
            "python_version": "cp310",
            "requires_python": ">=3.10",
            "size": 5752287,
            "upload_time": "2025-07-10T01:36:09",
            "upload_time_iso_8601": "2025-07-10T01:36:09.143601Z",
            "url": "https://files.pythonhosted.org/packages/6b/58/490fc1445f71b3c9da859d1031966c58c3cd0552d5d5e4efe5a9ab287841/angr-9.2.165-cp310-abi3-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "ad58907e59e5190627c13116c3488de180f0fcfee1a3c2a7350176791f915ccb",
                "md5": "1a4a1cbb6468ede95479cdd5a7edb966",
                "sha256": "923a5fefe18d6248849560e9edf2f48a03d672529a95e47fe5a18c664bcfca76"
            },
            "downloads": -1,
            "filename": "angr-9.2.165.tar.gz",
            "has_sig": false,
            "md5_digest": "1a4a1cbb6468ede95479cdd5a7edb966",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.10",
            "size": 3260695,
            "upload_time": "2025-07-10T01:36:27",
            "upload_time_iso_8601": "2025-07-10T01:36:27.255660Z",
            "url": "https://files.pythonhosted.org/packages/ad/58/907e59e5190627c13116c3488de180f0fcfee1a3c2a7350176791f915ccb/angr-9.2.165.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-07-10 01:36:27",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "angr",
    "github_project": "angr",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "angr"
}
        
Elapsed time: 1.15744s