Skip to main content

A multi-architecture binary analysis toolkit, with the ability to perform dynamic symbolic execution and various static analyses on binaries

Project description

angr

Latest Release Python Version PyPI Statistics License

angr is a platform-agnostic binary analysis framework. It is brought to you by the Computer Security Lab at UC Santa Barbara, SEFCOM at Arizona State University, their associated CTF team, Shellphish, the open source community, and @rhelmot.

Project Links

Homepage: https://angr.io

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

Documentation: https://docs.angr.io

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

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 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.

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

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-9.2.221.tar.gz (15.1 MB view details)

Uploaded Source

Built Distributions

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

angr-9.2.221-cp314-cp314-win_amd64.whl (18.8 MB view details)

Uploaded CPython 3.14Windows x86-64

angr-9.2.221-cp314-cp314-musllinux_1_2_x86_64.whl (20.8 MB view details)

Uploaded CPython 3.14musllinux: musl 1.2+ x86-64

angr-9.2.221-cp314-cp314-musllinux_1_2_aarch64.whl (20.2 MB view details)

Uploaded CPython 3.14musllinux: musl 1.2+ ARM64

angr-9.2.221-cp314-cp314-manylinux_2_28_x86_64.whl (19.7 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.28+ x86-64

angr-9.2.221-cp314-cp314-manylinux_2_28_aarch64.whl (19.2 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.28+ ARM64

angr-9.2.221-cp314-cp314-macosx_11_0_arm64.whl (18.9 MB view details)

Uploaded CPython 3.14macOS 11.0+ ARM64

angr-9.2.221-cp313-cp313-win_amd64.whl (18.9 MB view details)

Uploaded CPython 3.13Windows x86-64

angr-9.2.221-cp313-cp313-manylinux_2_28_x86_64.whl (19.7 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.28+ x86-64

angr-9.2.221-cp313-cp313-manylinux_2_28_aarch64.whl (19.2 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.28+ ARM64

angr-9.2.221-cp313-cp313-macosx_11_0_arm64.whl (18.9 MB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

angr-9.2.221-cp312-cp312-win_amd64.whl (18.9 MB view details)

Uploaded CPython 3.12Windows x86-64

angr-9.2.221-cp312-cp312-manylinux_2_28_x86_64.whl (19.7 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.28+ x86-64

angr-9.2.221-cp312-cp312-manylinux_2_28_aarch64.whl (19.2 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.28+ ARM64

angr-9.2.221-cp312-cp312-macosx_11_0_arm64.whl (18.9 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

File details

Details for the file angr-9.2.221.tar.gz.

File metadata

  • Download URL: angr-9.2.221.tar.gz
  • Upload date:
  • Size: 15.1 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for angr-9.2.221.tar.gz
Algorithm Hash digest
SHA256 6bde1600b32eb91de556b1729ca5c5c2f7cf63f936afbdea8cafc047858894fd
MD5 ce16bdcce2ffbaa3e85c705aa26e1a63
BLAKE2b-256 ba94d252480aace97c3806448a5f6b37945425fb19c1c8b0571e98b907d58bc7

See more details on using hashes here.

Provenance

The following attestation bundles were made for angr-9.2.221.tar.gz:

Publisher: angr-release.yml on angr/ci-settings

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file angr-9.2.221-cp314-cp314-win_amd64.whl.

File metadata

  • Download URL: angr-9.2.221-cp314-cp314-win_amd64.whl
  • Upload date:
  • Size: 18.8 MB
  • Tags: CPython 3.14, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for angr-9.2.221-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 35dbccaa244840194b11af1e80f9ded198903595dd9bf61a97ed25d82fc6a002
MD5 bfdd2634d3e392f0ff4564892032d409
BLAKE2b-256 c5e95280f28664e1ae56206a9901e53cd4c296559ceee48b6b17888e8bf20140

See more details on using hashes here.

Provenance

The following attestation bundles were made for angr-9.2.221-cp314-cp314-win_amd64.whl:

Publisher: angr-release.yml on angr/ci-settings

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file angr-9.2.221-cp314-cp314-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for angr-9.2.221-cp314-cp314-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 57398fc5ef36b8c8400abe30a0712789003659d284e5b116e1cc7a4ec3114935
MD5 c5b0c932d73fb42871f92a5b142639f3
BLAKE2b-256 970dee40fd886246b51f14115d3c6c22ba8bdc26d1ed1908e336f419c2913826

See more details on using hashes here.

Provenance

The following attestation bundles were made for angr-9.2.221-cp314-cp314-musllinux_1_2_x86_64.whl:

Publisher: angr-release.yml on angr/ci-settings

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file angr-9.2.221-cp314-cp314-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for angr-9.2.221-cp314-cp314-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 d15be4d9d8211e4515a1a839a2a64a8060405d45e03dd7a743ef646a5742d684
MD5 31cc35e497e871eb85907c2143da2720
BLAKE2b-256 32701a6d5ed0800a4b1350d4cf3839c2dd3af1ef738f8f5847e73807dc0ee79a

See more details on using hashes here.

Provenance

The following attestation bundles were made for angr-9.2.221-cp314-cp314-musllinux_1_2_aarch64.whl:

Publisher: angr-release.yml on angr/ci-settings

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file angr-9.2.221-cp314-cp314-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for angr-9.2.221-cp314-cp314-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 772d7166eddfe1203730efcdd2943fc82eeb830b4e5363f58d4c8bd254858f23
MD5 7b1a6f7a2834103f2d8a3970e1c40511
BLAKE2b-256 07ad054d7f6b4b6ef30df2179e3114ea6e28a54f1ba39c61c92f07f4bff1d6fd

See more details on using hashes here.

Provenance

The following attestation bundles were made for angr-9.2.221-cp314-cp314-manylinux_2_28_x86_64.whl:

Publisher: angr-release.yml on angr/ci-settings

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file angr-9.2.221-cp314-cp314-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for angr-9.2.221-cp314-cp314-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 bba98eef0c4e6417fed483157dc0ef86516db18eaa568deb17a9674eb271df20
MD5 ba43f6c55a41c7680a8e896cc143ee26
BLAKE2b-256 c3681b2bce74feeb8e5ded916bd1a663ea4c72b266a3336883e80080bec33e34

See more details on using hashes here.

Provenance

The following attestation bundles were made for angr-9.2.221-cp314-cp314-manylinux_2_28_aarch64.whl:

Publisher: angr-release.yml on angr/ci-settings

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file angr-9.2.221-cp314-cp314-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for angr-9.2.221-cp314-cp314-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 e1a9f4ea043dc4e46fa2090c9299644e1f1bedd9a5e7e0f372472dadf36f5e5e
MD5 4d5b9a7842083013a7316eb835131f37
BLAKE2b-256 c39cfd9cd672e346e3b4befd63bd37097c1e0ee543d2984f06de5be1183624b5

See more details on using hashes here.

Provenance

The following attestation bundles were made for angr-9.2.221-cp314-cp314-macosx_11_0_arm64.whl:

Publisher: angr-release.yml on angr/ci-settings

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file angr-9.2.221-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: angr-9.2.221-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 18.9 MB
  • Tags: CPython 3.13, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for angr-9.2.221-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 a5f159bf0aa42bd7797dfa33e53feeb7447a2d7467c453feee58d8ab393dbdb3
MD5 0912b80fcc1e9aceacaddcda2e3170b0
BLAKE2b-256 cbd321dd4c427e3132e1f65affb7394b40c235fdf693933c89538d54f1ff27f6

See more details on using hashes here.

Provenance

The following attestation bundles were made for angr-9.2.221-cp313-cp313-win_amd64.whl:

Publisher: angr-release.yml on angr/ci-settings

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file angr-9.2.221-cp313-cp313-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for angr-9.2.221-cp313-cp313-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 fce3a3a330f8d6f2724e14cb6fa5142932dfac92796700b0eb7ef8da102648fe
MD5 eee9226409638a9fba70b28d629fcb8a
BLAKE2b-256 2f021d07acb46dd44d7e820b06852fcfce81f2cc1bda94c62fa9c914d0f05e2e

See more details on using hashes here.

Provenance

The following attestation bundles were made for angr-9.2.221-cp313-cp313-manylinux_2_28_x86_64.whl:

Publisher: angr-release.yml on angr/ci-settings

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file angr-9.2.221-cp313-cp313-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for angr-9.2.221-cp313-cp313-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 6f1ca814c776c9f061192268347c64aedca0598c816d3446530ae3b0277c9c50
MD5 515a535100f8fec8c0c85c654941eb3b
BLAKE2b-256 44fc3a84001f2787f6855741fc3aba013088a184ac1f97409e9fa895438d566f

See more details on using hashes here.

Provenance

The following attestation bundles were made for angr-9.2.221-cp313-cp313-manylinux_2_28_aarch64.whl:

Publisher: angr-release.yml on angr/ci-settings

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file angr-9.2.221-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for angr-9.2.221-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 0af503af2d52688fc46003f43bb637fdf9f87c96b1d2d3e40e2b17d7a865c02d
MD5 60945d9759e4680ced44bc46a9d982e4
BLAKE2b-256 b53215d00b185f75e7220dc1663a0eb4e13b75e704aec5406b007169c966b7e6

See more details on using hashes here.

Provenance

The following attestation bundles were made for angr-9.2.221-cp313-cp313-macosx_11_0_arm64.whl:

Publisher: angr-release.yml on angr/ci-settings

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file angr-9.2.221-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: angr-9.2.221-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 18.9 MB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for angr-9.2.221-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 de5687ce45e5387ed9a199529fed135a5030b630021786201a71ba8a509af545
MD5 3d1b56167d1e9231eb32a3c3e7a15323
BLAKE2b-256 194d71b33fb5d27b4d023a6dca7ad0af2b25cc6f66ef157a6580896815f119dd

See more details on using hashes here.

Provenance

The following attestation bundles were made for angr-9.2.221-cp312-cp312-win_amd64.whl:

Publisher: angr-release.yml on angr/ci-settings

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file angr-9.2.221-cp312-cp312-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for angr-9.2.221-cp312-cp312-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 27f688d23b28f9c5b92813192cfbc3fd9209af1f6313197a57bc7660b32c625c
MD5 dcc991805f31af60b27ad1ef4eba0f00
BLAKE2b-256 d2f74cd7d364f50b958072c5d35505ef1df334f28a818b6a557f467f659b0570

See more details on using hashes here.

Provenance

The following attestation bundles were made for angr-9.2.221-cp312-cp312-manylinux_2_28_x86_64.whl:

Publisher: angr-release.yml on angr/ci-settings

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file angr-9.2.221-cp312-cp312-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for angr-9.2.221-cp312-cp312-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 c6ab5aefbecfeb4317f57579c62b070c1d9ecabc94635c18959abb431b2b32bb
MD5 36fb4a75874557158012506da3c4be0d
BLAKE2b-256 f20a7f268f68b3db77706dec37c5c76413cdd696bd183aadfac4edbd199e67d3

See more details on using hashes here.

Provenance

The following attestation bundles were made for angr-9.2.221-cp312-cp312-manylinux_2_28_aarch64.whl:

Publisher: angr-release.yml on angr/ci-settings

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file angr-9.2.221-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for angr-9.2.221-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 186aeb477e92c31d173794cc3d487679e07cfc7eb54294a6bae4faa0b14b1152
MD5 28856cefcc9c5281a0c76330d41989d5
BLAKE2b-256 106d32d136be4757331a9bd2ddd1dd5123941a78a0b9091c2f8543e7225f8151

See more details on using hashes here.

Provenance

The following attestation bundles were made for angr-9.2.221-cp312-cp312-macosx_11_0_arm64.whl:

Publisher: angr-release.yml on angr/ci-settings

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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