angr is a platform-agnosticframework. 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: