2 ms·
The interesting part about Angr (and arguably, its' reason for existence) is that it can execute native (x86_64, ARM, others...) concolically [1] - ie., given a
by q3k 8y ago
The interesting part about Angr (and arguably, its' reason for existence) is that it can execute native (x86_64, ARM, others...) concolically [1] - ie., given a binary and a requested end state, it will strive using both formal methods and brute force to find input required to reach that state. All automatically, including converting binary code to an IL (cle & Vagrant IL via PyVEX), executing that IL (simuvex) and interacting with SMT solvers (claripy). This can be used for finding bugs, reverse engineering and exploit generation, at least in a toy/CTF setting.
Angr is also the open-source part of the Shellphish/UCSB contestant (Mechanical Phish) that competed in the DARPA CGC [2].
[1] - https://en.wikipedia.org/wiki/Concolic_testing https://en.wikipedia.org/wiki/Concolic_testing
[2] - https://en.wikipedia.org/wiki/2016_Cyber_Grand_Challenge https://en.wikipedia.org/wiki/2016_Cyber_Grand_Challenge
- saagarjha 8y ago> Angr is also the open-source part of the Shellphish/UCSB contestant (Mechanical Phish) that competed in the DARPA CGC It's not the only open-source part: https://github.com/mechaphish https://github.com/mechaphish