Firstly, please take the following quick survey which can help you start efficiently.
switch challenge_type:
case 'web':
if languge == 'PHP':
if need_db_support:
jump step 1
else:
jump step 2
else:
jump step 5
case 'pwn':
if arch == 'x86-64':
jump step 3
elif arch == 'x86':
jump step 4
default:
jump step 5
- name your challenge and create a folder under
web/
directory, this directory will the your challenge root, eg:easy-injection
cd web mkdir easy-injection cd easy-injection
- copy all file from the challenge template folder
example/web/db/
, eg:cp -r example/web/db/* ./
- Edit
Dockerfile
anddocker-compose.yml
to config your vulnerability environment. (Actually normally the only thing you need to change is theMAINTAINER
field) - Copy your source code to folder
source
- Copy your database init script as
database.sql
- Run
docker-compose build
to make sure yourDockerfile
anddocker-compose.yml
have no errors. - Run
docker-compose up -d
to start the vulnerability environment. - Test whether your challenge is set successfully, it depends on the logic of your challenge.
- name your challenge and create a folder under
web/
directory, this directory will the your challenge root, eg:easy-injection
cd web mkdir easy-injection cd easy-injection
- Edit
Dockerfile
anddocker-compose.yml
to config your vulnerability environment. (Actually normally the only thing you need to change is theMAINTAINER
field) - Copy your source code to folder
source
- Run
docker-compose build
to make sure yourDockerfile
anddocker-compose.yml
have no errors. - Run
docker-compose up -d
to start the vulnerability environment. - Test whether your challenge is set successfully, it depends on the logic of your challenge.
- name your challenge and create a folder under
pwn/
directory, this directory will the your challenge root, eg:buffer-overflow
cd pwn mkdir buffer-overflow cd buffer-overflow
- Edit
Dockerfile
anddocker-compose.yml
to config your vulnerability environment. (Actually normally the only thing you need to change is theMAINTAINER
field) - Copy your source code and Makefile(Important) to folder
source
(Please rename your C filename aspwn.c
, just for tidiness) - Run
docker-compose build
to make sure yourDockerfile
anddocker-compose.yml
have no errors. - Run
docker-compose up -d
to start the vulnerability environment. - Test whether your challenge is set successfully, it depends on the logic of your challenge.
- Please follow step 3, the only difference is that you should change
Dockerfile
You should change the first line fromFROM ubuntu:16.04
toFROM i386/ubuntu:16.04
- Your are an excellent hacker, I believe that you can get things done prefectly.