Welcome to avatar², the target orchestration framework with focus on dynamic analysis of embedded devices' firmware!
Avatar² is developed and maintained by Eurecom's S3 Group.
Building avatar² is easy!
First, make sure that all the dependencies are present:
sudo apt-get install python-pip python-setuptools python-dev cmake
Afterwards, the following three commands are enough to install the core.
$ git clone https://github.com/avatartwo/avatar2.git
$ cd avatar2
$ sudo python setup.py install
Afterwards, the different target endpoints can be built, such as QEmu or PANDA. For doing so, we are providing build-scripts for Ubuntu 16.04 - while other distributions are not officially supported (yet), the scripts are known to work with slight modifications on other distributions as well.
$ cd targets
$ ./build_*.sh
For discovering the power of avatar² and getting a feeling of its usage, we recommend highly checking out the handbook here on github. Additionally, a documentation of the API is provided here and some exemplary avatar²-scripts can be found here. Additionally, another good way to get started with avatar² is to read the official avatar² paper or to watch the 34c3-talk.
For further support or follow-up questions, feel free to contact us via IRC in #avatar2 on freenode, or to send a mail to avatar2 [at] lists.eurecom.fr, our public mailing list.
Additionally, you can subscribe to the list here.
- M. Muench, D. Nisi, A. Francillon, D. Balzarotti. "Avatar²: A Multi-target Orchestration Platform." Workshop on Binary Analysis Research, San Diego, California, February 2018.
- M. Muench, J. Stijohann, F. Kargl, A. Francillon, D.avide Balzarotti. "What You Corrupt Is Not What You Crash: Challenges in Fuzzing Embedded Devices." Network and Distributed System Security Symposium, San Diego, California, 2018.