Running Angr-Management In Docker

Last Update:

Author: Christoph Stoettner
Read in about 3 min · 477 words

Fountain pen and a notebook

Photo by Aaron Burden | Unsplash

Today I have a topic from outside the yellow world.

== Disclaimer

Any actions and or activities related to the material contained within this Website and post is solely your responsibility.The misuse of the information on this website can result in criminal charges brought against the persons in question. The author and will not be held responsible in the event any criminal charges be brought against any individuals misusing the information in this website to break the law.

Since several years I’m interested in IT Security. I do a lot of troubleshooting with so-called hacker tools, but they are really useful in my daily work life! So I started to learn more about this tools. Good resources to learn using Kali Linux, Burpsuite or Metasploit are vulnerable VMs or services like Hack the box . During this challenges and watching the videos of LiveOverflow I played with IDA Free and Radare2 to reverse special prepared binaries. Reading the disassembled code is not that hard, but a challenge.

In a video from Def Con 23 I heard the first time from angr and I like it very much. There is a GUI for it too, but I couldn’t install the dependencies on my Ubuntu machine. In Kali Linux it worked perfectly, but not on the local installation.

On Docker Hub you can download a ready installed container with the latest angr-management. This container uses your local X Server, so you need to use some parameters for the start and you can map a local path into the container that you can access the binaries:

docker run --name angr-mgmt -e QT_X11_NO_MITSHM=1 -e DISPLAY=$DISPLAY -v $PWD:/home/angr/pwd -v /tmp/.X11-unix:/tmp/.X11-unix angr/angr-management

So what does this all mean?

  • --name angr-mgmt: I give the container a name, so I can start it again with docker start angr-mgmt

  • -e QT\_X11\_NO_MITSHM=1: Without that I got security errors during the X Server access, but in that thread I got the information that it’s faster to use –ipc host instead

  • -e DISPLAY=$DISPLAY: Add environment variable $DISPLAY

  • -v $PWD:/home/angr/pwd: map the path you’re now to the container path /home/angr/pwd

  • -v /tmp/.X11-unix:/tmp/.X11-unix: map the local path to the container path to access X

  • angr-management: name of the docker image

Final container command

docker run --name angr-mgmt --ipc host -e DISPLAY=$DISPLAY -v $PWD:/home/angr/pwd -v /tmp/.X11-unix:/tmp/.X11-unix angr/angr-management

Testing the software

As a first test I opened a example binary from the angr documentation named crackme0x00a. That’s a very easy binary (used in lots of tutorials) , because the used string can be found as a string in the disassembled code, but I think you get a picture of angr:

screen 20180307 215921 001

Update 2018-03-08

Today I tried some more things from the documentation and behind some links, I found: , so the Docker start can be done with the shell script on Github. There is a second one for Mac OS X too.

Add a comment
There was an error sending your comment, please try again.
Thank you!
Your comment has been submitted and will be published once it has been approved.

Your email address will not be published. Required fields are marked with *

Suggested Reading
Aaron Burden: Fountain pen and a notebook

Today I had the pleisure to give a talk about Kubernetes Basics at the Docker Mannheim Meetup . I enjoyed it very much and we had some very good discussions after the talk with the traditional pizza and drinks sponsored by Stocard .

A big shout-out to Jens and Martina for organizing the meetup!

Last Update:
Read in about 1 min
Aaron Burden: Fountain pen and a notebook

This week starts with Admincamp in Gelsenkirchen. Thanks Rudi Knegt and team for this awesome event! The conference or lets name it camp was real fun. In the end I did three sessions and a workshop. You can find download links to all slides and used files in this article or on . I learned and heared a lot of interesting stuff around IBM Notes, IBM Connections and Sametime. You can get most of the session slides through the Admincamp agenda .

Last Update:
Read in about 2 min
Aaron Burden: Fountain pen and a notebook

Watson Workspace Clients are only available for Windows and Mac OS. I’m a 100% Linux user on my devices and I use a Windows virtual machine only if I can’t avoid it. To communicate with colleagues, IBM and DNUG I need to use Watson Workplace, opening the web view is possible, but then I need to search the right tab or forget to open it. Since some weeks there is Zoom (Web / Video meetings) integrated with Watson Workspace too.:

Watson Workspace clients are based on Electron . I’m not a big fan of Electron clients, most of them are big and need tons of system resources. There is enough written about advantages and disadvantages, so I just leave it that way.

Last Update:
Read in about 3 min