angr is a platform-agnostic^( framework. It is brought to you by ^( , ^( , their associated ^( team, ^( , the open source community, and ^( .
angr is a suite of Python 3 libraries that let you load a ^( 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 ^( (VSA)
The short version of “how to install angr” is
mkvirtualenv --python=$(which python3) angr && python -m pip install angr.
angr does a lot of binary analysis stuff. To get you started, here’s a simple example of using ^( to get a flag in a CTF challenge.
project = angr.Project("angr-doc/examples/defcamp_r100/r100", auto_load_libs=False)
print("FLAG SHOULD BE:", state.posix.dumps(0))
- Documentation as ^( and as a ^(
- Dive right in: ^(
- ^( .