docker pull ctfhacker/epictreasure
docker run --rm -v /path/to/host/share/folder:/root/host-share --privileged -it --workdir=/root ctfhacker/epictreasure
By default, my dotfiles are installed onto the VM. Simply comment out the following lines in Dockerfile if you don't want my settings.
# Personal dotfiles
RUN cd /root && \
rm .bashrc && \
git clone --recursive https://github.com/ctfhacker/dotfiles.git && \
cd dotfiles && \
./install.sh
Then rebuild the Docker
docker build -t et .
- Colorscheme for the terminal and vim is solarized
jkorjjtoESCout of VimESCandArrow keysare hard coded to not work in Vim (as a teaching mechanism):is remapped to;(who uses ; anyway?)- leader key is
SPACE(thanks to spacemacs) SPACE pwill drop an embedded IPython line in a python scriptHmoves to beginning of line,Lmoves to end of line (instead of^and$)
- A new shell spawns a fresh
tmuxsession tmuxleader switched toCtrl+ACtrl+A -produces a horizontal pane.Ctrl+A \produces a vertical pane.Ctrl+A [hjkl]moves around available panes as vim motion
Run the following command in the VM:
gdb /bin/ls
Expected output:
Reading symbols from host-share/crackme...(no debugging symbols found)...done.
Only available when running
pwndbg>
Run the following command in the VM:
r2 /bin/ls
Expected output:
[0x00404890]> aaa
Run the following command in the VM:
python
>>> from pwn import *
>>> elf = ELF('/bin/ls')
[*] '/bin/ls'
Arch: amd64-64-little
RELRO: Partial RELRO
Stack: Canary found
NX: NX enabled
PIE: No PIE
FORTIFY: Enabled
>>> rop = ROP(elf)
[*] Loading gadgets for '/bin/ls'
Run the following commands in the VM:
python
>>> import angr
>>>
Run the following commands in the VM:
python
>>> import capstone
>>> import keystone
>>> import unicorn
>>>
Drop files in the host-share folder on your host to find them on your VM at /home/vagrant/host-share
Using Google's container-structure-test to test our new container
./container-structure-test-darwin-amd64 test --image ctfhacker/epictreasure --config tests.yaml