30 lines
1.4 KiB
Docker
30 lines
1.4 KiB
Docker
# Adapted from https://github.com/deadbeefmonster/docker-binaryexploitation
|
|
# Bootstrapped from bitnami/minideb
|
|
# Maintained for software security tasks at university
|
|
|
|
FROM bitnami/minideb:latest
|
|
ENV LC_CTYPE C.UTF-8
|
|
ENV DEBIAN_FRONTEND=noninteractive
|
|
|
|
# Copy custom configuration files
|
|
COPY dot_rizinrc /root/.rizinrc
|
|
|
|
# Install dependencies and tools, including Neovim
|
|
RUN apt-get update && apt-get install -y --no-install-recommends \
|
|
build-essential jq strace ltrace curl wget rubygems gcc dnsutils \
|
|
netcat-traditional gcc-multilib net-tools neovim gdb gdb-multiarch \
|
|
python3-full python3-pip python3-dev libssl-dev libffi-dev wget git make \
|
|
procps libpcre3-dev libdb-dev libxt-dev libxaw7-dev tmux && \
|
|
pip3 install --break-system-packages capstone requests pwntools r2pipe keystone-engine \
|
|
unicorn ropper meson ninja && \
|
|
mkdir /tools && \
|
|
cd /tools && git clone https://github.com/JonathanSalwan/ROPgadget && \
|
|
cd /tools && git clone https://github.com/niklasb/libc-database && \
|
|
cd /tools && git clone https://github.com/hugsy/gef && \
|
|
wget -O /root/.gdbinit-gef.py -q https://raw.githubusercontent.com/hugsy/gef/main/gef.py && \
|
|
echo source /root/.gdbinit-gef.py >> /root/.gdbinit && \
|
|
cd /tools && git clone --recurse-submodules https://github.com/rizinorg/rizin && \
|
|
cd rizin && meson build && ninja -C build && ninja -C build install && \
|
|
apt-get clean && rm -rf /var/lib/apt/lists/*
|
|
|