Angr + Notebook Docker
Try angr with Jupyter Notebook using this dockerfile.
Use my dockerfile:
Dockerfile
FROM ubuntu:18.04
RUN apt update && apt install -y python3-pip
RUN pip3 -q install pip --upgrade
RUN pip3 install jupyter
RUN apt install -y git graphviz
# Install angr/dev in GitHub
RUN git clone https://github.com/angr/angr-dev && cd angr-dev && ./setup.sh -i -e angr
RUN cd angr-dev && git clone https://github.com/axt/bingraphvis && pip3 install -e ./bingraphvis/ && git clone https://github.com/axt/angr-utils && pip3 install -e ./angr-utils/
WORKDIR src/
COPY . .
CMD ["jupyter", "notebook", "--port=8888", "--no-browser", "--ip=0.0.0.0", "--allow-root"]
1
Build docker image
Make a new directory and put the snippet in a file called Dockerfile
.
mkdir angr-notebook && cd angr-notebook
touch Dockerfile
Build the docker image with the following command:
docker build -t angr-notebook .
2
Run container
Run a docker container, forwarding jupyter notebook server to the host with the following command:
docker run --platform=linux/amd64 -p 8888:8888 -d whexy/angr_notebook
3
Login Jupyter notebook
Visit http://localhost:8888
in your browser. You should see the Jupyter notebook server. You should provide a token to login in.
The token can be checked with the following command (replace the <container_id>
with the real container id):
docker inspect <container_id>
4
Enjoy!