exploit_farm icon indicating copy to clipboard operation
exploit_farm copied to clipboard

The utility for CTF hacker competition for team hacking and flag submitting

Exploit Farm

The utility for CTF hacker competition for launching sploits for all teams and submitting flags.

Prepare

  1. Set FLAG_FORMAT regexp in flag_format.py
  2. Set TEAMS in team_list.py
  3. Edit submit_flags in start_posting.py for the checking system

Usage

Starting a sploit

./start_sploit.py <sploit>

Launches sploit for all teams. Sploit should take team ip as first arg. Its output should contain flags. Flags will be saved in flags/<sploit_name>_<team_name>.txt

Starting the poster

./start_posting.py

Posts the flags in flags/*.txt to the checking system. Saves posted flags in posted_good_flags.txt and posted_bad_flags.txt.

Optimizing a sploit

If there are >100 teams, don't write a sploit like this:

hack(ip)

Write like this:

while True:
    hack(ip)
    sys.stdout.flush()
    sleep(30)

It is much faster.