Name | angr JSON |
Version |
9.2.94
JSON |
| download |
home_page | https://github.com/angr/angr |
Summary | A multi-architecture binary analysis toolkit, with the ability to perform dynamic symbolic execution and various static analyses on binaries |
upload_time | 2024-03-12 17:15:04 |
maintainer | |
docs_url | None |
author | |
requires_python | >=3.8 |
license | BSD-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": "https://github.com/angr/angr",
"name": "angr",
"maintainer": "",
"docs_url": null,
"requires_python": ">=3.8",
"maintainer_email": "",
"keywords": "",
"author": "",
"author_email": "",
"download_url": "https://files.pythonhosted.org/packages/cf/4f/981ddb50b6ce55f953f5c2642ef0e9d9cd54dc23ca0d9d0cc77c535a87e2/angr-9.2.94.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.94",
"project_urls": {
"Homepage": "https://github.com/angr/angr"
},
"split_keywords": [],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "94481ded7ea6723f4638d317e751723a722e610b6a8db9987098a9b0e55eb442",
"md5": "988e0c5016b70e2e0e148e7bf1842870",
"sha256": "daec25a1b23e9585499de2b43a4811be195be38009f021c4a52b570aaf2100ed"
},
"downloads": -1,
"filename": "angr-9.2.94-py3-none-macosx_10_9_x86_64.whl",
"has_sig": false,
"md5_digest": "988e0c5016b70e2e0e148e7bf1842870",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.8",
"size": 9418853,
"upload_time": "2024-03-12T17:12:59",
"upload_time_iso_8601": "2024-03-12T17:12:59.491543Z",
"url": "https://files.pythonhosted.org/packages/94/48/1ded7ea6723f4638d317e751723a722e610b6a8db9987098a9b0e55eb442/angr-9.2.94-py3-none-macosx_10_9_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "0d53ce628a56bf0929cbe38d9f916c04e6e0a88aa2abd1c273226f1bd5d3414a",
"md5": "6206d743c96bae5a281da8268294cbb4",
"sha256": "7fbbd73f3c7ff63cef2b9a9102f189abd2d1296f11d778965e346ce583bbdc34"
},
"downloads": -1,
"filename": "angr-9.2.94-py3-none-manylinux2014_x86_64.whl",
"has_sig": false,
"md5_digest": "6206d743c96bae5a281da8268294cbb4",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.8",
"size": 11366097,
"upload_time": "2024-03-12T17:13:04",
"upload_time_iso_8601": "2024-03-12T17:13:04.329234Z",
"url": "https://files.pythonhosted.org/packages/0d/53/ce628a56bf0929cbe38d9f916c04e6e0a88aa2abd1c273226f1bd5d3414a/angr-9.2.94-py3-none-manylinux2014_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "f5334a8881a3e234bf477451e5682e53792014ec34d67b10ff0358d67efd21bd",
"md5": "eb3c38e31e3d83b6c6e9cde5869626a6",
"sha256": "fc978a1d386c891fe1b6d70d8c2b1485debc2932059699b130174bf3c12fcea4"
},
"downloads": -1,
"filename": "angr-9.2.94-py3-none-win_amd64.whl",
"has_sig": false,
"md5_digest": "eb3c38e31e3d83b6c6e9cde5869626a6",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.8",
"size": 8964714,
"upload_time": "2024-03-12T17:13:08",
"upload_time_iso_8601": "2024-03-12T17:13:08.046698Z",
"url": "https://files.pythonhosted.org/packages/f5/33/4a8881a3e234bf477451e5682e53792014ec34d67b10ff0358d67efd21bd/angr-9.2.94-py3-none-win_amd64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "cf4f981ddb50b6ce55f953f5c2642ef0e9d9cd54dc23ca0d9d0cc77c535a87e2",
"md5": "e5b3d3b9b59bcce8a3103aeac7685b2c",
"sha256": "364cb5a9aee56ae2d4a7cf0fa8124e26a1b557e69ca4632d30d5db0ce9ce9646"
},
"downloads": -1,
"filename": "angr-9.2.94.tar.gz",
"has_sig": false,
"md5_digest": "e5b3d3b9b59bcce8a3103aeac7685b2c",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.8",
"size": 2966787,
"upload_time": "2024-03-12T17:15:04",
"upload_time_iso_8601": "2024-03-12T17:15:04.511816Z",
"url": "https://files.pythonhosted.org/packages/cf/4f/981ddb50b6ce55f953f5c2642ef0e9d9cd54dc23ca0d9d0cc77c535a87e2/angr-9.2.94.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-03-12 17:15:04",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "angr",
"github_project": "angr",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "angr"
}