mirror of https://github.com/dirtbags/moth.git
39 lines
1.4 KiB
Bash
Executable File
39 lines
1.4 KiB
Bash
Executable File
#! /bin/sh
|
|
|
|
if [ ! -d /opt/mcp ]; then
|
|
hostname pwnables
|
|
fi
|
|
|
|
# Set up a chroot environment by duplicating the base
|
|
# image
|
|
if [ ! -x /mnt/pwnables-root/bin/busybox ]; then
|
|
mkdir -p /mnt/pwnables-root
|
|
mount -o bind / /mnt/pwnables-root
|
|
mount -t tmpfs -o size=5m,mode=0755 pwnables-var /mnt/pwnables-root/var
|
|
mount -t tmpfs -o size=15k pwnables-tmp /mnt/pwnables-root/tmp
|
|
mount -t tmpfs -o size=5m pwnables-home /mnt/pwnables-root/home
|
|
|
|
# Make some skeleton junk
|
|
install -o root -m 0755 -d /mnt/pwnables-root/var/lib
|
|
install -o root -m 0755 -d /mnt/pwnables-root/var/lib/ctf
|
|
install -o root -m 0755 -d /mnt/pwnables-root/var/lib/ctf/tokens
|
|
install -o root -m 0755 -d /mnt/pwnables-root/var/log
|
|
install -o root -m 0755 -d /mnt/pwnables-root/var/spool
|
|
install -o root -m 0755 -d /mnt/pwnables-root/var/cache
|
|
install -o root -m 0777 -d /mnt/pwnables-root/var/run
|
|
install -o root -m 0777 -d /mnt/pwnables-root/var/cache
|
|
|
|
# Install the pwnables
|
|
install -o root -d /mnt/pwnables-root/home/alice/
|
|
install -o bob -m 0111 bin/gimmie /mnt/pwnables-root/home/alice/
|
|
|
|
# ltrace needs to read the binary
|
|
install -o bob -m 0555 bin/ltraceme /mnt/pwnables-root/home/alice/
|
|
|
|
# straceme and killme need to be suid, to prevent LD_PRELOAD
|
|
install -o bob -m 04111 bin/straceme /mnt/pwnables-root/home/alice/
|
|
install -o bob -m 04111 bin/killme /mnt/pwnables-root/home/alice/
|
|
fi
|
|
|
|
cp -r service/* /var/service/
|